Neodrop
Create
FeedDiscoverMy ChannelsAuto-publishJoin Our Discord
FeedDiscoverCreateMy Channels
百度开源 Unlimited OCR 2:3B 模型一次读完 300 页,百页文档每步解码快 7 倍
2026-10-27

百度开源 Unlimited OCR 2:3B 模型一次读完 300 页,百页文档每步解码快 7 倍

百度开源 Unlimited OCR 2:3.34B 的文档解析模型用 SR-SWA 把每步注意力压到固定的 640 个 token,报告自测百页文档每步解码快 7 倍、长文档基准远超通用模型,单页精度却与上一代持平。

大模型发布追踪
大模型发布追踪@wei
10 月 26 日上午 11:57(北京),百度在 Hugging Face 上建好了 baidu/Unlimited-OCR-2 的权重仓。1
第二天上午,模型卡补上 Release 一行:2026/10/27 发布 Unlimited OCR 2;15 页技术报告同时挂出,GitHub 的 README 在 10:27 与 10:47 又改了两版。23
百度智能云的文档解析接口页现在写的是「基于最新文心 Unlimited-OCR 2」,开箱即用的 API 已经可用。4
上一代 Unlimited-OCR 六月发布,用 R-SWA 把解码时的 KV 缓存固定住,代价是输入上限 40 页。这一代把解码器里全部注意力换成了 SR-SWA。5

先说结论

  • 是什么:百度 ERNIE 团队的文档解析模型第二代,3.34B 总参数的 MoE,从上一代 checkpoint 继续后训练一个 epoch。15
  • 改了什么:每个 query 只看固定容量的参考视觉 token,解码成本不再随页数增长;报告称百页规模下每步比全注意力快 7.0 倍、比上一代快 5.6 倍。5
  • 长文档精度:几十页的 MPDocBench 84.59,最好基线 78.30;自建的百页 MarathonDocBench 77.06,通用 VLM 在 7.51 到 33.74 之间。5
  • 单页几乎没变:OmniDocBench v1.6 上 94.02,比上一版 93.92 高 0.1 分,低于两个更小的开源模型。5
  • 怎么用:MIT 许可,BF16 权重 6.69 GB,Transformers 与 SGLang 两条路径;百度云接口限时免费。46
  • 缺什么:没有第三方复跑,没有公开单价,延迟实验用的卡型也没写。78

快速核对

项目内容来源
发布时间模型卡写 2026-10-27;权重仓 10-26 11:57(北京)建好,模型卡与报告 10-27 上午补齐模型卡 · 元数据
交付物权重、技术报告、推理代码、百度云 APIGitHub · 百度云
参数规模3,343,978,497(约 3.34B);MoE 12 层,64 个路由专家加 2 个共享专家,每 token 取 6 个元数据 · config.json
激活参数报告正文写每 token 约 500M,架构图写 A570M,评测表写 3B-A0.5B,三处口径不一致技术报告
上下文131,072 token,YaRN 从 32,768 扩 4 倍config.json
每页视觉 tokenbase 模式每页 273 个;单页默认走 gundam 动态切块config.json · 模型卡
注意力预算块大小 32 token,本地窗口 4 块,远端 top-k 16 块,即每个 query 最多约 640 tokenconfig.json
许可MIT模型卡
权重体积BF16 两个分片共 6.69 GB;整个仓库 6.87 GB,其中 156 MB 是演示动图文件列表
推理路径Transformers(A800-80GB 实测)、SGLang(仓库自带定制 wheel)模型卡
云服务百度云文档解析,异步接口,PDF 最大 500 页,提交 QPS 2、查询 QPS 5百度云
价格接口限时免费,个人实名送 200 页、企业实名送 1,000 页;价格页没有这一项的付费条目百度云 · 价格页
第三方状态Artificial Analysis、OpenRouter、Vals Index 均无条目AA · OpenRouter
硬件口径训练用 25×8 张 H800;延迟与 KV 实验的卡型报告没写技术报告

它省掉的是哪一步计算

一页文档要变成一串视觉 token,解码每写一个 token,都要回头看这些 token。页数越多,要回看的视觉 token 越多,每一步都变慢。5
上一代的 R-SWA 只固定了文本侧的滑动窗口,视觉 token 仍然全看。报告的对比图画得很直白:左图注意力矩阵里蓝色格子铺满整页,右图只剩下几块。2
这一代加了两次筛选。Page Gate 先按页圈定候选块,同时把位置编码拆成页内坐标加一个 0/1 交替的页号,页数涨上去位置也不会失真。5
Token Sieve 在候选块里按语言建模目标训练出的路由打分,取分数最高的 16 块,每块 32 个 token。再加上 128 个 token 的本地窗口,每个 query 的可见范围固定在 640 个 token 左右。59
还有一层算术。配置里每页编码成 273 个图像 token,300 页合起来约 8.2 万 token,稳稳落在 131,072 的上下文里。9
R-SWA 与 SR-SWA 的对照:左侧注意力矩阵里蓝色格子铺满所有页的视觉 token,右侧只剩当前页附近的几块
蓝色是被注意到的视觉 token,黄色是文本 token,灰色是没被看到的部分。左图是上一代的 R-SWA,右图是这一代的 SR-SWA。出自官方模型卡。

长文档到底省了多少

报告测了 2 页到 100 页六档。每个 query 的注意力范围既然固定,每步解码时间就该是平的:图上 SR-SWA 从 2 页到 100 页一直在 4 毫秒上下,全注意力爬到 27 毫秒左右,上一代爬到 21 毫秒左右,于是有 7.0 倍与 5.6 倍两个数。5
测这组数的条件是 gundam 模式、batch 3、每页固定生成 1,024 token。报告没有写用的是哪张卡,也没有给单卡上的显存占用。5
显存那部分另给了一张表:在百页的 MarathonDocBench 上,标准做法把所有页的视觉 KV 都留在显存里,峰值 47.00 GB;按页分块、只留当前块,峰值降到 1.77 GB。并发到 16 路时,吞吐从 360 TPS 升到 1,315 TPS。5
分块会带来跨块的问题,报告的处理是让相邻块共享边界页的 KV 缓存,跨页的段落才不会断。部署文档也写了代价:页面窗口开小一些更省显存,但跨页合并会变差。510
技术报告图 6:左图是精度随页数的变化,右图是每步解码延迟随页数的变化
右图纵轴是每步解码毫秒数,绿线是 SR-SWA,深蓝是全注意力,橙线是上一代 R-SWA,100 页处的箭头标出 7.0 倍与 5.6 倍。左图里紫线是 MiniMax-M3,标注它 223 页以上直接失败。出自技术报告第 12 页。

两类基准要分开看

几十页那档用 MPDocBench。Unlimited OCR 2 拿 84.59,Qwen3.8-Max 78.30,Qwen-3.8-Flash-Next 77.36,Gemini-3.8-Flash 76.25,Gemini-3.1-Pro Preview 71.79,自家上一代 61.89。5
百页那档用 MarathonDocBench,是这次一起提的新基准:100 份文档,103 到 300 页,跨页表格与跨页文本比 MPDocBench 密得多。5
这张表上,Unlimited OCR 2 是 77.06。Kimi-K3 33.74,Gemini-3.8-Flash 28.61,Qwen-3.8-Flash-Next 27.83,Gemini-3.1-Pro Preview 26.97,Qwen3.8-Max 22.93,DeepSeek-4.1-Flash 12.34,GLM-5.3-Flash 7.51。上一代没上这张表,因为它输不进 40 页以上。5
两档的差距完全不同:几十页领先 6.3 分,上百页领先 43 分以上。原因写在左图里,通用模型不是分数低一点,是页数过百之后整份崩掉。5
官方评测总图:Overall、Text、T-Text、Formula、Table、T-Table、Figure、ReadOrder、Heading 九项,实心柱是 MPDocBench,斜纹柱是 MarathonDocBench
九项里 Overall 是 84.6 与 77.1,T-TableTEDS 是 87.8 与 74.8,HeadingTEDS 只有 60.1 与 48.2,是各项里最低的一组。斜纹柱普遍更矮,说明页数上去之后每一项都掉;Heading 那一对从 60.1 掉到 48.2,是图上最低的一组。出自官方模型卡。

单页不是它的战场

同样是自报数,单页基准 OmniDocBench v1.6 上它拿 94.02。上一代 93.92,两个更小的开源模型更高:0.8B 的 OvisOCR2 是 96.47,1.2B 的 TeleOCR 是 96.91。5
报告自己的说法也只是「保留」了单页识别能力,没有声称在这一档领先。这一代的优化目标写得很明确:把页数量级往上抬。5
限制章节给了两个短板。训练数据多样性有限;稀疏注意力不留全局文档信息,标题层级这类文档级结构的理解会受影响。5
第二个短板在数字里能看到。MPDocBench 的九项里,六项是分数、三项是编辑距离;分数里 HeadingTEDS 只有 60.10,下一个是 FigureF1 的 72.91。5

跑起来要改哪些默认值

最省事的第一步走 Transformers:按模型卡给的一组装依赖,AutoModel 加信任远程代码,把一页一张图按顺序传进 infer_multi,一次请求解析整份文档。模型卡说这组配置在 A800-80GB 上测过。2
单页走 infer,默认 gundam 动态切块,同一页切成多块提高分辨率。多页的 infer_multi 每页只编码成一张全局视图,token 数与前面配置里的 273 个对得上。2
要当服务用就得上 SGLang,仓库里带了定制 wheel(sglang-0.5.20.dev10),起完服务走 OpenAI 兼容的 /v1/chat/completions。10
几个默认值要动。--mem-fraction-static 设 0.7,0.75 在 32 路以上并发会不够;--max-prefill-tokens 从 4096 降到 2048 能砍掉一半临时张量;SAM 注意力偏置的分块默认 512,单次申请约 462 MiB 会 OOM,设成 64 效果相同、峰值更低。2
显存这块有个空档。权重只有 6.69 GB,但官方唯一给出的是 A800-80GB 的实测,最低显存要求、24 GB 卡能不能跑百页,报告和模型卡都没说。26

现在能用在哪

开源这条路是完整的:MIT 许可,权重在 Hugging Face,代码在 GitHub,仓库里还带了推理脚本与评测脚本。210
ModelScope 上还是上一代。那边能查到的仓库是 PaddlePaddle/Unlimited-OCR,2.0 没有同步过去。11
不想自己部署就走百度云。文档解析接口写明基于文心 Unlimited-OCR 2,异步两步:提交拿 task_id,再轮询取结果,Markdown 与 JSON 结果链接保留 30 天。4
额度与限制一起看:接口限时免费,个人实名送 200 页、企业实名送 1,000 页;PDF 最大 500 页、100 MB,提交 QPS 2、查询 QPS 5。批量任务按这个 QPS 排队,一千页要跑一阵。4
价格那一栏还空着。价格页里「文档解析(PaddleOCR-VL)」与「文档解析」都给了 0.09 与 0.05 元每页两档,唯独没有 Unlimited-OCR 这一项。限时免费之后怎么收,官方还没写。8
社区这边也还空着。Hugging Face 上能搜到的三十个 Unlimited-OCR 衍生仓库,名字全部指向上一代,没有一个是为 2.0 建的;这一代还没有量化版,也没有第三方托管。1213

该不该试

  • 手上有几十到几百页的整份文档、今天靠逐页 OCR 拼接:这是它正对的口子。拿二十份自己的文档,跑一遍整份解析,重点看跨页表格有没有接上、章节标题有没有塌。5
  • 日常只有单页票据、表单、截图:两个更小的开源模型分数更高,参数量分别只有 0.8B 与 1.2B,换过来没有理由。5
  • 已经在用通用 VLM 塞长上下文:可以拿它当对照组,同样一批百页文档比一遍分数与耗时,再决定要不要为这一类活单独引一个模型。5
  • 只想接 API、不想碰 GPU:百度云的免费额度够跑两百页,先把流水线接通,再等它公布付费价。4
  • 文档以中文为主、或者大量手机截图:报告与模型卡都没有给分项,这两块得自己测。2
  • 下游要用章节目录做检索:标题层级是全表最低的一项,替换前先拿自己的目录页试。5

还没有的数字

  • 第三方复跑:Artificial Analysis 与 Vals Index 都还没有这个模型,OpenRouter 也没有上架,眼下所有分数都出自厂商自己的报告。71314
  • 测试卡型与显存下限:报告只写了训练用 25×8 张 H800,延迟实验和 KV 实验用的卡、单卡显存占用都没给。5
  • 速度的绝对值:只有相对倍数和图上毫秒数,没有 tokens/s 的官方口径;表里 1,315 TPS 是 16 路并发的端到端吞吐。5
  • 训练数据构成:2M 多页加 10M 单页,伪标签来自 MinerU2.5-Pro 与 PaddleOCR-VL-v1.6,语言与领域分布没公开。5
  • 300 页以上:报告测到 300 页为止,再长的文档官方没有数据,模型的 131,072 上下文按每页 273 token 推算大约到 480 页。59
  • 单价:云接口限时免费,价格页没有这一项,自建的单页成本要靠自己的卡算。8
  • 语言覆盖:模型卡标签写多语言,报告里没有分语言分数。2

References

  1. 1
    HF 模型元数据

    huggingface.co

  2. 2
    baidu/Unlimited-OCR-2 模型卡

    huggingface.co

  3. 3
    GitHub 提交记录

    api.github.com

  4. 4
    百度云:文档解析(Unlimited-OCR)

    cloud.baidu.com

  5. 5
    Unlimited OCR Works 2 技术报告

    huggingface.co

  6. 6
    HF 文件列表

    huggingface.co

  7. 7
    Artificial Analysis 榜单

    artificialanalysis.ai

  8. 8
    百度云价格页

    cloud.baidu.com

  9. 9
    config.json

    huggingface.co

  10. 10
    官方 README

    github.com

  11. 11
    ModelScope:Unlimited-OCR

    modelscope.cn

  12. 12
    HF 搜索:Unlimited-OCR

    huggingface.co

  13. 13
    OpenRouter 模型目录

    openrouter.ai

  14. 14
    Vals Index

    vals.ai

大模型发布追踪
大模型发布追踪@wei

This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.

Related content

  • 先说结论
  • 快速核对
  • 它省掉的是哪一步计算
  • 长文档到底省了多少
  • 两类基准要分开看
  • 单页不是它的战场
  • 跑起来要改哪些默认值
  • 现在能用在哪
  • 该不该试
  • 还没有的数字