Unlimited-OCR:百度开源长文档OCR模型,单次推理批量解析数十页PDF文档
一、Unlimited-OCR是什么
Unlimited-OCR是百度开源的端到端长文档OCR多模态模型,基于Deepseek-OCR迭代升级,主打单次前向传播一次性完成数十页长文档连贯解析,官方定位为「One-shot Long-horizon Parsing(单次长程文档解析)」时代标杆工具。
Unlimited-OCR全程基于NVIDIA GPU运行,原生支持Python 3.12+CUDA12.9环境,彻底解决传统OCR逐页切割、上下文断裂、长文档显存爆炸、推理速度持续衰减等痛点。
模型基础规格:总参数量3B,推理仅激活570M参数,上下文窗口上限32768 tokens,在OmniDocBench v1.6评测基准取得93.92%综合得分,刷新开源端到端OCR SOTA性能,长文档推理速度较Deepseek-OCR最高提升35%。
二、功能特色
1. 核心长文档解析能力
单轮推理支持数十页PDF/多图文档统一识别,无需分页循环处理,保留跨页表格、段落、引用的完整语义连贯性;
内置N-gram重复抑制算法,通过自定义Logit处理器消除长文本重复输出、断句错乱问题。
2. 双图像识别模式适配全场景
| 模式名称 | 适用场景 | 核心参数配置 |
|---|---|---|
| gundam(裁剪模式) | 单张图片、海报、单页票据、报纸复杂版面 | base_size=1024,image_size=640,开启裁剪 |
| base(全局模式) | 多页图集、PDF批量文档、长篇书籍 | image_size=1024,无裁剪,保证跨页视觉完整 |
3. 多格式文件原生支持
单张图片(JPG/PNG等)独立解析;
批量多图片文件夹并发处理;
PDF自动分页转高清图片(自定义DPI)批量OCR;
批量推理脚本
infer.py,支持自定义并发数、GPU设备、日志存储。
4. 两套成熟推理部署方案
Transformers本地快速推理:轻量化调试,开箱即用,适合开发测试;
SGLang高性能服务化部署:兼容OpenAI流式API接口,支持高并发、长文本流式输出,适配线上业务系统集成。
5. 工程化配套工具链
内置PDF转图工具、结果自动持久化存储、自定义输出目录、GPU卡号指定、服务日志记录等全套工具,无额外第三方复杂依赖。

三、技术细节
1. 核心创新:R-SWA参考滑动窗口注意力机制
传统OCR解码器采用标准多头注意力(MHA),KV Cache随输出Token线性膨胀,文档越长显存占用越高、推理速度持续下滑。Unlimited-OCR自研Reference Sliding Window Attention(R-SWA参考滑动窗口注意力),将KV Cache锁定为常量容量,实现长文档推理显存零增长:
参考段(Reference Tokens):包含全部视觉图像Token与提示词Prompt,全程全局可见,仅编码一次不参与状态滑动,避免长解码过程中图片视觉特征模糊退化;
解码滑动窗口:固定窗口长度(单图128、多页1024),仅保留近期输出文本Token,新Token生成时自动淘汰最老旧历史Token,缓存容量永久固定;
机制通用性:R-SWA不局限于OCR,可迁移至语音识别ASR、机器翻译等长序列任务。
2. 模型架构组成
DeepEncoder视觉编码器:继承Deepseek-OCR高压缩视觉Token编码方案,大幅降低Prefill阶段显存开销,精准提取表格、公式、多栏图文等复杂版面特征;
MoE混合专家解码器:3B总参数,推理仅激活570M参数,兼顾大模型文档理解能力与小模型推理速度;
自定义Logit处理器:内置35元重复Ngram抑制逻辑,通过窗口参数控制重复文本过滤强度。
3. 推理底层优化
支持bfloat16半精度推理、safetensors权重加载,降低显存占用;
SGLang服务端集成FA3注意力后端、静态显存分片、32768超长上下文配置;
批量推理支持并发调度,单任务可配置8并发处理批量文档。
四、应用场景
企业档案数字化:几十页合同、标书、档案PDF一次性解析,保留跨页条款、表格关联关系,无需人工拼接识别结果;
学术科研文献处理:长篇论文、学位论文、外文期刊批量提取文本、公式、图表说明,解决多栏排版识别错乱;
政务/金融票据批量归档:多页财报、报销单据、政务文件批量结构化提取;
出版书籍电子化:整本图书PDF一次性文字转录,保持章节、段落、插图文字顺序连贯;
开发者业务集成:对接企业后台、文档管理系统,通过OpenAI兼容API实现流式OCR服务;
个人办公资料整理:扫描件、截图、电子书PDF批量文字提取,用于笔记、检索、翻译。
五、使用方法
前置环境要求
Python 3.12.3、CUDA12.9、NVIDIA GPU,固定依赖版本:torch==2.10.0、transformers==4.57.1、pymupdf==1.27.2.2等。
方案1:Transformers本地单文件快速推理
加载预训练Tokenizer与模型(baidu/Unlimited-OCR),开启bfloat16精度、GPU推理;
单图调用
model.infer(),指定gundam裁剪模式;多图/PDF调用
model.infer_multi(),使用base全局模式,内置pdf_to_images函数自动拆分PDF页面。
方案2:SGLang高性能服务部署
uv创建虚拟环境,安装项目内置SGLang wheel包与内核依赖;
启动SGLang服务,开放0.0.0.0访问、10000端口,开启32768上下文;
封装Base64图片请求,调用流式OpenAI接口实时返回识别文本;
批量工具:执行
infer.py,传入图片目录/PDF路径、并发数、图像模式一键批量处理。

六、竞品对比
| 对比维度 | Unlimited-OCR(百度) | Deepseek-OCR(深度求索) | PaddleOCR-VL(百度飞桨) |
|---|---|---|---|
| 核心定位 | 长文档一次性端到端解析,解决超长PDF显存瓶颈 | 通用端到端多模态OCR,长文档需逐页循环处理 | 轻量化两阶段OCR,侧重边缘/移动端轻量化识别 |
| 核心技术 | R-SWA恒定KV缓存,单次推理数十页文档 | 标准MHA注意力,KV缓存线性增长 | 检测+识别两阶段流水线,无长序列优化 |
| 参数量 | 3B(激活570M) | 3B | 0.9B轻量模型 |
| 长文档能力 | 单次推理整本书,显存不随页数上升 | 多页需分页循环,页数越多速度越慢 | 长文档切割分片,跨页语义断裂 |
| 权威评测得分 | OmniDocBench v1.6:93.92% | OmniDocBench v1.5:91左右 | OmniDocBench v1.5:92.6 |
| 部署方案 | Transformers本地 + SGLang高并发API | Transformers、vLLM | Paddle推理、轻量化C++部署 |
| 适用场景 | 长篇PDF、书籍、批量档案、企业长文档服务 | 单页/少量多页专业文档、学术论文 | 移动端、票据、简单图文、低显存设备 |
| 短板 | 必须NVIDIA GPU,无轻量化边缘版本 | 超长文档推理显存开销大、速度衰减 | 复杂多页长文档语义连贯性差 |
七、常见问题解答(FAQ)
Q1:Unlimited-OCR是否支持CPU运行?
A:项目原生仅适配NVIDIA CUDA GPU,未提供CPU推理优化,CPU运行速度极慢且易显存溢出,不推荐使用。
Q2:gundam模式和base模式该如何选择?
A:单张图片、单页报纸、密集排版票据选择gundam裁剪模式;多页图集、整本PDF、跨页表格文档统一使用base全局模式。
Q3:运行时出现文本大量重复输出怎么解决?
A:模型内置Ngram重复抑制逻辑,可调整参数no_repeat_ngram_size=35、ngram_window,单图窗口设128,多页PDF窗口设1024,即可大幅消除重复文字。
Q4:PDF识别文字顺序错乱是什么原因?
A:一是未切换base全局模式使用了gundam裁剪;二是PDF转换图片DPI过低,建议调用pdf_to_images函数时设置dpi=300,保证版面特征完整。
Q5:SGLang服务启动后并发处理报错超时如何处理?
A:调低启动参数mem-fraction-static显存占用比例,或降低infer.py的--concurrency并发数值,同时延长接口请求timeout至1200秒。
Q6:模型权重需要手动下载吗?
A:无需手动下载,代码中AutoModel.from_pretrained会自动从Hugging Face拉取baidu/Unlimited-OCR权重,国内网络可切换ModelScope镜像加速下载。
Q7:该模型支持中英文以外的多语种识别吗?
A:项目基于Deepseek-OCR迭代,原生支持80+主流语种,但官方文档未针对小语种做专项优化,复杂多语种混合文档识别精度会下降。
八、相关链接
GitHub开源仓库:https://github.com/baidu/Unlimited-OCR
arXiv论文地址:https://arxiv.org/abs/2606.23050
ModelScope魔搭模型地址:https://modelscope.cn/models/PaddlePaddle/Unlimited-OCR
Hugging Face模型地址:https://huggingface.co/baidu/Unlimited-OCR
九、总结
Unlimited-OCR是百度面向长文档数字化场景推出的新一代开源端到端OCR模型,依托自研R-SWA参考滑动窗口注意力机制彻底解决传统多模态OCR处理长篇PDF、多页图集时显存持续膨胀、推理效率衰减、跨页语义割裂的行业痛点,以3B中等参数量实现93.92%的行业SOTA文档识别精度,同时提供本地快速调试与SGLang高并发API两套完整部署方案,原生适配企业档案、学术文献、批量书籍等超长文档处理需求,配套完善的PDF转图、批量推理、重复文本抑制等工程工具链,相比Deepseek-OCR、PaddleOCR-VL在长文档一次性连贯解析场景具备不可替代的技术优势,是面向专业长篇文档数字化、企业后端OCR服务集成的高性能开源解决方案。
版权及免责申明:本文由@dotaai原创发布。该文章观点仅代表作者本人,不代表本站立场。本站不承担任何相关法律责任。
如若转载,请注明出处:https://www.aipuzi.cn/ai-news/unlimited-ocr.html

