先说结论,实际体验一般,如果是下游rag文档的元素不是特别复杂可以用一用这个端到端的多模态模型,如果版式元素丰富,还是老实进行文档解析吧。 但通过pdfparser工具结合prompt结合的方式值得一看 。
- 在线demo:https://olmocr.allenai.org/
- 开源权重地址:https://huggingface.co/allenai/olmOCR-7B-0225-preview
- paper:Efficient PDF Text Extraction with Vision Language Models,https://arxiv.org/pdf/2502.18443v1
- code:https://github.com/allenai/olmocr
笔者测试case:
原图
OLMOCR解析后,红色框表格缺失部分
核心问题与背景
PDF文档蕴含海量高质量文本数据,但因其复杂的视觉布局(多栏、表格、公式等)和元数据缺失,传统OCR工具难以准确提取内容。现有解决方案存在以下痛点:
- pipline系统 (如Grobid)依赖多组件串联,对复杂布局泛化性差; 笔者前期分享了很多相关技术链路《 文档智能系列栏目 》、《 【文档智能 & RAG】RAG增强之路:增强PDF解析并结构化技术路线方案及思路 》
pipline系统
- 端到端模型 (如Nougat)仅依赖图像输入,忽略PDF原生元数据,成本高昂(如GPT-4o处理百万页需$6,200);
- 数据稀缺 :缺乏大规模、多样化的PDF训练数据。
OLMOCR创新点
- DOCUMENT-ANCHORING技术
Prompt
如:原图:
通过pdfpaser得到元数据拼接提示词得到:
-
兼容性 :对无元数据的扫描文档仍保持高精度,仅依赖图像输入。
-
元数据提取 :通过pypdf库解析PDF结构,提取关键元素的位置信息,动态注入模型提示(Prompt)。
-
多模态输入融合(通过提示词) :同时利用PDF原生元数据(文本块坐标、图像位置)和页面图像,显著减少模型幻觉。
- 蒸馏模型
- 模型架构 :基于Qwen2-VL-7B-Instruct微调,支持Markdown结构化输出(公式LaTeX、表格Markdown)。
- 训练数据 :构建 olmOCR-mix-0225 数据集(26万页PDF),涵盖学术论文、法律文件、手册等多样化来源(表1-2)。
实验结果
与教师模型GPT-4o的文本对齐度达87.5%,优于GPT-4o mini(83.3%)。温度(τ=0.8)下对齐度略降(85.9%),但减少生成重复。
在2,017份PDF的对比测试中,OLMOCR以ELO 1800+显著优于Marker、MinerU等工具(图6)。使用OLMOCR数据微调OLMo-2模型,在MMLU、ARC等基准上平均提升1.3%。