Datalab 发布了 OmniParseBench,一个面向文档解析器的开放 OCR 基准。它使用来自 2,343 份文档的 2,937 页上的 16,288 项是/否测试对解析器进行评分。这些页面涵盖 92 种语言。 数据集 和 代码 均为公开。它帮助工程师回答一个比排行榜更尖锐的问题:哪个解析器能处理像我这样的文档?Datalab 自身销售解析器,其最高配置 Datalab accurate 在发布排行榜上排名第二,落后于 Gemini 3.8 Flash。
它可部署吗? 可以。OmniParseBench 是一个评估工具,而不是模型。它通过 uv pip install omni-parse-bench 安装,需要 Python 3.11+,并可离线评分,无需 API 密钥。
TL;DR
- 规模: 16,288 项测试,2,937 页,2,343 份文档,22 个套件,92 种语言。
- 运行环境: 任何装有 Python 3.11+ 的机器。评分无需网络。厂商运行需要各厂商的 API 密钥。
- 性能: 排名前 3 的已报告系统位于 1.3 个头条分之内。
- 最佳: Gemini 3.8 Flash 以 92.9 领先;Datalab accurate 以 92.7 紧随其后。*
- 要点: 每个分数都是通过/失败测试的比例,可按标签切分。
* 曾用于构建部分测试
什么是 OmniParseBench?
OmniParseBench 是 Datalab 推出的文档解析基准,其中每项测试都是关于 1 页的是/否问题。解析器的得分是其通过的测试比例。Datalab 构建它的目标是清晰、可审计且可探索。
为什么要构建另一个 OCR 基准?
Datalab 指出了现有基准的两个问题。 olmOCR-bench 证明了通过/失败的单元测试是有效的。Datalab 现在称其已饱和。在其看来,顶级系统之间的差距源于输出约定和过拟合,而非阅读能力。此外,每个 olmOCR-bench 测试都被归入由其页面来源决定的 1 个类别。一个手写表格会被平均计入其页面所落的那个类别。
ParseBench from LlamaIndex 将解析拆分为 5 项能力,每项都有自己的指标。Datalab 认为这些分数没有共同单位,因此无法干净地比较或合并。
OmniParseBench 的评分机制是怎样的?
最终分数是 3 个类别分数的平均值:文本、表格和版面。五类测试为这些类别提供数据:
- present:某个文本、数字或公式出现(文本)
- order:文本 A 出现在文本 B 之前(文本)
- repeat:某一行恰好出现 N 次(文本)
- table_cell:某个单元格位于给定标题之下、并与给定相邻单元格相邻(表格)
- layout_kind:包含某行的块是标题、文本或表格(版面)
数字必须逐位匹配,不过 1,240 可匹配 1240。公式按 KaTeX 渲染的结果比较,因此 \frac{a}{b} 等于 \dfrac{a}{b}。每项判定为 pass、fail、unsupported 或 error。后 2 种不计入任何分数。没有任何模型评判输出;该 评分器是开放代码.
标签和推导有什么作用?
一项测试检查一个或多个 arg,每个 arg 是页面上某一位置的内容。每个 arg 携带 5 个轴上的标签:structure、rendering、role、script 和 language。文字系统使用 ISO 15924 代码;语言使用 ISO 639-3 代码。标签从不决定判定结果或主分数。它们只用于选择测试,因此任何切片都能得到自己的分数。
表格标签涵盖来自 875 份文档的 1,000 页上的 6,767 项测试。英语涵盖 10,089 项测试。非英语语言涵盖来自 321 份文档的 529 页上的 1,931 项测试。
每项测试还记录其推导(derivation),即其答案是如何确定的。共有 10 种推导。它们包括出版商 JATS XML、PDF 文本层、人工编写的页面、olmOCR-bench 测试、模型评审小组和人工审核。
OmniParseBench 的发布结果是什么?
| 解析器 | 主分数 | 文本 | 表格 | 版面 |
| Gemini 3.8 Flash* | 92.9 | 91.3 | 95.2 | 92.2 |
| Datalab accurate | 92.7 | 90.8 | 91.8 | 95.6 |
| Datalab balanced | 91.6 | 90.0 | 89.2 | 95.5 |
| Reducto | 90.8 | 85.4 | 91.2 | 95.8 |
| LlamaParse | 90.4 | 88.2 | 92.6 | 90.4 |
| Mistral OCR | 89.5 | 82.8 | 91.9 | 93.8 |
| Claude Sonnet 5.5* | 88.7 | 93.1 | 95.4 | 77.5 |
| GPT-5.6 Sol | 87.8 | 85.4 | 91.6 | 86.5 |
| Extend | 83.3 | 64.1 | 92.5 | 93.4 |
| Azure | 83.0 | 74.6 | 81.7 | 92.8 |
| Tesseract | 无 | 17.6 | 0.0 | 不支持 |
*在创建和验证至少部分测试时被使用,详见 Datalab.
Claude Sonnet 5.5 拥有最高的文本(93.1)和表格(95.4)分数。其版面分数为 77.5,使其综合分达到 88.7。Reducto 在版面上以 95.8 领先。Datalab 还将每个综合分与中位延迟及每 1,000 页的价格进行了绘图对比。延迟是基于 200 个抽样页面、每次并发发送 8 个页面测得的。
Datalab 并未在自己的基准测试中夺冠。它标记了帮助构建测试的两个模型,并告知读者应考虑到它本身销售解析器这一事实。它承诺为未来的版本报告 OmniParseBench 分数。它的建议是:最好的基准测试是你自己的文档。
如何运行 OmniParseBench?
复制代码uv pip install omni-parse-bench # score(): no network, no API keys
uv pip install 'omni-parse-bench[harness]' # + vendor adapters, to predict
uv pip install 'omni-parse-bench[benchmark]' # + dataset access, to run the benchmark
opb benchmark --out runs/ --limit 5 --providers datalab openai/gpt-5.6-sol
供应商需要诸如 DATALAB_API_KEY 或 OPENROUTER_API_KEY 之类的密钥。CLI 会显示其计划,并在调用任何供应商之前进行询问。运行是可恢复的。 query guide 展示了如何按标签、套件或测试类型比较各次运行。
OmniParseBench 与 olmOCR-bench 与 ParseBench 与 OmniDocBench
| 特性 | OmniParseBench | olmOCR-bench | ParseBench | OmniDocBench |
| 维护者 | Datalab | Ai2 | LlamaIndex | OpenDataLab |
| Scale | 16,288 项测试、2,937 个页面、2,343 份文档 | 7,010 项测试、1,403 个 PDF | 169,011 条规则、2,078 个页面、1,211 份文档 | 1,651 页 PDF |
| 语言 | 92 | 英语 | 未披露 | 5 种语言类型 |
| 评分单位 | 通过/不通过测试;总评分 = 3 个家族的平均值 | 通过/不通过单元测试 | 5 个维度,每个维度有各自的指标 | 总体评分基于文本编辑距离、表格 TEDS、公式 CDM |
| 模型评判 | 无 | 不用于评分 | 默认无(图表可选启用) | 不用于评分 |
| 内容标签 | 每个参数:结构、渲染、角色、脚本、语言 | 7 个来源类别 | 5 个能力维度 | 页面、文本和表格属性 |
| 每项测试的来源信息 | 是,每项测试均有推导记录 | 每个类别的抽取方法 | 经人工验证的页面 | 非逐项测试 |
| 延迟和成本 | 中位数 秒/页,每 1,000 页 美元 | 不在数据集卡片中 | 美分每页(排行榜) | 未披露 |
| 许可证 | 代码采用 Apache 2.0;测试采用 CC BY 4.0(有例外);页面数据按来源各自授权 | 数据集采用 ODC-BY 1.0 | Apache 2.0 | 代码采用 Apache 2.0;数据仅限研究用途 |
核心要点
- 覆盖 92 种语言、2,937 页上的 16,288 项是非测试。
- 标题分数 = 文本、表格和布局通过率的平均值。
- 标签用于切分结果;它们从不改变判定结果。
- Datalab 构建了它并排名第二:Gemini 3.8 Flash 92.9*,Datalab accurate 92.7。
- Apache 2.0 代码;评分完全离线运行,无需 API 密钥。
* 曾用于构建部分测试
感谢 Datalab 团队为本文提供的资源。Datalab 支持并赞助了此内容。
本文 Datalab 发布 OmniParseBench:一个包含 16,288 项通过/失败测试的开放 OCR 基准,用于审计 OCR 解析器 首发于 MarkTechPost.