AI 前沿·阅读约 2 分钟·
Baidu Unlimited OCR:开源无限 OCR 模型,单次解析整份文档,435 点登顶 Hacker News

Baidu Unlimited OCR:开源无限 OCR 模型,单次解析整份文档,435 点登顶 Hacker News

百度开源了 Unlimited OCR 模型(MIT 许可),实现了真正意义上的「一次性长视野文档解析」——无需分页、无需预处理,单次推理即可完成整份多页文档的结构化文本提取,在 Hacker News 上获得 435 分。

原文来源:GitHub - baidu/Unlimited-OCR — 百度开源的无限视野 OCR 模型(MIT 许可),在 Hacker News 上获得 435 分,实现了对 DeepSeek-OCR 的重大改进,支持一次性多页文档解析。

2026 年 6 月 22 日,百度在 GitHub 上开源了 Unlimited-OCR(MIT 许可),当天即登陆 Hacker News 首页并以 435 分 成为当日最高分项目。这个项目的口号是「Welcome the Era of One-shot Long-horizon Parsing」(欢迎来到一次性长视野解析时代)。

一、核心突破:从「分页处理」到「一次性解析」

传统的文档 OCR 工作流通常是这样的:

  1. 将 PDF 拆分为单页图片
  2. 对每页分别运行 OCR 模型
  3. 将各页结果拼接回完整文档

这种做法的根本问题是:模型看不到跨页的上下文。表格跨页会断掉,章节标题出现在上一页但内容在下一页,脚注和正文的关系丢失。每个页面都被孤立地处理。

Unlimited OCR 的核心创新在于 One-shot Long-horizon Parsing——模型能够一次性「看完」整份文档(包括多页 PDF),在全局上下文中理解文本结构和语义关系。

—— 广告 ——

二、技术架构

Unlimited OCR 基于视觉-语言模型架构,支持两种推理模式:

模式基础尺寸图片尺寸裁剪模式适用场景
Gundam1024px640px启用单页/简单文档,快速精确
Base1024px1024px禁用多页/复杂文档,完整解析

其中 Gundam 模式 的命名暗示了它的定位——像高达一样精准而强大。该模式通过智能裁剪策略,在保持高分辨率细节的同时控制推理成本。

核心特性包括:

  • 最大输出长度:32,768 tokens(标准版)/ 可配置
  • N-gram 去重:支持自定义 ngram 窗口(单图 128,多图 1024),避免重复输出
  • SGLang 部署:原生支持通过 SGLang 进行高效推理
  • 批量推理:内置 infer.py 支持并发处理,默认 8 路并发
  • 多格式输入:单张图片、图片目录、PDF 文件均可直接处理

三、使用方式

方式一:Transformers(Hugging Face)

项目已上传到 Hugging Face,一行代码即可加载:

code
from transformers import AutoModel, AutoTokenizer
 
model = AutoModel.from_pretrained('baidu/Unlimited-OCR', trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained('baidu/Unlimited-OCR', trust_remote_code=True)
model = model.eval().cuda()
 
# 单图 Gundam 模式
model.infer(tokenizer, prompt='<image>document parsing.',
            image_file='your_image.jpg', output_path='./output',
            base_size=1024, image_size=640, crop_mode=True,
            max_length=32768)

PDF 多页解析也只需要几行额外的代码,通过 PyMuPDF 将 PDF 转为图片数组后调用 infer_multi 即可。

方式二:SGLang 服务部署

对于生产环境,项目提供了 SGLang 部署方案,支持 OpenAI 兼容 API:

code
python -m sglang.launch_server \
    --model baidu/Unlimited-OCR \
    --served-model-name Unlimited-OCR \
    --context-length 32768 \
    --host 0.0.0.0 --port 10000

启动后即可通过标准 HTTP 请求调用,支持流式输出。

方式三:命令行批量处理

code
# 处理图片目录
python infer.py --image_dir ./examples/images --output_dir ./outputs --concurrency 8
 
# 处理 PDF
python infer.py --pdf ./examples/document.pdf --output_dir ./outputs

四、与 DeepSeek-OCR 的对比

项目 README 明确指出,Unlimited OCR 的目标是「把 DeepSeek-OCR 向前推进一步」。相比 DeepSeek-OCR,主要的改进包括:

  1. 多页文档的原生支持:DeepSeek-OCR 主要针对单页优化,Unlimited OCR 内置了多页上下文理解
  2. MIT 许可:比 DeepSeek-OCR 的许可证更宽松
  3. Gundam 模式:智能裁剪策略在精度和效率之间取得更好的平衡
  4. 完整推理管线:从 PDF 输入到结构化输出的端到端支持
  5. SGLang 部署支持:生产级推理服务

五、安装与依赖

项目依赖 PyTorch 2.10+、Transformers 4.57+,以及 PyMuPDF、Pillow 等标准视觉库。建议使用 Python 3.12 和 CUDA 12.9 环境。

模型文件通过 Hugging Face 自动下载,权重使用 safetensors 格式,数据类型为 bfloat16。单张 A100 (80GB) 即可运行推理。

六、意义与局限

意义

  • 开源 OCR 领域的重大进步,将「一次性长视野解析」从研究论文带到可用的开源实现
  • MIT 许可意味着可以自由用于商业项目
  • 435 分的 HN 热度说明了社区对这个方向的高度关注

需要留意的地方

  • 模型大小未公开,但从推理配置看需要较大显存
  • 中文 OCR 能力(百度强项)与英文 OCR 能力的对比尚无第三方评测
  • 32K 的输出长度对于超长文档可能不够——虽然比大多数 OCR 模型已经强很多
  • 目前仅在学术基准上进行了评估,实际复杂文档(表格、公式、手写体)的效果有待社区验证

总的来说,Unlimited OCR 是文档数字化领域一个值得关注的开源项目。对于需要批量处理多页文档的开发者,这个模型提供了一个有力的新选择。

分享到
微博Twitter

© 2026 四月 · CC BY-NC-SA 4.0

原文链接:https://www.aprilzz.com/ai/unlimited-ocr-baidu