跳转至

百度 Unlimited OCR:R-SWA 参考滑动窗口注意力实现超长文档连续解析

Ch01.706 百度 Unlimited OCR:R-SWA 参考滑动窗口注意力实现超长文档连续解析

📊 Level ⭐⭐ | 4.1KB | entities/baidu-unlimited-ocr-rswa-attention.md

百度 Unlimited OCR:R-SWA 参考滑动窗口注意力

核心创新

百度开源的 Unlimited OCR 在 OmniDocBench 上刷新 SOTA(93.23%,超 DeepSeek OCR +6.22%),核心创新是 R-SWA(Reference Sliding Window Attention)——一种让模型学会"遗忘"的注意力机制,实现超长文档连续解析而 KV Cache 不膨胀。

"与其让模型记住一切,不如让它学会像人一样遗忘。"

R-SWA 机制

人类抄书时不会每写一个字翻阅前面几十页——只保留当前状态和最近几行。论文称之为软遗忘(Soft Forgetting)

两层注意力分离

组件 关注范围 策略
Reference Tokens(视觉+提示词) 全部,始终可见 类比:原书始终摊开在桌上
Text History(已生成文本) 最近 128 个 Token 类比:手边只保留最近写下的几行字

固定 KV Cache 设计

KV Cache 设计成固定长度队列:每生成新 Token,最旧状态自动移出,新状态补进来。无论生成几千还是几万 Token,KV Cache 规模始终恒定

三种注意力机制对比

机制 KV Cache 视觉信息 文本历史 问题
Full Attention 随解码膨胀 全保留 全保留 显存爆炸
传统 SWA 固定大小 被滑出 局部保留 视觉信息逐渐模糊
R-SWA 固定大小 始终保留 局部保留 ✅ 无退化

关键区别:R-SWA 将视觉 Token 单独保留,不参与滑动窗口更新。图像始终保持清晰,发生滑动的只有输出文本本身。

Benchmark 结果

指标 Unlimited OCR DeepSeek OCR 提升
OmniDocBench v1.5 93.23% 87.01% +6.22%
OmniDocBench v1.6 93.92% SOTA
40+ 页 Distinct-35 96.90% 无内容混淆
6000 Token 推理速度 基线 +35%
长文档延迟 稳定 飙升 无飙升

与长上下文研究的关系

传统长上下文思路是扩容(128K→1M→10M),R-SWA 反着来:

  • 不是让模型记住更多信息,而是设计合理的遗忘机制
  • 修改的是注意力机制本身——大模型共同的基础设施
  • OCR 只是第一站,计划扩展到语音识别、机器翻译

路线图:短期 128K 上下文 → 长期 Prefill Pool(按需调取历史 KV)→ 跨任务扩展

与 DeepSeek OCR 的关系

Unlimited OCR 沿用 DeepSeek OCR 提出的 DeepEncoder(高压缩率视觉编码器),创新重点放在解码阶段的长期记忆机制。

维度 DeepSeek OCR Unlimited OCR
视觉编码 DeepEncoder 沿用 DeepEncoder
解码注意力 标准 R-SWA
KV Cache 膨胀 固定
长文档 逐页处理 连续解析

核心作者"YY"疑似前 DeepSeek OCR 研究员魏浩然(GOT-OCR2.0 + DeepSeek OCR/OCR2),研究路线从"怎么看"(视觉编码)延伸到"怎么记"(长期记忆)。

开源

  • GitHub: https://github.com/baidu/Unlimited-OCR
  • HuggingFace: https://huggingface.co/baidu/Unlimited-OCR

相关实体

原文存档