← 個人洞察與回饋
2026-10-20

本機 VLM 讀帳號比雲端準——Qwen3.8、Gemma 4、Nemotron 3.5 的轉帳資訊 OCR 實測

82 張真實轉帳圖(手寫、收款資訊、聊天截圖、存摺),從圖中抽出銀行、帳號、金額。Qwen3.8-27B 與 Gemma 4 31B 讀帳號 97–99%、金額 99–100%,遠勝雲端 gpt-6-luna 的 81%/90%,手寫更是幾乎全對;但整張全對反而輸 Luna(66–68% vs 74%),輸在圖上沒寫的銀行代碼會憑記憶補錯——是銀行常識問題,不是 OCR。120B 的 Nemotron 3.5 Super VL 讀手寫最差。

模型
Qwen3.8-27B(dense)· Gemma 4 31B(dense)· Nemotron 3.5 Super VL(120B/12B active MoE)· 主測 8-bit mxfp8,另測 4-bit nvfp4 · 對照雲端 gpt-6-luna
硬體
Apple M3 Ultra · 512GB
執行環境
Ollama 0.40.6(MLX)· temperature 0 · structured outputs(JSON schema)
日期
2026-10-20

一句話結論

讀帳號、金額,本機的 Qwen3.8-27B 與 Gemma 4 31B 比雲端的 gpt-6-luna 準得多(帳號 97–99% vs 81%,金額 99–100% vs 90%),連手寫中文的帳號都幾乎全對;但「整張圖全部欄位都對」反而輸給 Luna(66–68% vs 74%)。差距不在 OCR,而在銀行常識:圖上沒寫銀行代碼時,本機模型會憑記憶補,而且幾乎都補錯。總參數最大的 Nemotron 3.5 Super VL(120B)讀手寫數字明顯最差。

背景:為什麼測這個

這是一個銀行 App 轉帳情境的研究延伸:使用者上傳一張圖(手寫紙條、收款資訊、聊天截圖、存摺,或無關的圖),系統要抽出銀行代碼、銀行名稱、收款帳號、金額。先前用雲端的決策模型 API 做過,它看得懂圖、但抄不出帳號(逐位讀出的正確率只有 1%);改用雲端 gpt-6-luna 抽取後,帳號 81%、整張全對 74%,手寫是最大的瓶頸。

這次把抽取那一步換成三顆本機 VLM,問題是:本機模型的 OCR 能不能取代雲端?本機還有一個雲端給不了的好處——圖片完全不離開這台機器。

測試設計與固定條件

模型架構授權8-bit 大小載入後佔用
Qwen3.8-27Bdense 27.8B(含 linear attention 層)Apache 2.031 GB32.0 GB
Gemma 4 31Bdense 31.3BApache 2.033 GB34.7 GB
Nemotron 3.5 Super VLMamba-2/Transformer 混合 MoE,120B 總參數、每個 token 12BOpenMDW-1.1129 GB130.0 GB

總表

每顆模型取代表性的一種模式;「修正後」的意思見第五節。完整的八種組合在本節最後。

gpt-6-luna
effort low(雲端)
Qwen3.8-27B
thinking 關
Gemma 4 31B
thinking 關
Nemotron 3.5
thinking 開
帳號81%99%97%80%
金額90%100%99%94%
銀行代碼91%75%74%77%
銀行名稱(修正後評分)91%80%80%78%
整張關鍵欄位全對(修正後評分)74%66%68%60%
手寫(中)整張全對36%45%27%9%
每張圖平均(抽取)2.9 秒7.6 秒5.2 秒25.2 秒

完整八種組合

Luna noneLuna lowQwen 關Qwen lowGemma 關Gemma 開Nemotron 關Nemotron 開
是否轉帳99%99%98%99%100%99%96%100%
帳號78%81%99%99%97%99%77%80%
帳號逐字錯誤率(CER)––0.4%0.1%0.5%0.1%7.0%2.6%
金額88%90%100%100%99%99%90%94%
銀行代碼84%91%75%72%74%75%80%77%
銀行名稱(原 → 修正後)81 → 83%90 → 91%78 → 80%75 → 81%78 → 80%83 → 90%68 → 70%78 → 78%
整張全對(原 → 修正後)70 → 70%74 → 74%65 → 66%62 → 63%67 → 68%68 → 70%55 → 55%60 → 60%
手寫(中)整張全對23%36%45%32%27%32%9%9%
每張圖平均2.3 秒2.9 秒7.6 秒14.2 秒5.2 秒18.8 秒5.4 秒25.2 秒

帳號、金額、銀行代碼與名稱的準確率只算「是轉帳資訊」的 69 張;是否轉帳與整張全對算全部 82 張。CER 是數字的編輯距離 ÷ 正確值位數,看得出錯了幾碼。

一、讀數字:Qwen 與 Gemma 明顯勝過雲端

依圖片類別拆開看帳號正確率,差距全在手寫:

類別張數Luna lowQwen 關Gemma 關Nemotron 開
手寫(中)2259%100%95%59%
手寫(英)1060%100%100%50%
收款資訊18100%94%100%100%
聊天紀錄17100%100%94%100%
存摺2100%100%100%100%

印刷與截圖大家都讀得好;手寫上,雲端 Luna 常漏掉重複或開頭的數字、金額少一個 0,Qwen 與 Gemma 卻幾乎全對,錯的幾張也多半只差 1 碼。少數錯誤之一是把銀行代碼接在帳號前面,屬於欄位切分而不是讀錯字。

二、整張全對輸在銀行常識,不是 OCR

把銀行代碼分成「圖上有寫」與「圖上沒寫」兩種情況,原因就很清楚:

代碼有寫在圖上(47 張)代碼沒寫(22 張,可留空)
Luna none41 張對自己補 5 次,補對 0 次
Luna low45 張對自己補 17 次,補對 13 次
Qwen 關46 張對自己補 17 次,補對 1 次
Qwen low46 張對自己補 19 次,補對 1 次
Gemma 關47 張對自己補 18 次,補對 0 次
Gemma 開47 張對自己補 18 次,補對 1 次
Nemotron 關44 張對自己補 11 次,補對 0 次
Nemotron 開47 張對自己補 17 次,補對 1 次
實務上的意涵:銀行欄位不該靠模型記憶。讓模型只照抄圖上寫的,再用銀行代碼表對照補齊代碼與正式名稱,本機模型的整張全對預期能超過雲端——但這個變體本測沒有驗證。

三、thinking 幾乎沒有幫助

OCR 這類「看清楚就會」的任務,Qwen 與 Gemma 不開 thinking 就已經到頂。

四、Nemotron:總參數最大,手寫卻讀得最差

Nemotron 3.5 Super VL 總參數 120B、佔 130 GB 記憶體,是另外兩顆的 4 倍;但手寫(中)帳號只有 59%、手寫(英)50%,整張全對只有 9–20%。錯法多半差 1 碼,也有整串讀錯、或把轉帳資訊判成不是轉帳。印刷與截圖則不輸另外兩顆(收款資訊整張全對 83%、聊天紀錄最高 88%),圖上有寫的銀行代碼也讀得準。在這批測資上,規模不是重點,兩顆 27–31B 的 dense 模型讀手寫穩得多。

五、評分程式的一個 bug:一字不差的「臺灣銀行」被判錯

雲端那次沿用的銀行名稱比對,是用「互相包含、取最長的命中」。結果「臺灣銀行」會對到名稱更長、也包含「臺灣…銀行」的臺灣中小企業銀行,連一字不差的正確答案也算錯;「匯豐」與「滙豐」這組異體字也沒有當成同一家。修正方式是先找正式名稱或別名完全相同的,找不到才退回原本的包含比對,並把「匯」統一成「滙」。

雲端與本機的紀錄都用修正後的規則重算(原始紀錄不動):銀行名稱提高 0–7 點,整張全對提高 0–2 點,排名不變。總表的「修正後」就是指這個。

六、4-bit(nvfp4)看不出明顯的量化損失

Qwen 關
8-bit
Qwen 關
4-bit
Qwen low
8-bit
Qwen low
4-bit
Gemma 關
8-bit
Gemma 關
4-bit
Gemma 開
8-bit
Gemma 開
4-bit
帳號99%96%99%100%97%94%99%97%
金額100%99%100%100%99%99%99%99%
整張全對(修正後)66%66%63%73%68%68%70%67%
每張圖平均7.6 秒6.9 秒14.2 秒10.4 秒5.2 秒4.6 秒18.8 秒15.7 秒
載入後佔用32.0 GB18.5 GB同左同左34.7 GB19.5 GB同左同左

帳號、金額 4-bit 只低 0–3 點;整張全對有高有低(修正後評分,Qwen low 4-bit 甚至高 10 點)。82 張圖裡 1 張就是 1.2 點,整張全對的差距主要來自銀行欄位的猜測結果翻轉,不能解讀成 4-bit 比較好。4-bit 快 9–27%、記憶體少一半左右。Gemma 4-bit 開 thinking 時,有 2 張生成到 8,192 tokens 上限被截斷、JSON 解析失敗,8-bit 沒有發生。

七、速度:讀圖佔大部分時間

每張圖平均讀圖(prefill)生成(decode)平均 prompt tokens
Qwen 關7.6 秒6.3 秒1.2 秒2,465
Gemma 關5.2 秒3.6 秒1.4 秒1,180
Nemotron 關5.4 秒4.5 秒0.8 秒2,582
Nemotron 開25.2 秒4.5 秒20.6 秒2,582

Qwen 依圖片大小決定 token 數,手寫照片約 3,300 tokens、每張 10 秒左右;Gemma 每張固定在 1,200 tokens 上下,所以每張都在 5–6 秒、非常穩定。本機每張 5–8 秒,比雲端慢 2–3 倍(雲端數字含跨太平洋網路,條件不同,只並列不比高下)。

執行環境踩到的坑

結論與建議

本測沒有涵蓋的部分(誠實邊界)