1. 项目定位
Unlimited-OCR 是一个面向“长视野文档解析”的 OCR 模型。README 明确写到它希望把 Deepseek-OCR 推进一步,欢迎进入 one-shot long-horizon parsing 时代。
传统 OCR 往往按页、按块、按行处理,再通过规则或后处理拼接结构。Unlimited-OCR 的卖点是用视觉语言模型方式一次性处理更长的文档上下文,尤其适合多页 PDF、扫描文档、复杂版面材料的语义化解析。
2. 它主要能做什么
| 能力 | 官方材料依据 | 售前理解 |
|---|---|---|
| 单图文档解析 | model.infer(... image_file=...) | 适合单页扫描件、截图、票据、表单 |
| 多页解析 | model.infer_multi(... image_files=[...]) | 适合合同、报告、手册、标书等多页文档 |
| PDF 解析 | README 用 PyMuPDF 转图片后走 multi-page parsing | 可接入文档管理、知识库、档案数字化流程 |
| 长上下文输出 | max_length=32768 | 适合保留较长文档内容和结构 |
| 多推理后端 | Transformers、vLLM、SGLang | PoC 到生产部署路径更灵活 |
| OpenAI-compatible API | SGLang 示例提供 /v1/chat/completions | 便于接企业已有模型网关/应用层 |
3. 适用场景
文档数字化和档案入库
适合政府、金融、制造、教育、医疗等行业的历史档案、扫描 PDF、合同、说明书入库。售前可以讲:先把非结构化扫描件转换成可检索文本,再进入 RAG、全文检索或业务审核流程。
合同/报告/标书解析
多页 PDF 常常存在页眉页脚、章节、表格和图片。Unlimited-OCR 的多页解析能力适合做第一阶段抽取,后续再接 LLM 做条款识别、风险摘要、章节索引。
知识库/RAG 前处理
很多 RAG 项目失败不是因为检索模型,而是源文档解析质量差。Unlimited-OCR 可作为“扫描件 -> Markdown/文本/结构化内容”的前置能力,提升知识库入库质量。
票据/表单/截图解析
单图 gundam 或 base 配置可以用于票据、页面截图、表格图片。正式 PoC 应比较传统 OCR、PaddleOCR、DeepSeek-OCR、文档大模型之间的准确率和成本。
4. 不太适合的场景
| 场景 | 原因 |
|---|---|
| 只需要低成本批量识别简单印刷文字 | 传统 OCR 更便宜、更快 |
| 强实时移动端 OCR | 模型推理依赖 GPU,端侧部署压力大 |
| 需要 100% 结构化字段抽取 | OCR 只是第一步,还需字段 schema、校验和业务规则 |
| 极高保密文档但无法本地部署 GPU | 云端模型调用可能不满足合规 |
5. 部署和使用
Transformers
from transformers import AutoModel, AutoTokenizer
model_name = "baidu/Unlimited-OCR"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModel.from_pretrained(
model_name,
trust_remote_code=True,
use_safetensors=True,
torch_dtype="bfloat16",
).eval().cuda()
单图支持两种配置:
gundam:base_size=1024, image_size=640, crop_mode=Truebase:base_size=1024, image_size=1024, crop_mode=False
多页/PDF 只使用 base,README 示例用 PyMuPDF 把 PDF 转成 300 DPI PNG 后调用 infer_multi。
vLLM
项目已在 2026-06-28 宣布支持 vLLM inference,并提供镜像:
docker pull vllm/vllm-openai:unlimited-ocr
docker pull vllm/vllm-openai:unlimited-ocr-cu129
SGLang
SGLang 路线可启动 OpenAI-compatible 服务:
python -m sglang.launch_server \
--model baidu/Unlimited-OCR \
--served-model-name Unlimited-OCR \
--context-length 32768 \
--host 0.0.0.0 \
--port 10000
适合把 OCR 服务接入现有应用平台。
6. 售前可以怎么讲
Unlimited-OCR 不是普通识别单行文字的 OCR,而是面向长文档解析的视觉语言模型。它适合解决企业扫描 PDF、报告、合同、档案入库时“页多、版面复杂、上下文长、后续要进知识库”的问题。PoC 不应只看几个截图,而要用客户真实 PDF 样本评估准确率、结构保真、吞吐和 GPU 成本。
7. PoC 建议
| 阶段 | 工作 | 指标 |
|---|---|---|
| 样本准备 | 选 50-100 份真实扫描件,覆盖清晰/模糊/表格/长文档 | 样本代表性 |
| 基线对比 | 对比 PaddleOCR、传统 OCR、DeepSeek-OCR、人工标注 | 字符准确率、结构保真 |
| 多页测试 | PDF 转图片后 multi-page parsing | 页顺序、章节、表格丢失率 |
| 成本评估 | Transformers/vLLM/SGLang 三路线测试 | 单页耗时、显存、并发 |
| 业务闭环 | 接 RAG 或字段抽取 | 检索命中率、字段正确率 |
8. 风险和注意事项
- README 依赖版本较新,如 Python 3.12、CUDA 12.9、torch 2.10 等,客户环境要提前核对。
trust_remote_code=True对企业安全审查是敏感点,需要源码审计或隔离环境。- 文档 OCR 结果仍需人工抽样验收,不能把模型输出直接作为法律/财务最终结果。
- PDF 转图片的 DPI、裁剪、页面方向会显著影响效果。
- 多页输出很长,后续 LLM/检索链路要处理 chunk、页码、引用定位。
9. 我的售前判断
Unlimited-OCR 很适合作为“企业文档智能化”的前置能力来讲,而不是单独卖 OCR。最好的方案叙事是:
扫描 PDF / 图片 -> Unlimited-OCR 长文档解析 -> 结构化清洗 -> RAG / 审核 / 字段抽取 / 检索
如果客户有大量扫描件、档案、合同、报告,这个项目值得做 PoC;如果客户只是要普通发票/身份证/简单表单 OCR,传统 OCR 或成熟商业 OCR 可能更经济。
10. 参考资料
- GitHub:baidu/Unlimited-OCR
- Hugging Face:baidu/Unlimited-OCR
- arXiv:Unlimited OCR Works
- vLLM Recipe:recipes.vllm.ai/baidu/Unlimited-OCR
- 图示:Unlimited-OCR.png
- 演示动图:long-horizon-ocr.gif
信息核查日期:2026-06-30。GitHub API 匿名访问触发限流,本笔记未写实时 stars/forks。