​基於 Ollama 多模態引擎的 Qwen 2-5 VL 模型部署及其應用

Ollama 於 5 月份推出的全新多模態引擎。新的多模態引擎,可突破舊架構的設計依賴限制,爲本地部署的多模態 AI 模型提供更準確、可靠、靈活的運行環境,並嚴格確保推理過程符合模型的設計初衷(忠於原始模型,對模型原始意圖的忠實執行)。本文介紹基於 Ollama 多模態模型引擎的 Qwen 2.5 VL 模型部署及其應用,主要內容如下:

  1. Ollama 全新多模態模型引擎介紹

  2. Qwen 2.5 VL 模型介紹

  3. Qwen 2.5 VL 模型本地部署及其應用實測

Ollama 多模態模型引擎

Ollama 推出了全新的多模態引擎,以解決原有架構的侷限。基於多模態引擎,Ollama 可以支持運行能同時處理圖像、文本的模型。新架構不僅解決當前多模態挑戰,也爲集成更復雜的能力(語音、生成等)和優化性能(更長上下文、更高併發)打下基礎。

背景

問題

設計目標

Ollama 的多模態引擎的設計理念:忠於原始模型,嚴格遵循模型被訓練的方式和原始設計規範。捨棄了舊架構的 “通用引擎” 的簡潔性,但換來了更高的準確性、可靠性,對模型研發者意圖的尊重,併爲支持未來更復雜、更多樣化的模型奠定了堅實基礎。

模型模塊化

準確性

內存管理優化

支持的模型

Ollama 通過全新多模態引擎支持的模型有:

Qwen 2.5 VL 模型介紹

Qwen2.5-VL,作爲 Qwen 模型家族的旗艦視覺語言模型,對比此前發佈的 Qwen2-VL 實現了巨大的飛躍。Qwen2.5-VL 的主要特點如下(https://qwenlm.github.io/zh/blog/qwen2.5-vl/):

  1. 感知更豐富的世界:Qwen2.5-VL 不僅擅長識別常見物體,如花、鳥、魚和昆蟲,還能夠分析圖像中的文本、圖表、圖標、圖形和佈局。

  2. Agent:Qwen2.5-VL 直接作爲一個視覺 Agent,可以推理並動態地使用工具,初步具備了使用電腦和使用手機的能力。

  3. 理解長視頻和捕捉事件:Qwen2.5-VL 能夠理解超過 1 小時的視頻,並且這次它具備了通過精準定位相關視頻片段來捕捉事件的新能力。

  4. 視覺定位:Qwen2.5-VL 可以通過生成 bounding boxes 或者 points 來準確定位圖像中的物體,並能夠爲座標和屬性提供穩定的 JSON 輸出。

  5. 結構化輸出:對於發票、表單、表格等數據,Qwen2.5-VL 支持其內容的結構化輸出,惠及金融、商業等領域的應用。

Qwen2.5-VL 的模型性能(在一系列涵蓋多個領域和任務的基準測試中表現出色,包括大學水平的問題、數學、文檔理解、視覺問答、視頻理解和視覺 Agent):

Qwen2.5-VL 已上架 Ollama:https://ollama.com/library/qwen2.5vl,可基於 Ollama 的全新多模態引擎進行部署運行。

Qwen2.5-VL 部署及其應用實測

安裝部署

ollama 的安裝,可閱讀前文:大模型本地部署開源框架 Ollama 介紹

運行命令:ollama pull qwen2.5vl:7b,下載 qwen2.5vl (7b 規格)到本地。

在終端運行命令:ollama run qwen2.5vl:7b,即可開啓與模型的交互對話。

測試示例

1、介紹一下這張圖片

>>> C:\Users\yuan_\Downloads\ollama-car.png 介紹一下這張圖片
Added image 'C:\Users\yuan_\Downloads\ollama-car.png'
這是一張黑白插畫,描繪了一隻卡通風格的動物(看起來像是一隻貓或狗)駕駛一輛復古風格的汽車。汽車的設計類似於經典的跑車
,車身上有“Ollama”這個標誌。動物戴着墨鏡,顯得非常酷炫,車後方有幾道白色的尾氣線條,表示汽車正在快速行駛。整體風格
簡潔,線條流暢,給人一種輕鬆愉快的感覺。

2、這張圖片裏,有什麼動物?

>>> C:\Users\yuan_\Downloads\multi-images.png 這張圖片裏,有什麼動物?
Added image 'C:\Users\yuan_\Downloads\multi-images.png'
這張圖片裏有幾幅插畫,每幅插畫中都有不同的動物:

1. 第一幅插畫中有一隻戴着墨鏡的羊駝,它正在駕駛一輛紅色的汽車。
2. 第二幅插畫中有一隻戴着拳擊手套的羊駝,它正在拳擊一個藍色的海豚。
3. 第三幅插畫中有一隻戴着墨鏡的羊駝,它站在草地上。
4. 第四幅插畫中有一隻戴着墨鏡的羊駝,它站在斑馬線上,旁邊有四個其他羊駝,它們看起來像是在排隊過馬路。

所以,這張圖片裏有羊駝。

模型的回答和圖片內容有點出入(如,第三幅插畫,羊駝是沒有戴墨鏡的;第四幅插圖,一共是四隻羊駝)

3、這是什麼食物?介紹一下

>>> C:\Users\yuan_\Downloads\food.jpg 這是什麼食物?介紹一下
Added image 'C:\Users\yuan_\Downloads\food.jpg'
這是一道中國菜,具體來說是燒麥。燒麥是一種傳統的中式點心,通常在早餐或午餐時食用。以下是關於燒麥的一些詳細介紹:

1. **外觀**:燒麥的外皮是用麪粉和水製成的,經過發酵後,再用蒸籠蒸熟。燒麥的形狀通常是半圓形的,頂部有褶皺,底部平整
。

2. **餡料**:燒麥的餡料非常豐富,可以是豬肉、牛肉、雞肉、蝦仁、蔬菜等。餡料通常會加入蔥、姜、蒜等調料,以增加風味。
燒麥的餡料可以根據個人口味進行調整。

3. **烹飪方法**:燒麥通常是蒸熟的,蒸的時間大約爲10-15分鐘。蒸熟後,燒麥會變得非常柔軟,外皮酥脆,內餡鮮美。

4. **蘸醬**:燒麥通常會搭配一些蘸醬一起食用,常見的蘸醬有醬油、醋、蒜泥、辣椒油等。蘸醬可以根據個人口味進行調整。

5. **食用方法**:喫燒麥時,可以用筷子夾起燒麥,蘸上一些蘸醬,然後一口咬下,感受外皮的酥脆和內餡的鮮美。

燒麥不僅美味,而且營養豐富,是許多中國家庭早餐或午餐的首選。如果你喜歡嘗試不同的中式點心,燒麥是一個不錯的選擇。

將廣東腸粉識別爲燒賣,準確度還是有待提高,哈哈。

4、 文字識別 1:第 20 章的標題是什麼,介紹了什麼內容,由哪幾個小節構成?

>>> C:\Users\yuan_\Downloads\book_page.jpg 第20章的標題是什麼,介紹了什麼內容,由哪幾個小節構成?
Added image 'C:\Users\yuan_\Downloads\book_page.jpg'
第20章的標題是“資本成本:進階主題”。

本章介紹了資本成本的評估方法,特別是對於非上市公司的權益資本成本的估計。具體內容包括:

1. **知識引導**:介紹了資本成本的重要性以及評估公司價值的關鍵因素之一。
2. **考點聚焦**:指出本章內容邏輯清晰,整體難度不高,但難點突出,公式較多。
3. **本章框架圖**:詳細列出了本章的內容結構,包括:
   - **資本成本的影響因素**:分爲自上而下的外部因素和自下而上的公司特有因素。
   - **估計債務資本成本**:包括上市交易的債務、非上市交易的債務、銀行借款、租賃等。
   - **估計權益資本成本**:包括基於風險的模型、歷史估計法、預期估計法等。
   - **權益風險溢價(ERP)**:涉及歷史估計法和預期估計法。
   - **估計非上市公司的權益資本成本**:涉及基於風險的模型和歷史估計法。

通過這些內容,讀者可以全面瞭解資本成本的評估方法,特別是對於非上市公司的權益資本成本的估計。

準確地識別了圖片上的文字,正確回答了第 20 章的標題,歸納總結了文字內容。

5、文字識別 2:將這一頁目錄,翻譯成中文

>>> C:\Users\yuan_\Downloads\book_page2.jpg 將這一頁目錄,翻譯成中文
Added image 'C:\Users\yuan_\Downloads\book_page2.jpg'
第3章:設計良好的數據架構

3.1 數據架構是什麼?
3.2 什麼是企業架構?
3.3 數據架構定義
3.4 好的“數據架構”原則
3.5 原則1:明智地選擇通用組件
3.6 原則2:計劃失敗
3.7 原則3:爲可擴展性設計
3.8 原則4:架構是領導力
3.9 原則5:始終是架構師
3.10 原則6:始終是架構師
3.11 原則7:設計松耦合系統
3.12 原則8:優先考慮可逆的安全性
3.13 原則9:擁抱FinOps
3.14 主要架構概念
3.15 域和功能
3.16 分佈式系統、可擴展性和設計失敗
3.17 緊耦合與松耦合:層次、單體和微服務
3.18 綠地項目與現有項目
3.19 數據倉庫
3.20 數據湖
3.21 Lambda架構
3.22 數據平臺
3.23 數據湖與數據平臺
3.24 數據湖與數據平臺
3.25 數據湖與數據平臺
3.26 數據湖與數據平臺

翻譯了部分英文,部分內容不能準確識別,有待提高。

python sdk 運行

這股票近期走勢如何?

from ollama import Client

path = './images/k_line.png'

client = Client()

response = client.chat(
    model='qwen2.5vl:7b',
    messages=[
        {
            'role''user',
            'content''這股票近期走勢如何?',
            'images': [path],
        }
    ],
)

print(response.message.content)
E:\anaconda3\envs\llm\python.exe E:\python_project\ollama\chat\image_parse.py 
從圖中可以看出,該股票近期的走勢呈現出明顯的上升趨勢。具體來說:

1. **價格走勢**:價格從35.84上漲到42.66,表明該股票在近期有顯著的上漲。
2. **均線系統**:圖中顯示了多條均線,其中黃色、綠色和紫色的均線均呈上升趨勢,表明短期和中期的均線都在支撐股價上漲。
3. **成交量**:雖然圖中沒有直接顯示成交量,但結合價格走勢和均線系統,可以推測成交量可能也在增加,因爲價格在上漲,通常伴隨着成交量的放大。
4. **技術指標**:圖中沒有顯示技術指標,但根據價格走勢和均線系統,可以推測該股票可能處於一個上升通道中,未來可能會繼續上漲。

總體來看,該股票近期的走勢是積極的,投資者可以考慮逢低買入,但需要注意市場風險,做好風險管理。

之前筆者測試了 llama3.2-vision:多模態大模型 llama3.2-vision 介紹及其應用。與 llama3.2-vision 相比,qwen2.5vl 的圖片物體識別與描述更準確,圖片中文識別能力更強。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/I9RcQp97jEteqB3xdV1ywA