熱門資訊> 正文
2026-06-23 21:11
端到端 OCR 在過去兩年迎來新一輪熱潮,以 DeepSeek OCR 為代表的方案將大語言模型(LLM)用作解碼器,藉助語言先驗顯著提升了識別精度。
然而,這類方案存在一個內在缺陷:隨着輸出序列不斷增長,KV 緩存持續膨脹,既消耗大量顯存,又使每一步解碼的延迟逐漸拉長。
現有模型普遍採用類似 for 循環的方式逐頁處理,每處理完一頁便重置記憶,再切換到下一頁。這種方式本質上是一種工程補丁,而非真正意義上的長程理解能力。
反觀人類,我們在抄寫一本書時並不會持續回看所有已寫內容,而是把注意力集中在三處:正在抄寫的原文、剛剛寫下的少量字符、以及即將落筆的下一個字。對於已寫過的內容,人類以一種「軟遺忘」的方式逐漸淡出記憶。這種機制使人能夠在認知負荷極低的情況下完成數百頁的連續轉錄任務。
受此啓發,百度團隊提出了「無限 OCR」(Unlimited OCR),將解碼器中的所有注意力層替換為「參考滑動窗口注意力」(Reference Sliding Window Attention,R-SWA),在降低注意力計算開銷的同時,在整個解碼過程中維持恆定的 KV cache。
論文鏈接:https://arxiv.org/pdf/2606.23050
GitHub地址:https://github.com/baidu/Unlimited-OCR
據論文介紹,通過將 DeepSeek OCR 編碼器的高壓縮率與恆定 KV cache 設計相結合,Unlimited OCR 能夠在標準 32k 最大長度限制下,以單次前向傳播轉錄數十頁文檔。
更重要的是,R-SWA 是一種通用的解析注意力機制,除 OCR 外,它同樣適用於 ASR、翻譯等任務。
標準的多頭注意力(MHA)採用全量 KV cache,隨着輸出 token 數線性增長,其佔用的顯存和計算時間也同步增長。對於一個需要輸出十萬個 token 的多頁文檔來説,這意味着 KV cache 將無限膨脹,推理速度也會持續下降。這正是當前所有端到端 OCR 模型無法實現「一次性解析整本書」的根本原因。
R-SWA 將注意力劃分爲兩段:參考段(reference)和解碼滑動窗口(decode window)。
參考段包含視覺 token 和提示詞(prompt),在整個解碼過程中保持全局可見,且不參與狀態轉移,視覺特徵只被編碼一次,此后靜止不變。這一設計避免了普通滑動窗口注意力(SWA)因將視覺 token 也納入滑動循環而導致的"視覺特徵逐步模糊"問題。
解碼滑動窗口的寬度固定為 n(默認 128),以因果方式向右滑動。每生成一個新 token,最早進入窗口的那個 token 的 KV 便被驅逐出隊列。這樣一來,解碼側的 KV cache 規模始終被限定在固定容量之內,而非隨輸出長度線性增加。
圖|R-SWA 與標準全量注意力的 KV cache 對比示意。
對於長序列解碼,KV cache 總量對比尤為明顯。在輸出 token 數遠大於窗口寬度的情況下,R-SWA 的 cache 佔用趨向於一個有界常數,而 MHA 的 cache 則無上限地增長。這一差距隨輸出長度加大而擴大,正是 R-SWA 實現近無限解析的理論基礎。
Unlimited OCR 沿用了 DeepSeek OCR 的 DeepEncoder 編碼器。DeepEncoder 將 SAM-ViT 與 CLIP-ViT 級聯,在銜接橋處實施 16× token 壓縮,使一張 1024×1024 的 PDF 頁面圖像最終只產生 256 個視覺 token。這一極高的壓縮率意味着:即使同時輸入數十頁文檔,prefill 階段產生的視覺 token 總量也相對可控。
DeepEncoder 壓縮視覺端,R-SWA 穩定解碼端兩者相結合,共同支撐起 Unlimited OCR 在 32K 最大長度限制下一次性解析數十頁文檔的能力。
圖|Unlimited OCR 整體架構示意。
研究團隊在 OmniDocBench v1.5 和 v1.6 上對 Unlimited OCR 進行了評測,並與當前主流的端到端 VLM(Vision-Language Model)方案進行了系統比較。
在 OmniDocBench v1.5 上,Unlimited OCR(3B-A0.5B)取得了 93.23 的 Overall 分數,相比 DeepSeek-OCR 提升 6.22;在 OmniDocBench v1.6 上,Unlimited OCR 以 93.92% 的 Overall 分數取得端到端方案 SOTA,超過了 Logics-Parsing-v2(93.33%)、FireRed-OCR(93.26%)等同期工作。
研究團隊還對 OmniDocBench v1.5 涵蓋的 9 種文檔類型(學術論文、書籍、考卷、雜誌、報紙、便籤等)進行了逐類別對比。
結果顯示,Unlimited OCR 在所有類別的所有指標上均優於 DeepSeek OCR,在 9 項文字編輯距離和閲讀順序指標中有 7 項超過了 DeepSeek OCR 2,表明 R-SWA 的引入帶來的是無損增益。
這是 Unlimited OCR 區別於所有現有模型的關鍵能力。研究團隊構建了一個內部測試集,收錄了小説、學術文檔和論文,按頁數劃分爲 2、5、10、15、20、40+ 頁六檔,每檔不少於 10 本,以評估多頁一次性解析的表現。
Distinct-n 衡量生成文本中不重複 n-gram 的比例,是檢測模型在長程生成中是否陷入循環重複的重要指標。即使在 40 頁以上的場景下,Distinct-35 仍達到 96.90%,編輯距離保持在 0.11 以內。
研究團隊指出,此類場景下的誤識別主要來自 PDF 圖像中的小字體文本在 1024×1024 分辨率下難以辨認,而非 R-SWA 在長程推理中失去方向。
在推理吞吐量(TPS)方面,隨着輸出序列變長,DeepSeek OCR 的 TPS 持續下降:在輸出 6000 個 token 時降至 5822.87 TPS,而 Unlimited OCR 維持在 7847.71 TPS,領先約 35%。
在單頁 OmniDocBench 評測場景下,Unlimited OCR 的吞吐量也比 DeepSeek OCR 高出 12.7%(5580 vs. 4951 TPS)。
每一步 Flash Attention v3 kernel 的調用延迟在 Unlimited OCR 中始終保持平穩,而在 DeepSeek OCR 中則隨解碼步驟線性增加,並在 KV cache 跨越某一對齊邊界時出現驟降。
研究團隊指出,當前 Unlimited OCR 並不能在有限上下文長度(如 32K)下實現真正意義上的「無限」解析,因為 prefill 端的長度仍受上下文窗口約束,隨着輸入頁數增加,prefill 階段的視覺 token 總量也隨之累積。
未來,他們的短期計劃是將最大訓練上下文擴展至 128K,以支持更多頁面的一次性 prefill;長期目標是構建一個 prefill 池,讓模型能夠自動按需讀取 KV 片段,模擬人類翻頁時的記憶檢索行為,從而實現真正的無限解析。
此外,他們還計劃將 R-SWA 遷移至自動語音識別(ASR)和翻譯等同樣具有參考輸入的長程任務。
Unlimited OCR 所揭示的核心結論,即在端到端模型的解碼器中,將全量注意力完整替換為 R-SWA 對解析任務無損,提供了一條以有限資源撬動長程推理能力的實用路徑。
將 KV cache 從隨解碼長度無限增長的量轉變為有界常數,這一改變有望在 OCR 之外更廣泛的參考型長程生成任務中得到應用。
本文來自微信公眾號 「學術頭條」(ID:SciTouTiao),整理:喬治,36氪經授權發佈。