# 百度发布Unlimited OCR：3B参数MoE模型，KV缓存恒定实现长文档高效解析

- 来源：MarkTechPost（RSS）
- 作者：Asif Razzaq
- 发布时间：2026-06-25 13:39
- AIHOT 分数：73
- AIHOT 标记：精选
- AIHOT 链接：https://aihot.virxact.com/items/cmqt3kfx30024sl0ev7aty5q7
- 原文链接：https://www.marktechpost.com/2026/06/24/baidu-releases-unlimited-ocr-a-3b-model-that-keeps-the-kv-cache-flat-for-long-document-parsing

## 精选理由

Baidu这个OCR模型用R-SWA把KV缓存压成常量，长文档解析终于不用越跑越慢了。MIT开源，3B总参但推理只消500M，做文档管线的可以直接接。

## AI 摘要

百度推出Unlimited OCR，一个3B参数的MoE模型，推理时仅激活500M参数。其核心创新Reference Sliding Window Attention（R-SWA）将KV缓存大小固定为Lm + n（n默认128），内存和延迟不随输出长度增长。模型基于DeepSeek OCR继续训练4000步，支持32K最大长度，通过DeepEncoder实现16倍token压缩。在OmniDocBench v1.5上整体得分93.23，超出DeepSeek OCR基线6.22分；v1.6得分93.92为最高。Base模式下吞吐达5580 TPS，比DeepSeek OCR提升12.7%，6000 token输出时延迟低35%。适用于整本书转录等场景，代码与权重已在HuggingFace开源。

## 正文

大多数端到端 OCR 模型会随着输出增长而变慢。每生成一个 token 都会增加 KV 缓存，内存占用上升，生成速度拖慢。解析几十页文档变得不切实际。百度推出的 Unlimited OCR 直接解决了这个问题——它用固定内存的设计替换了解码器的注意力机制。

摘要

Unlimited OCR 是一个 3B 参数的混合专家模型，其中仅有 500M 参数处于激活状态。

它用参考滑动窗口注意力（R-SWA）替代了解码器注意力，使 KV 缓存保持恒定。

该模型在 32K 最大长度限制下，一次前向传播即可解析数十页文档。

它在 OmniDocBench v1.5 上取得 93.23 分，比 DeepSeek OCR 基线高出 6.22 分。

它基于 DeepSeek OCR 进行持续训练构建，并非从零开始训练。

什么是 Unlimited OCR？

Unlimited OCR 以 DeepSeek OCR 作为基线。它保留了 DeepEncoder 和混合专家解码器。MoE 设计拥有 3B 总参数量，但推理时仅激活 500M 参数。

DeepEncoder 是压缩引擎。它将窗口注意力下的 SAM-ViT 与全局注意力下的 CLIP-ViT 级联起来。在桥接处，它应用了 16 倍 token 压缩。一张 1024×1024 的 PDF 图像仅变成 256 个视觉 token。更少的输入 token 意味着更小的预填充。

DeepEncoder 原生支持五种分辨率模式，Unlimited OCR 保留了其中两种。'Base' 模式以 1024×1024 分辨率运行，适用于多页处理。'Gundam' 模式使用动态分辨率处理单页。

https://arxiv.org/pdf/2606.23050

R-SWA 如何保持缓存恒定

核心贡献是参考滑动窗口注意力。标准多头注意力会为每个 token 存储键和值。当输出长度 T 增长时，缓存也随之增长。其大小为 CMHA(T) = Lm + T。内存和延迟会无界上升。

R-SWA 打破了这种关联。每个生成的 token 会关注所有参考 token（即视觉 token 和提示词）。它还会关注前 n 个输出 token（n 默认为 128）。更早的内容被驱逐。缓存变成一个固定大小的队列，大小为 m + n。

其大小为 CR-SWA(T) = Lm + min(n, T) ≤ Lm + n。它受一个常数限制。当 T 远超过 n 时，缓存比例趋近于零。因此内存保持平稳，每步延迟也保持平稳。

研究团队将此比作“软遗忘”。人在抄写书籍时，会瞥一眼原文和最后几个词，而不会重读已转录的所有内容。视觉 token 从不进行状态更新，这就避免了线性注意力机制中出现的渐进式模糊现象。下面的交互式模拟器允许你调节 T 值，并观察两种缓存各自的响应变化。

训练方式

Unlimited OCR 并非从头训练。研究团队基于 DeepSeek OCR 检查点继续训练了 4000 步。他们冻结了 DeepEncoder，仅训练解码器。训练使用约 200 万份文档样本，部署在 8×16 张 A800 GPU 上，采用 9:1 的分割比例，优先使用单页数据，多页样本则通过拼接方式构建。

基准测试

研究团队在 OmniDocBench v1.5 和 v1.6 上进行评估。主要发现/统计数据为：在 v1.5 上总体得分 93.23，比 DeepSeek OCR 基线高出 6.22 分。下表对比了三个相关模型，三者均为 3B‑A0.5B 规模。

指标（v1.5）DeepSeek‑OCRDeepSeek‑OCR 2Unlimited‑OCR

总体 ↑87.0189.1793.23

文本编辑距离 ↓0.0730.0490.038

公式 CDM ↑83.3786.8592.61

表格 TEDS ↑84.9785.6090.93

阅读顺序编辑距离 ↓0.0860.0600.045

在 OmniDocBench v1.6 上，Unlimited OCR 总体得分达 93.92。这是研究论文在 v1.6 对比中的最高分。在文本、公式和表格识别方面均有所提升。

速度也有提升。在 Base 模式下，Unlimited OCR 在 OmniDocBench 上达到 5,580 TPS，而 DeepSeek OCR 为 4,951 TPS，提升了 12.7%。输出长度越长，差距越大。在 6,000 token 的输出上限下，DeepSeek OCR 落后于 Unlimited OCR 35%。

适用场景

常量缓存非常适合那些按页处理的系统难以胜任的工作负载。

整本书转录：一次性输入 40 页以上并连续解析。报告显示，40 页以上时的编辑距离低于 0.11，Distinct‑35 达 96.90%。

文档解析流水线：单次前向传播即可提取文本、表格、公式和阅读顺序。

高吞吐量批量解析：附带的 infer.py 可启动 SGLang 服务器，并针对文件夹或 PDF 发送并发请求。

超越 OCR：研究团队将 R‑SWA 称为通用解析注意力机制，可应用于 ASR 和翻译。

运行方式：最少代码量

Transformers 路径需要设置 trust_remote_code=True 并配备 CUDA GPU。单图像解析使用 Gundam 模式。

复制代码已复制请换用其他浏览器

import torch
from transformers import AutoModel, AutoTokenizer

name = "baidu/Unlimited-OCR"
tokenizer = AutoTokenizer.from_pretrained(name, trust_remote_code=True)
model = AutoModel.from_pretrained(
name, trust_remote_code=True, use_safetensors=True,
torch_dtype=torch.bfloat16,
).eval().cuda()

model.infer(
tokenizer,
prompt="<image>document parsing.",
image_file="your_image.jpg",
output_path="your/output/dir",
base_size=1024, image_size=640, crop_mode=True, # gundam mode
max_length=32768,
no_repeat_ngram_size=35, ngram_window=128,
save_results=True,
)

多页面和 PDF 解析在 Base 模式下调用 model.infer_multi，设置 image_size=1024。面向生产吞吐量时，SGLang 通过 fa3 注意力后端提供兼容 OpenAI 的 API。

优势与不足

优势：

恒定 KV 缓存使长输出中的内存和延迟保持平稳。

在 OmniDocBench v1.5 和 v1.6 上取得端到端 SOTA 分数。

仅 500M 活跃参数，推理成本低廉。

采用 MIT 许可证、开放权重，并同时支持 Transformers 和 SGLang。

R-SWA 的改进在单页上未带来可测量的精度损失。

不足：

解析并非真正无限制；32K 上下文仍对预填充阶段形成限制。

尽管经过高度压缩，长预填充仍随页数增加而增长。

多页面运行仅使用 Base 模式，因此可能遗漏非常小的文本。

语音识别和翻译迁移仍属未来工作，尚未交付结果。
