JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

視覺語言模型實際上能做什麼

圖說、視覺問答、指令遵循、OCR,以及讀懂圖表與文件——任務選單,以及各自的提示方式。

從描述到動手

一旦模型看得見,一整份任務選單就攤開了。它們落在一道難度階梯上:最簡單的只是描述一張影像;最豐富的是針對影像遵循多步驟指令。同一個模型通常全都能做——差別在於你問什麼,而不是你載入哪個模型。本篇一階一階走過這道階梯,讓你知道該期待什麼、以及怎麼把要求講清楚。

圖說與視覺問答

影像圖說(image captioning)是入門任務:「描述這張影像」。它很適合用來做替代文字(alt-text)、內容審核分流,以及大量標籤化。你可以引導風格——「一句短句」、「列出每個物體」、「聚焦在氛圍上」——因為圖說就只是生成出來的文字,會像任何其他提示一樣聽你的指令。

視覺問答(visual question answering, VQA)更進一步:你問一個具體問題,模型就從影像中作答——「有幾個人戴帽子?」、「燈是紅的還綠的?」、「這是什麼品牌?」VQA 正是接地發揮價值的地方:好的答案會指向正確的區域,而不是憑先驗猜。它也是幻覺會冒出來的地方——若答案在畫面中根本看不到,較弱的模型可能會編一個,而不是說「我看不出來」。

視覺問答依靠注意力運作:模型聚焦於與你的問題相關的影像部分——點擊一個詞即可查看它關注的內容。

互動式自注意力:點擊一個詞會高亮它最關注的其他 token。

遵循視覺指令

視覺指令遵循(visual instruction following)是把狹隘的圖說與 VQA 模型,變成通用視覺助理的那項能力。在以「一張影像配上一個自由形式的要求與一個有幫助的回答」為例子做過指令微調(instruction tuning)之後,模型就會做開放式的事情:「把這張照片裡的標誌改寫成正式英文」、「從這張白板上,把待辦事項抽成一份檢查清單」、「把這張示意圖解釋給五歲小孩聽」。這就是視覺版的——從文字補全器升級成對話助理。

messages = [
  { role: "user", content: [
      { type: "image", source: photo_of_receipt },
      { type: "text",  text: "Extract every line item and total as JSON. "
                            + "If a price is unreadable, use null." }
  ]}
]
# The model reads the receipt AND obeys the formatting instruction.
視覺指令遵循:一則訊息同時帶著影像與一個結構化的要求。

閱讀:OCR、圖表與文件

真實價值有極大一部分,就只是文字的影像而已。用大型語言模型做 OCR(optical character recognition,光學字元辨識)把經典的文字擷取折進了模型裡:它能轉錄印刷頁面、手寫字、標誌與截圖——而且因為是語言模型在做,輸出可以順手清理、翻譯或摘要,而不只是把原始字元倒出來。

OCR 和文件閱讀本質上是生成:模型以影像為條件,逐個 token 地轉寫出文字。

自迴歸迴圈:把每個生成的 token 再餵回去以生成下一個。

圖表與文件理解(chart and document understanding)是閱讀的高階:不只是轉錄文字,而是詮釋結構。你可以要模型讀一張長條圖並說出趨勢、從表格某個特定儲存格取出一個數字、回答一個需要把表單欄位和小字結合起來才能答的問題,或摘要一頁多欄的 PDF。這正是視覺語言模型取代脆弱、純手工搭建的文件流水線的地方——不過對於極小而密集的表格,你仍應核對數字。

選對階梯的那一階

  1. 需要一般描述或替代文字?→ 圖說,並引導其風格。
  2. 需要從影像中取得某個具體事實?→ VQA,並允許模型回答「看不到」。
  3. 需要針對影像完成一項開放式任務?→ 視覺指令遵循,搭配清楚的要求。
  4. 需要讀文字、圖表或表單?→ OCR/文件理解,並餵進高解析度。