PaddleOCR 5 分钟上手:把任意 PDF 或图片变成 LLM 可用的结构化数据
PaddleOCR 5 分钟上手:把任意 PDF 或图片变成 LLM 可用的结构化数据
【免费下载链接】PaddleOCRTurn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between images/PDFs and LLMs. Supports 100+ languages.项目地址: https://gitcode.com/GitHub_Trending/pa/PaddleOCR
把文档喂给 LLM 之前,最容易翻车的往往不是模型,而是输入——一张拍歪的表格、一份中英混排的说明书,怎么变成干净的 Markdown?PaddleOCR 就是干这件事的开源工具包:把 PDF、图片转换成结构化 Markdown/JSON,覆盖 100+ 种语言,支持 CPU 和 GPU 本地部署。如果你在做 RAG、文档结构化,或者需要离线跑多语言识别,它值得你花 5 分钟。
先看结论:适合谁,不适合谁
适合:
- 把扫描件、照片转成结构化数据喂给大模型
- 多语言混排场景,PP-OCRv6 单个模型覆盖中、英、日及 46 种拉丁文字语言
- 离线本地部署,tiny/small/medium 三档模型对应边缘、移动、服务器
不适合:
- 手里只有纯文本要做整理,杀鸡用牛刀
- 想要现成的 SaaS 接口直接调——它没有公共在线服务,服务化要自己部署
两条主线:场景文字识别与文档解析
PaddleOCR 有两条主线。通用 OCR 侧,PP-OCRv6 提供 tiny(150 万)、small(770 万)、medium(3450 万)参数三档模型,官方数据比上一代检测提升 4.6%、识别提升 5.1%。文档解析侧,PP-StructureV3 能把复杂页面转成带坐标的 Markdown 或 JSON;0.9B 参数的 PaddleOCR-VL 在 OmniDocBench v1.6 上报告 96.3% 的解析准确率,公式、表格、印章、图表都能处理。
这张官方示例图是一张中英混排的登机牌,字段位置散乱,但每条文本都能按顺序输出文字、置信度和框坐标。
安装 3 步走:引擎、包、模型
直接从 PyPI 装即可。paddleocr主包给通用 OCR 产线;[all]依赖组则把文档解析、信息抽取、文档翻译全部打开:
python -m pip install paddleocr python -m pip install "paddleocr[all]"第一行装完就能跑通用 OCR,第二行按需安装。推理需要引擎:PaddlePaddle 3.0 及以上,或 Transformers 5.8 及以上,两者选其一,细节见 官方安装指南。模型文件首次运行时自动下载,不用手动摆放。
5 分钟跑通:最小可运行示例
最短路径是 CLI,装完就有paddleocr命令,ocr子命令识别单张图:
paddleocr ocr -i ./general_ocr_002.png \ --use_doc_orientation_classify False \ --use_doc_unwarping False \ --use_textline_orientation False \ --engine paddle这段在做什么:关闭文档方向分类、版面矫正、文本行方向分类(正向拍摄的图不需要,省掉三步),然后跑完整检测加识别流程,输出可直接存成标注图和 JSON。Python 侧等价代码更短:
from paddleocr import PaddleOCR ocr = PaddleOCR(engine="paddle") for res in ocr.predict("./general_ocr_002.png"): res.print() res.save_to_json("output")这段就是单图到结构化输出的完整流程;输入换成目录即可批量处理。
识别不理想时的三个调优动作 🔍
路牌、数码屏这类场景文本(比如仓库里的电子钟),默认管线通常就能出结果。出问题就按顺序查三处:
- 整行漏检:检测阈值的已知问题,FAQ 建议把
det_db_box_thresh从默认 0.5 调到 0.3 再观察效果 - 大文档漏检:图片长边超过 960 像素时默认会缩放再预测,小字容易丢,调大
det_limit_side_len恢复分辨率 - 定位是哪一级的错:
paddleocr text_detection和paddleocr text_recognition可单独调用,先确认检测框准不准,再看单行识别对不对,只调对应那一级的模型
边界与限制:三个容易踩的坑
第一,引擎与模型不完全兼容:Transformers 后端还缺部分模型,用 PP-StructureV3 时要按 快速上手 的说明关闭公式识别并换无线表格模型。第二,硬件预算:PaddleOCR-VL 是 0.9B 的视觉语言模型,预期配 GPU;纯 CPU 环境选 PP-OCRv6 的 tiny 或 small 档。第三,它是工具包不是产品:产出是结构化数据,字段归一化、跨页合并这类业务逻辑得你自己写,导出 DOCX 虽有现成方法,但排版质量取决于解析结果。
下一步做什么
跑通之后自然的下一步是文档解析:paddleocr pp_structurev3 -i 你的.pdf,把真实 PDF 转成 Markdown 再交给 LLM。产线细节看 产线概述 和 PP-StructureV3 文档;关心的语言不在 50 种统一模型覆盖内,去 多语言数据集说明 查分语言模型。最后留一个问题给你:你的业务里,最该被结构化的那批文档长什么样?拿它做第一张测试图。
【免费下载链接】PaddleOCRTurn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between images/PDFs and LLMs. Supports 100+ languages.项目地址: https://gitcode.com/GitHub_Trending/pa/PaddleOCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
