10 月 27 日,百度在 HuggingFace 上线了文档解析模型 Unlimited-OCR-2,同一天还发布了配套的百页级评测基准 MarathonDocBench。这个系列今年 6 月出过第一代,官方当时的定位是站在 DeepSeek-OCR 肩膀上,把「一次性解析长文档」推进一步;四个月后的 v2,目标直接改成了「无限长」。
SR-SWA:把注意力压进 512 个「工作引用」
第一代 Unlimited-OCR 用 R-SWA(参考滑动窗口注意力)把 KV 缓存压成常数级,先解决了「页数越多、显存越爆」的问题。v2 的核心升级叫 SR-SWA(稀疏参考滑动窗口注意力):解析超长文档时不再对整个历史序列做注意力,而是把文本-视觉交互压缩到一个固定大小的工作引用集合——比如 512 个 token——在此基础上解码。推理接口提供了多页一体解析:一份文档的所有页面放进同一个请求完成,而不是逐页调用再拼接。
按官方模型卡的说法,这让计算复杂度有了上界:文档 50 页还是 500 页,每步解码的延迟和显存占用都近乎恒定,二次方注意力扩展和内存瓶颈被消掉。配合 131K 上下文窗口,v2 在有限上下文里做「无上限」的文档解析——一份上百页的文档可以整个喂进模型,而不是先切块再拼接。
MIT 许可,笔记本就能跑
工程规格对落地相当友好:MIT 许可、商用没有附加限制,BF16 权重 6.7GB,架构为 UnlimitedOCRForCausalLM,定位多语言文档识别,瞄准发票、表单、扫描档案这类混合语言的企业场景。按 theopenweights 的测算,BF16 原精度 12GB 显存的 RTX 3060/4070 可跑,16GB 内存的 Mac 也行;8-bit 只要 8GB 显存,4-bit 量化后约 3.5GB,8GB 内存的普通笔记本可以本地部署。推理走 Transformers 原生(快速验证)或 SGLang(官方推荐 serving);更新日志显示 6 月底就接入了 vLLM,7 月支持 ms-swift 训练,权重同步上架 ModelScope 和百度智能云。官方测试环境是单卡 A800-80GB(torch 2.13、transformers 4.52),社区作者 AK 同步做了在线 demo。
SOTA 是自报的,基准是自己发的
模型卡称 v2 在 MPDocBench(几十页级)和 MarathonDocBench(百页级)上都达到 SOTA。但要注意:MarathonDocBench 这次同步首发,分数目前只有官方一份,属于典型的「自报 benchmark」——第三方复现出来之前,这行 SOTA 得打上引号。
技术方向本身仍有分量:长文档解析是 RAG、票据处理、档案数字化这些 pipeline 的输入端,「切块再拼」的传统做法天然损失跨页上下文,端到端方案正在补这块短板。赛道也不止百度一家在卷:Cohere 的 Parse 已经把文档解析做成 1.5 美元每千页的 API 生意,开源免费与闭源计费在同一个输入口上正面相遇。需求侧可以佐证:theopenweights 趋势榜上 Unlimited-OCR 系列(含 v1)以累计 310 万下载、周增 110 万排在第一。MIT 加边缘可跑,等于把「整本文档进模型」从云端大卡下放到消费级硬件。对做文档智能的团队,下一步建议很直接:在自家语料上跑一遍 MarathonDocBench,再决定要不要换掉现有的切块流水线。这一步比空谈榜单名次更实际。