當前的端到端系統以語言模型作為解碼器,導致緩衝區隨著每行新文字的產生而持續擴大。這不僅增加了記憶體使用量,也逐步降低了生成速度。實際上,這些系統通常透過逐頁處理文件並在每一步後重置快取來解決此問題。
百度設計其架構的靈感來自於人類手抄文字的方式。DeepEncoder 負責壓縮頁面,而 MoE 解碼器則利用 R-SWA 進行處理,將 KV 快取作為一個固定長度的佇列來運作。
百度以人類的類比來闡述這個問題。當一個人抄寫書籍時,他們不會重複閱讀所有已經寫下的內容。他們會將目光集中在原始資料、剛寫下的幾個字元以及接下來要寫的字元上。較早的段落會透過一種「軟性遺忘」而逐漸淡出。研究人員希望 Unlimited OCR 能夠模仿這種模式。
固定視窗限制記憶體使用
該系統透過團隊稱之為「參考滑動視窗注意力」(Reference Sliding Window Attention, R-SWA)的機制運作。每個生成的 token 仍然能看到所有的參考 token、視覺圖像 token 和提示詞。然而,對於先前生成的輸出,它只會回溯查看最近的 128 個 token。這使得 KV 快取在整個處理過程中保持恆定,而非隨著輸出長度線性增長。
透過 R-SWA,每個生成的 token 會關注所有參考 token,但僅限於最近的 n 個輸出 token,從而在整個解碼過程中保持 KV 快取恆定。
標準的滑動視窗注意力機制也會使視覺 token 經歷持續的狀態變化,導致圖像特徵逐漸模糊並降低辨識度。R-SWA 則將視覺 token 從這些轉換中豁免。它們被編碼一次後便保持不變。
KV 快取運作方式類似一個佇列,每個新 token 會將最舊的 token 推出。在標準的多頭注意力機制下,記憶體使用量會隨著 token 數量的增加而無限增長。R-SWA 則將其限制在固定大小,即前綴長度與視窗大小的總和。
Deepseek OCR 的核心延遲會隨著每個解碼步驟而增加,而 Unlimited OCR 由於 R-SWA 的應用,其延遲保持平穩。
基於 Deepseek OCR 打造
Unlimited OCR 建立在開源的 Deepseek OCR 模型之上。百度保留了其 DeepEncoder,並將其與一個具有三十億參數的專家混合(mixture-of-experts)架構結合,其中在推論期間只有約五億參數是活躍的。DeepEncoder 能將 1024x1024 像素的 PDF 圖像壓縮成 256 個 token。
兩種解析度模式得以保留。「Base」模式用於處理多頁文件,而「Gundam」模式則為單頁文件使用動態解析度。解碼器中的每個標準注意力層都被替換為 R-SWA。
訓練使用了大約兩百萬個文件樣本,其中單頁與多頁資料的比例為 9 比 1。Paddle OCR 負責單頁文件的註釋。多頁資料則是透過將單頁文件拼接成 2 到 50 頁的文件來合成建構的。
所有資料都被打包成 32,000 個 token 的序列;訓練在 8 塊 16 個 Nvidia A800 GPU 上運行了 4,000 個步驟。DeepEncoder 保持凍結狀態,僅更新了語言模型的參數。
儘管注意力有限,分數仍更優異
根據作者表示,Unlimited OCR 在 OmniDocBench v1.5 文件基準測試中整體得分為 93%,比 Deepseek OCR 的基準線高出六個百分點。該基準測試衡量了多個子任務。純文字辨識的錯誤率(以編輯距離衡量,即每個字元所需的修正次數)略有下降。
表格結構辨識的改善更為顯著,提升了近六個百分點。在更新的 v1.6 版本中,該模型達到 93.92%,使其位居端到端系統排名的榜首。
在長文件測試中,模型能一次性處理多頁文件,即使超過 40 頁,錯誤率仍保持在 0.11 以下。作者認為剩餘的錯誤並非由於上下文遺失,而是因為在 Base 模式下,當文字變得非常小時,DeepEncoder 的解析度限制所致。
在單頁文件上將視窗限制為 128 個 token 並沒有損害準確性,反而略有幫助。研究人員推測,R-SWA 迫使模型更專注於密集的 OCR 任務,而完整的注意力機制則傾向於隨著輸出長度增加而發散。
恆定的快取也帶來了速度上的優勢。在 Base 模式下,Unlimited OCR 每秒可處理 5,580 個 token,而 Deepseek OCR 為 4,951 個,提升了 12.7%。在理想平行處理的理論上限比較中,當輸出 token 約為 6,000 個時,該模型領先基準線 35%,而基準線的吞吐量則隨著長度增加而穩定下降。
根據百度表示,對於長文件解析,這是該模型的核心優勢,即使在超過 40 頁的情況下,其編輯距離仍保持在 0.11 以下,Distinct-35 分數達到 97%。錯誤主要出現在微小文字上,研究人員將其歸因於 Base 模式的解析度限制,而非 R-SWA 本身的任何方向性問題。
尚未真正「無限」
該模型固定的 32,000 個 token 上下文長度限制了它能處理的頁數,因為視覺 token 會隨著每增加一頁而堆疊。百度計劃很快訓練 128,000 個 token 的模型,並最終建立一個預填充池,讓模型能夠像翻書一樣自行獲取相關的 KV 區塊。作者們也認為 R-SWA 可以轉移到其他基於參考的任務,例如語音辨識和翻譯。
程式碼和模型權重已在 GitHub 和 Hugging Face 上發布。該模型可在 ModelScope 以及推論引擎 vLLM 和 SGLang 上運行。您可以在 Hugging Face Spaces 上試用其演示。
OCR 已成為 AI 領域中一個更為活躍的戰場,各模型主要在 token 效率上競爭。其應用興趣遠不止於文件辨識。由於基於圖像的文字比其數位對應物使用的計算量少得多,這種方法可以擴展語言模型用於處理長聊天歷史或大型文件的記憶體。開發人員已經利用這一點來降低 Anthropic 的 Fable 5 上的 token 成本。
Deepseek 在今年稍早也朝這個方向推進,推出了 Deepseek OCR 2,這是一個能語義化重排圖像資訊的編碼器,而非僵硬地從左上到右下讀取。它在 OmniDocBench v1.5 上獲得了 91.09% 的分數。
Mistral AI 則透過 Mistral OCR 3 鞏固其地位,宣稱能更好地辨識手寫文字、表格和複雜表格。對於百度而言,這項工作符合其更廣泛的 AI 推動策略。該公司最近發布了 Ernie 5.1,這是一個在 LMArena 上排名第一的中文多模態模型。
可快速掃描的書籍也作為新語言模型的訓練資料而具有吸引力,這是一個引發激烈辯論的話題。研究人員已證明,大型語言模型能夠幾乎逐字地重現來自《哈利波特》和《哈比人》等受版權保護書籍的段落。



