百度长文档 OCR 解析模型的第二代:把多页文档(甚至整本书)的页面图片按顺序一次送进去,逐页输出解析结果,并利用跨页上下文;第一代以推进 DeepSeek-OCR 为目标,第二代新增 SR-SWA 注意力,让文档长度不再受上下文窗口限制。
上升分 234 · 点赞 245 · 下载量 513
理由
- SR-SWA(稀疏参考滑动窗口注意力)把超长序列里的图文注意力压缩到固定数量的工作参考(例如 512 个 token),官方称每步解码延迟和显存几乎不随文档长度增长。
- 官方称在几十页级(MPDocBench)和上百页级(MarathonDocBench)基准上都是最好成绩,并同时公开了 MarathonDocBench 数据集;具体分数只在排行榜图片里,正文没有列出数字。
- MIT 许可;10 月 27 日发布,此前各期没有收录;模型卡附一段整本《哈利·波特》一次请求解析的回放动图,ModelScope 和百度智能云也已上线。上升分 234 只代表关注度。
用法
- Transformers 快速测试(官方环境:Python 3.10、torch 2.13.0、transformers 4.52.1,A800-80GB):AutoModel.from_pretrained("baidu/Unlimited-OCR-2", trust_remote_code=True, use_safetensors=True, torch_dtype=torch.bfloat16);多页按页序传图片列表给 model.infer_multi(tokenizer, image_files=...),单页用 model.infer(...),默认切块的 gundam 模式。
- 服务化官方推荐 SGLang:装官方定制的 SGLang wheel(0.5.20.dev10)和 PyMuPDF,按卡里设置环境变量(默认每 10 页一个窗口、每页输出上限 20000 token),用 --chat-template unlimited-ocr 启动后走 OpenAI 兼容接口;PDF 先按 300 dpi 转成图片。
- 请求里 temperature 设 0,并按示例挂上防重复的 n-gram logit processor(ngram_size 35,多页 window_size 1024、单页 128)。
风险
- 需要 trust_remote_code,SGLang 要装定制 wheel;模型卡没写参数量和最低显存,Transformers 路径只在 A800-80GB 上测过。
- 页窗口越小显存越低,但官方说跨窗口边界的内容会丢上下文;SAM 注意力偏置的默认设置可能显存溢出,要按卡里改成 64。
- “最好成绩”是官方自测,排行榜只有图片,没有可核对的数字。