一、发生了什么:48 小时内,两家把"长文档显存"摊开讲
2026 年 10 月 27 日,百度发布并开源 Unlimited OCR Works 2(文心 Unlimited OCR 2)。GitHub 仓库 baidu/Unlimited-OCR 的 Release 记录写明「2026/10/27 We release Unlimited OCR 2」,权重同步上到 Hugging Face,代码仓截至当日抓取为 2.89 万 star、MIT 许可。
量子位 10 月 27 日的报道给了三组关键数字:百页级单序列测试中,峰值 KV 缓存从标准解码的 47GB 降到 1.77GB,降幅约 96%;16 路并发下端到端吞吐从 360 词元/秒提升到 1315 词元/秒,约 3.65 倍;单步解码速度分别是全注意力的 7.0 倍、上一代所用参考滑动窗口注意力(R-SWA)的 5.6 倍。质量侧,MPDocBench 综合 84.59,团队自建的百页级基准 MarathonDocBench(100 份文档,每份 103–300 页)得分 77.06。演示任务是 884 页的英文版《指环王》,42 分 56 秒读完,平均每页约 2.9 秒,过程中自动标记 466 处跨页合并。
另一条线索在 10 月 26 日:量子位报道,岩山科技旗下岩芯矩阵联合香港科技大学、CMU 开源 EdgeRock-4B——256K 上下文下注意力 KV 固定 72MiB,比源模型少 99.1%,单张 80GB 卡跑 512 路并发、12124 词元/秒(6.42 倍),Apache-2.0。
两件事回答的是同一个问题:文档或推理历史变长时,那笔显存账能不能不涨。一个从推理调度下手,一个从记忆结构下手。
二、技术拆解:一笔账,两条路线
账先算清楚:按量子位 10 月 26 日报道,Qwen3.5-4B 每词元新增 32 KiB KV 缓存,64K 序列即 2 GiB、256K 即 8 GiB;500 条序列光 KV 就要 1 TiB。
路线 A:不动模型结构,动注意力和解码调度
OCR 2 沿用上一代 DeepEncoder + 语言模型结构,改动集中在语言模型内部:把 R-SWA 升级成稀疏参考滑动窗口注意力(SR-SWA),用两层筛选取舍"这一步该看什么":
- 第一层 Page Gate:根据当前解析位置,把候选视觉信息收拢到相关页面范围,无关页面不参与计算。
- 第二层 Token Sieve:页内也只挑相关的视觉信息块——先用各块简要表示算相关性,再 TopK 取固定数量的块,然后读块内具体视觉信息,而不是只读摘要。
- Local Window:固定大小的局部滑动窗口随生成前移,负责顺着刚才的内容往下写。
块数固定、窗口固定,单步要参考的信息量就被框死——文档再长,这一步还是这么多活。另一半在存:无限解码机制把文档切成页面块依次解析,相邻两块重叠一页,进下一块时复用这页的视觉 KV 缓存,同时保留上段末尾的文本缓存,其余及时释放。算得少 + 存得封顶,才有 47GB→1.77GB。
路线 B:把"记忆"改成有界结构
EdgeRock-4B 走另一条路。它基于 Qwen3.5-4B 分阶段转换而来,不需要从头预训练:保留 24 个 Gated DeltaNet 层,把 8 个全注意力层换成 1024 窗口的滑动窗口注意力,外加独立的记忆模块——记忆岩锚(Rock Memory Anchors,RMA)。
每条序列的历史拆成三份:循环状态抓大意,1024 词元的局部窗口管眼前,锚点库从更早历史里留住关键。写入规则很工程化:每个词元生成候选记录并打分,每累积 256 条就与库里已有记录比较,只留得分最高的 1024 条,四个 KV 组各自独立。锚点内容不变、带来源位置,哪怕来源早已滑出局部窗口仍能读到,注意力 KV 因此固定 72MiB。
说服力在消融实验:256 段 16K–130K 词元上下文、共 1024 个问题,开着 RMA 答对 964 个(94.1%),关掉 8 个 RMA 模块只答对 4 个(0.4%)。推理能力也没牺牲——AIME 2024–2026 平均一次通过率 82.9%,对照组最强的有界状态模型只有 18.8%。
| 维度 | Unlimited OCR 2 | EdgeRock-4B |
|---|---|---|
| 改造对象 | 注意力选择 + 分块解码调度,模型结构不变 | 解码器结构 + 记忆机制,需权重转换 |
| KV 上界 | 被框在当前页面块规模内 | 固定 72MiB(256K 上下文) |
| 压缩幅度 | 47GB → 1.77GB,约 96% | 减少 99.1% |
| 吞吐 | 16 路并发 360 → 1315 词元/秒 | 单卡 512 路,12124 词元/秒 |
| 主打指标 | MarathonDocBench 77.06 | AIME 2024–26 82.9% |
| 许可 | MIT | Apache-2.0 |
三、工程上怎么用:先按内存算容量,再调旋钮
OCR 2 的 README 给了条可直接照抄的部署路径:Transformers 快速验证、SGLang 服务化,影响显存的环境变量都写了,踩坑信息在注释里。
# 长文档按页窗调度,复用上一个窗口的 KV 尾部
export SGLANG_UOCR_EANABLE_DOC_LIMIT=1
export SGLANG_UOCR_DOC_BASE_PAGE_WINDOW=10
export SGLANG_UOCR_MAX_PAGE_TOKENS=20000
# SAM 注意力偏置的分块上限,默认 512 会一次性分配约 462MiB 容易 OOM
export SGLANG_OPT_UOCR_SAM_REL_POS_BIAS_MB=64
export SGLANG_UOCR_SHM_WRAP_MODEL_DATA=1
export SGLANG_VLM_CACHE_SIZE_MB=0
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
python -m sglang.launch_server \
--model-path baidu/Unlimited-OCR-2 \
--chat-template unlimited-ocr \
--mem-fraction-static 0.7 \
--max-running-requests 64 \
--max-prefill-tokens 2048 \
--cuda-graph-backend-decode full \
--cuda-graph-max-bs-decode 64 \
--cuda-graph-max-bs-prefill 16384 \
--cuda-graph-bs-prefill 1024 2048
README 点明的几个旋钮值得记下来:
--mem-fraction-static给 0.75 在 32 路以上并发时余量不够,0.7 更稳。--max-prefill-tokens驱动一个约[tokens, context/32]的临时张量,显存随它线性涨;4096 降到 2048,峰值直接减半。- 最大的
--cuda-graph-bs-prefill桶必须等于--max-prefill-tokens:偏小会回落 eager,偏大则白占捕获显存。 - 页窗越小峰值越低,但跨窗边界的续接块会丢上下文,跨页合并质量下滑——省内存和保质量直接冲突。
容量可以自己算一遍(按公开参数推算,不是我们的跑分):80GB 卡按 0.7 预留约 56GB,减去 4B 模型 bf16 权重约 8GB,剩约 48GB 给 KV。EdgeRock 每条序列全部历史状态 97.76MiB,48GB 约合 500 路,与技术报告的 512 路上限吻合;换成源模型每条 2GiB,只剩 24 路左右。同样一张卡,并发差一个数量级。
我们的内容流水线每天出十来条稿子,卡住的不是生成,而是把几十页 PDF 资料转成可检索文本:以前按页拆、按批提交、再拼接,返工基本都出在跨页断句和跨页表格上。OCR 2 把切块和衔接收进模型内部,外部只提交整份文档,这层手工拼接就能省掉;对做智能体和内容工程的人,这类"少一层胶水"的改进比榜单涨两分更有体感。这个方向在智能体世界(agentshijie.com)的工具选型里一直被当作硬指标。
四、读者可核对清单
- 仓库与许可:
github.com/baidu/Unlimited-OCR(MIT,Release 记录 2026/10/27);github.com/rockmatrix-ai/EdgeRock(Apache-2.0,仓库创建于 2026-10-07)。权重分别在 Hugging Face 的baidu/Unlimited-OCR-2与rockmatrix-ai/EdgeRock。 - 技术报告:EdgeRock 中文报告在 rockmatrix.ai/documents/edgerock-report-zh.pdf,第 1 页摘要即给出 72MiB、99.1%、6.42 倍、82.9% 四个数。
- 最小验证代码:
pip install torch==2.13.0 transformers==4.52.1后AutoModel.from_pretrained("baidu/Unlimited-OCR-2", trust_remote_code=True),多页调用model.infer_multi(..., image_files=pages)。 - 数字出处:47GB→1.77GB、1315 词元/秒、7.0×/5.6×、84.59、77.06、884 页、466 处来自量子位 2026-10-27 报道;12124 词元/秒、512 路、82.9%、18.8%、94.1%/0.4% 来自量子位 2026-10-26 报道与上述 PDF。
五、一句判断
我的判断是:长上下文竞争点已从"能不能装下"转到"每一步开销是不是常数"。对做智能体的人,上下文长度不再是架构约束,容量可按请求数规划、推理前就把内存算清——确定性比峰值数字更值钱。
#AI智能体 #大模型 #开源
转载自 CSDN-专业IT技术社区



