RLVR訓(xùn)練多模態(tài)文檔解析模型-olmOCR 2技術(shù)方案(模型、數(shù)據(jù)和代碼均開源) 原創(chuàng)
olmOCR 2相關(guān)對比:

持?jǐn)?shù)據(jù)、模型和代碼完全開源
olmOCR 2 是一套面向文檔 OCR 的端到端解決方案,其核心方法圍繞RLVR,通過 “合成數(shù)據(jù)規(guī)模化 - 單元測試定獎勵 - RL 訓(xùn)練提性能” 的閉環(huán),解決傳統(tǒng) OCR 系統(tǒng)在復(fù)雜場景(數(shù)學(xué)公式、表格、多列布局)中的痛點(diǎn)。
現(xiàn)有問題
傳統(tǒng)OCR系統(tǒng)的性能評估依賴編輯距離 ,計(jì)算模型輸出與Ground Truth的字符級差異(插入、刪除、替換次數(shù))。

圖1:傳統(tǒng)編輯距離的局限性:閱讀順序問題

圖2:傳統(tǒng)編輯距離的局限性:公式識別問題
為解決上述問題,設(shè)計(jì)了下面6類可驗(yàn)證的二進(jìn)制單元測試(結(jié)果僅“通過(PASS)”或“失敗(FAIL)”),覆蓋文檔OCR的需求:
測試類型 | 核心功能 |
文本存在性 | 驗(yàn)證特定短語(如關(guān)鍵句子、公式)是否精確出現(xiàn)在輸出中 |
文本不存在性 | 驗(yàn)證無關(guān)內(nèi)容(如頁眉、頁腳、頁碼)是否未出現(xiàn)在輸出中 |
自然閱讀順序 | 驗(yàn)證句子/段落的順序是否符合人類閱讀習(xí)慣(如圖1中“綠色→黃色”不被紅色打斷) |
表格準(zhǔn)確性 | 驗(yàn)證表格單元格的相對位置與數(shù)值是否正確(如“Model”在“GPT-4-turbo”上方) |
數(shù)學(xué)公式準(zhǔn)確性 | 用KaTeX渲染模型輸出與參考公式,驗(yàn)證視覺結(jié)構(gòu)是否一致(如圖2) |
基線魯棒性 | 驗(yàn)證無長重復(fù)n-gram、無非目標(biāo)語言字符(避免模型幻覺) |
這些測試的優(yōu)勢在于:
- 公平處理浮動元素:對圖注、表格等位置靈活的元素,只要核心邏輯正確(如表格單元格關(guān)系、閱讀順序),均判定為通過,避免編輯距離的“過度懲罰”;
- 精準(zhǔn)反映實(shí)際正確性:聚焦“用戶是否能用”(如公式能否正確渲染、表格能否正確讀取),而非“字符是否完全匹配”。
數(shù)據(jù)
手動為每個文檔設(shè)計(jì)單元測試耗時(shí)極長(原文提到“需數(shù)小時(shí)/文檔”),無法支撐RL訓(xùn)練的大規(guī)模數(shù)據(jù)需求。因此,文章開發(fā)了全自動合成數(shù)據(jù)生成 pipeline,實(shí)現(xiàn)“文檔→HTML→單元測試”的端到端規(guī)模化,核心流程分三步:
1. 步驟1:挑選“難處理場景”PDF數(shù)據(jù)源
為確保合成數(shù)據(jù)的挑戰(zhàn)性(覆蓋真實(shí)OCR痛點(diǎn),避免“模板化數(shù)據(jù)”,確保數(shù)據(jù)多樣性,與真實(shí)世界OCR需求對齊。),文章選擇高難度文檔樣本: 數(shù)據(jù)來源arXiv數(shù)學(xué)論文(含復(fù)雜公式)、舊掃描件(低分辨率)、多列布局文檔、含復(fù)雜表格的文檔。

olmOCR 2 合成數(shù)據(jù)流水線的 HTML 頁面生成。從真實(shí)文檔中采樣一個頁面(左圖),并提示通用 視覺語言模型(VLM)生成一個高度相似的 HTML 頁面(右圖)。渲染后的 HTML 頁面圖像與原始 HTML 配對,作 為專用于 OCR 的 VLM 的監(jiān)督信號。
2. 步驟2:PDF→HTML的三階段轉(zhuǎn)換(生成“帶Ground Truth的結(jié)構(gòu)化文檔”)
HTML是生成單元測試的關(guān)鍵:其語義標(biāo)簽(如??<header>???、??<footer>???、??<table>??、KaTeX公式)可直接用于自動提取測試用例。轉(zhuǎn)換過程依賴通用VLM(Claude-sonnet-4-20250514) ,分三階段迭代優(yōu)化:
階段 | 核心任務(wù) | 輸入 | 輸出 |
1. 布局分析 | 讓VLM識別文檔結(jié)構(gòu):列數(shù)、圖像/表格位置、頁眉/頁腳區(qū)域、公式位置等 | 原始PDF頁面圖像 | 布局結(jié)構(gòu)描述(如“2列,右上角有表格”) |
2. 內(nèi)容渲染 | 讓VLM基于布局分析,生成與原始PDF尺寸一致的語義HTML | 原始圖像+布局描述 | 初始HTML(含文本、KaTeX公式、HTML表格) |
3. 輸出優(yōu)化 | 渲染初始HTML為圖像,與原始PDF對比,讓VLM修正差異(如字體、間距、公式格式) | 原始圖像+初始HTML+渲染圖像 | 優(yōu)化后的最終HTML |
3. 步驟3:基于HTML自動生成單元測試
利用HTML的結(jié)構(gòu)化信息,程序化提取單元測試用例,無需人工干預(yù):
- 文本不存在性測試:從?
?<header>??/??<footer>??標(biāo)簽提取頁眉/頁腳,生成“這些內(nèi)容不應(yīng)出現(xiàn)”的測試; - 數(shù)學(xué)公式測試:從KaTeX標(biāo)簽提取公式,生成“渲染后與參考一致”的測試;
- 表格測試:從?
?<table>??標(biāo)簽隨機(jī)采樣單元格,生成“單元格相對位置正確”的測試; - 閱讀順序測試:基于HTML中段落的先后順序,生成“段落順序符合HTML結(jié)構(gòu)”的測試。
最終生成的合成數(shù)據(jù)集 olmOCR2-synthmix-1025 包含:2186個PDF頁面 → 30381個單元測試用例,為RL訓(xùn)練提供充足數(shù)據(jù)。
訓(xùn)練流程:SFT→RLVR→模型融合,端到端優(yōu)化
olmOCR 2的訓(xùn)練分為監(jiān)督微調(diào)(SFT) 和強(qiáng)化學(xué)習(xí)(RLVR) 兩階段,結(jié)合模型融合(Souping)進(jìn)一步提升性能:
1. 階段1:sft
讓模型掌握基礎(chǔ)的文檔解析能力(文本提取、公式識別、表格結(jié)構(gòu)感知),為后續(xù)RL優(yōu)化打基礎(chǔ)。選擇Qwen2.5-VL-7B-Instruct,使用改進(jìn)后的監(jiān)督數(shù)據(jù)集 olmOCR-mix-1025(267962頁,來自10萬+PDF),相比舊版(olmOCR-mix-0225)的改進(jìn):
- 用GPT-4.1替代GPT-4o處理數(shù)據(jù),減少幻覺;
- 統(tǒng)一公式格式(塊級公式用?
?\[??,行內(nèi)公式用??\(??); - 表格用HTML格式存儲(而非純文本);
- 為圖像添加基礎(chǔ)alt文本;
2. 階段2:強(qiáng)化學(xué)習(xí)(RLVR)
核心是用合成數(shù)據(jù)的單元測試作為獎勵信號,通過GRPO算法優(yōu)化模型,解決SFT階段未覆蓋的復(fù)雜場景(如多列、公式、表格)。
- 訓(xùn)練數(shù)據(jù):olmOCR2-synthmix-1025的合成文檔(帶單元測試);
- 采樣策略:每個文檔生成28個不同的模型輸出(completions),確保覆蓋足夠多的候選結(jié)果;
獎勵函數(shù)設(shè)計(jì)

olmOCR 2 的 RLVR 訓(xùn)練的單元測試獎勵。給定一個生成的 HTML 頁面及其單元測試(左側(cè)),可以 根據(jù)這些單元測試輕松地對生成的 Markdown 頁面(右側(cè))進(jìn)行評分。每個測試貢獻(xiàn)一個二元獎勵,這些獎勵在頁面級 別匯總為通過率。例如,6 個測試中有 4 個通過,則頁面級別的獎勵為 0.67。
獎勵總分為三部分,取值均為0~1,確保模型同時(shí)優(yōu)化“內(nèi)容正確性”和“輸出格式合規(guī)性”:
獎勵類型 | 計(jì)算方式 | 作用 |
主獎勵:單元測試通過率 | (通過的單元測試數(shù)量)/(總單元測試數(shù)量) | 核心:優(yōu)化內(nèi)容正確性(公式、表格等) |
輔助獎勵1:EOS token | 若輸出以EOS(結(jié)束符)結(jié)尾則為1,否則為0 | 避免模型無限重復(fù)(解決“重復(fù)循環(huán)”) |
輔助獎勵2:元數(shù)據(jù)位置 | 若文檔元數(shù)據(jù)(語言、旋轉(zhuǎn)校正系數(shù))在輸出頂部則為1,否則按位置遞減 | 確保輸出結(jié)構(gòu)規(guī)范,便于下游處理 |
3. 階段3:模型融合(Souping)
為避免單一模型的隨機(jī)性,文章采用模型權(quán)重平均(Souping) 策略:訓(xùn)練6個不同隨機(jī)種子的RL模型(3個用token級重要性采樣,3個用序列級重要性采樣);對6個模型的權(quán)重進(jìn)行平均,得到最終的olmOCR-2-7B-1025模型;
實(shí)驗(yàn)性能

OCR 模型性能對比
參考文獻(xiàn): olmOCR 2 Unit Test Rewards for Document OCR,https://arxiv.org/pdf/2510.19817v1
repo:https://github.com/allenai/olmocr
本文轉(zhuǎn)載自???大模型自然語言處理??? 作者:老余

















