AB
AiBoss站
project

Unlimited-OCR-2 - 面向超长文档的无界视野 OCR 解析模型

Unlimited-OCR-2 是百度发布在 Hugging Face 上的图像文本转文本模型,据项目自述通过稀疏参考滑动窗口注意力(SR-SWA)把超长文档解析的注意力开销压到固定规模,从而在有限上下文窗口内处理上百页文档。模型采用 MIT 许可,支持 Transformers 与 SGLang 两种推理方式。

Unlimited-OCR-2 是一个图像文本转文本(image-text-to-text)模型,由百度(baidu)发布在 Hugging Face 上,仓库任务类型标注为 image-text-to-text,框架为 transformers。按项目自述,它要解决的是文档解析中的「视野」问题:传统 OCR 模型在文档页数增长时,文本与视觉之间的注意力交互会随之膨胀,解码延迟和显存占用不断上升,最终在超长文档上不可用。Unlimited-OCR-2 的目标是把这一开销从随长度增长变为近似恒定,从而在有限的上下文窗口内解析任意长度的文档。它适合需要批量处理多页 PDF、扫描件、长报告与档案材料的工程团队,也适合研究长文档多模态解析的研究者。

维护者与状态

该模型由 baidu 维护,托管于 Hugging Face。仓库创建时间为 2026-10-26,最后更新时间为 2026-10-28。截至 2026-10-29 的数据读取时间,近 30 天下载量为 8357,点赞数为 329。事实表中未列出正式 release 版本号,因此这里不对版本号作任何推断;模型权重与配置以仓库当前内容为准。

据项目说明,2026-10-27 发布了 Unlimited OCR 2,并同时发布了名为 MarathonDocBench 的超长文档解析基准;2026-10-28 的更新记录提到 ms-swift 社区支持了该模型的训练。这些时间点来自项目自述的更新日志,与事实表中的仓库创建、更新时间相互独立。

主要能力

以下能力均据项目自述(README)整理,未经本站独立验证:

  • 稀疏参考滑动窗口注意力(SR-SWA):项目称该机制把文本—视觉注意力交互从超长序列压缩到一组固定大小的工作参考(例如 512 个 token),从而约束计算复杂度,使单步解码延迟与显存占用几乎不随文档长度变化。
  • 从长视野到无界视野解析:在 SR-SWA 支撑下,模型声称可在有限上下文窗口内实现不受页数限制的文档解析,缓解随文档增长而出现的二次注意力开销与显存瓶颈。
  • 超长文档解析表现:项目自述其在数十页级基准(如 MPDocBench)与上百页级极端基准(如 MarathonDocBench)上均取得 state-of-the-art 表现。此处为项目方陈述,本站未复现其评测。
  • 多页联合推理:提供 infer_multi 接口,一次请求解析一份文档的全部页面,按页序传入图像,模型可利用跨页上下文;输出中每张输入页对应一个标记,顺序与输入一致。
  • 单页推理:提供 infer 接口,默认以动态切图(gundam 模式)编码单页图像。
  • 服务化部署:除原生 Transformers 外,项目称支持 SGLang 推理,并提供页面窗口调度、分块注意力偏置上限、共享内存传递大张量等面向长文档的服务端参数。

使用入口

模型仓库地址:baidu/Unlimited-OCR-2。

据项目说明,推理支持两条路径:Transformers(原生,适合快速测试)与 SGLang(推荐用于服务化)。Transformers 路径的依赖安装示例如下(项目称其在 Python 3.10、torch 2.13.0、transformers 4.52.1 等环境下、NVIDIA A800-80GB 上测试过):

pip install torch==2.13.0 torchvision pillow transformers==4.52.1 huggingface-hub==0.36.0 \
    tokenizers==0.21.4 addict==2.4.0 einops==0.8.2 easydict==1.13

加载模型时需开启 trust_remote_code=True,并以 bfloat16 精度载入后切换到 GPU。多页推理按页序传入图像列表,调用 infer_multi;单页推理调用 infer。项目说明提示词由程序自动构造为若干占位符加「Multi page parsing.」,每页编码为一个全局视图(base 模式)。

SGLang 路径需要安装项目提供的定制 wheel 包,并配合 PyMuPDF 做 PDF 转图;启动服务时通过环境变量控制页面窗口大小、单页输出上限、注意力偏置分块上限与共享内存传递等行为,随后以 OpenAI 兼容接口发送请求。项目在文档中给出了各内存相关参数的取舍说明,例如静态显存占比 0.7 在 32 路以上并发时更稳定,--max-prefill-tokens 会线性影响临时张量峰值,页面窗口越小峰值显存越低但跨页合并效果会变差。

许可与限制

许可证为 mit,按事实表原样记录。

关于适用边界与已知限制,据项目说明可归纳为:

  • 多页推理依赖跨页上下文,若把页面窗口切得过小,跨越窗口边界的文本块会丢失上下文,影响合并质量;项目提供了关闭文档限制、整篇一次窗口解析的开关作为取舍。
  • SGLang 部署对显存参数敏感:静态显存占比过高在并发请求较多时余量不足;预填充 token 上限与 CUDA graph 批次桶需要匹配,否则会回退到 eager 执行或浪费捕获显存。
  • 单页输出存在上限(项目示例中为每页 20000 token),超长页面可能需要调整该上限。
  • 项目自述的基准成绩与「无界视野」能力均为其自身评测结论,实际效果取决于文档版式、图像质量与部署参数。

本文所引用的能力描述、安装命令与参数说明均来自项目 README,属于维护者自述,不构成中立评测;使用前建议结合自身文档样本做小规模验证。