2025年10月17日星期五

被ChatGPT安利后,我发现了最强开源OCR!

最近做的项目需要识别复杂文档,可市面上 OCR (Optical Character Recognition,光学字符识别)工具那么多,该选哪一个呢?

让 ChatGPT 给我推荐:

图片

我顺着它给的链接点进去,发现这是一个可以将任何 PDF 或图像文档转换为 AI 所需的结构化数据的轻量级 OCR 工具包

图片

深入了解了一波,这个项目由百度飞桨 PaddleOCR 团队推出。

早在 2020 年就已开源,是 GitHub 社区中唯一一个 Star数超过 50k 的中国OCR项目。目前已累计下载量突破 900 万,被超过 5.9k 开源项目直接或间接使用。

图片

今年,PaddleOCR 团队陆续推出了文字识别方案 PP-OCRv5 、文档解析方案 PP-StructureV3 、关键信息抽取方案 PP-ChatOCRv4 。而近期,发布并开源了专注于多模态文档解析的 PaddleOCR-VL 。

PaddleOCR-VL 仅有 0.9B 参数,但在文档解析领域最新的权威榜单 OmniDocBenchV1.5 中一举夺魁,超过 GPT-4o、Gemini-2.5 Pro 等大模型以及一大批热门的 OCR 小模型。

更是在文本识别、公式识别、表格理解、阅读顺序四大维度上同时登顶,从成绩上看可以说是 OCR 领域当之无愧的 SOTA 。

图片

昨天发布开源,今天就登顶HuggingFace Trending全球第一 ,战斗力也太强了。

图片

看来 ChatGPT 的推荐不是空穴来风。

我很好奇,作为一个参数量只有 0.9B 的小模型,PaddleOCR-VL 是怎么超越一众大小模型成为" PDF 之神"的?

一、PaddleOCR-VL 详细介绍

OCR 行业洞察

在这之前,我们先来了解一下 OCR 究竟有多重要。

你有没有注意到?

最近一年,腾讯、Mistral AI 、llama 、Qwen 、小红书等纷纷推出 OCR 工具,竞争相当激烈。

图片图片

图片图片

OCR 的"内卷"背后是因为:随着视觉语言模型竞争的白热化,OCR 能力成了比赛胜负的关键因素之一。

不仅是视觉语言模型,大语言模型、智能体以及文件类的 AI 工具,都需要通过 OCR 将原始不规则化的信息转化成能"读懂"的信息,才能发挥出模型或者应用的真正能力。

图片

简单来说,OCR 是影响知识/信息保真度的关键因素。其重要性,也就不言而喻了。

PaddleOCR-VL 的核心亮点

竞争如此激烈,那 PaddleOCR-VL 出彩在哪里?它最大的亮点在于,它在多模态文档解析领域,实现了高性能的同时,还完成了资源的高效利用。

并且面对文本、手写汉字、表格、公式和图表等各种形态的奇怪文档,它全都能全部「看懂」,是实打实的「PDF之神」。

高性能、高效率的多模态文档解析

PaddleOCR 团队提出了一种全新的混合式架构,将一个轻量强大的视觉语言模型( PaddleOCR-VL-0.9B )和一个精准的版面分析模型( PP-DocLayoutV2 )结合在一起。

这样一来,PaddleOCR-VL 不仅能跑得快,还能在各种实际场景下准确识别文档内容——又稳又灵活。

复杂文档内容,一键高效解析

不论是潦草的手写字、历史档案、结构怪异的表格,还是密密麻麻的数学公式,PaddleOCR-VL 专门针对这些"硬骨头"做了优化,在复杂文档里依然能精准识别、提取信息。

真正理解图表,变成机器可读的数据

和传统的 OCR 模型相比,PaddleOCR-VL 创新点之一在于它能真正"读懂"图表,将非结构化的图表数据(例如条形图、折线图和饼图)转换为结构化表格格式。

这意味遇到条形图、折线图、饼图,它能直接把这些视觉化内容转成可用的表格数据,让后续分析、搜索全自动化完成。真正实现"看图识数"。

多语种文本识别

PaddleOCR-VL 支持 109 种语言和手写文字的识别,覆盖全球主要语种,在多语言文档处理场景中也没有问题。

PaddleOCR-VL 架构

那 PaddleOCR-VL 是如何完成这些的呢?我们来解析一下架构,它将复杂的文档解析任务分解为两个阶段:

图片

首先,PP-DocLayoutV2 负责版面分析,定位语义区域并预测阅读顺序。

图片

然后在第二阶段中,PaddleOCR-VL-0.9B 模型利用这些布局预测对内容进行细粒度识别,包括文本、表格、公式和图表等。

图片

最后,使用一个轻量级的后处理模块聚合对两阶段的输出结果进行聚合,并将最终解析结果格式化输出为结构化的 Markdown 与 JSON 文件。

二、实测案例

复杂排版识别

先拿个排版复杂的来考考它,看它能不能辨别出正确的阅读顺序。

图片

可以看到,即使分割线、图片、字体大小不均匀,它也能正确解析版面,精准识别。

几何图形、表格、公式识别

上点强度,来看看难度高一些的几何图形、表格、公式的识别情况。

以这张清晰度并不算高的试题为例:

图片

识别效果:

无论是表格、图形,还是复杂的数学表达,它都能完美识别。

还有更多例子:

图片

手写的也没问题:

图片

传统文献

OCR 的一个重大意义在于对历史文献进行数字化,从而传承并大范围传播历史文化。

但古籍排版特殊,使用繁体,还有各式各样手写字体,并且很多字迹模糊,这些特点都给 OCR 精准识别带来了难度。

来看看使用 PaddleOCR-VL 扫描的效果:

图片
图片

更多例子:

图片

图表理解与结构化转换

PaddleOCR-VL 可以将复杂图表转换为结构化的表格数据。

比如将柱状图自动转换为表格。

图片

除了柱状图之外,折线图、饼状图、热度图、以及混合格式的复杂图表通通都能准确转换。

图片

非常全面,以后再也不用担心大模型读不懂复杂图表了。

图片

多语言场景识别

除了上面展示的中英,看看其他语言的识别效果。

法语

图片

西班牙语

图片

克罗地亚语

图片

手写阿拉伯语

图片

识别效果非常好,学小语种的朋友可以用它来迅速数字化一波自己的手写笔记。

三、快速上手

效果真心不错,心动的小伙伴赶紧上手试试吧~

使用之前,可以先到在线 demo 上亲自体验一下效果:

https://huggingface.co/spaces/PaddlePaddle/PaddleOCR-VL_Online_Demo

图片

安装依赖

安装 PaddlePaddle 和 PaddleOCR :

python -m pip install paddlepaddle-gpu==3.2.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/
python -m pip install -U "paddleocr[doc-parser]"
python -m pip install https://paddle-whl.bj.bcebos.com/nightly/cu126/safetensors/safetensors-0.6.2.dev0-cp38-abi3-linux_x86_64.whl

基本用法

CLI:

paddleocr doc_parser -i https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/pp_ocr_vl_demo.png

Python API:

from paddleocr import PaddleOCRVL

pipeline = PaddleOCRVL()
output = pipeline.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/pp_ocr_vl_demo.png")
for res in output:
    res.print()
    res.save_to_json(save_path="output")
    res.save_to_markdown(save_path="output")

使用 vLLM 加速 VLM

启动 VLM 推理服务器,默认端口为 8080:

docker run \
    --rm \
    --gpus all \
    --network host \
    ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlex-genai-vllm-server
# You can also use ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlex-genai-vllm-server for the SGLang server

调用 PaddleOCR 的命令行界面(CLI)或 Python 应用程序编程接口(API):

paddleocr doc_parser \
    -i https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/pp_ocr_vl_demo.png \
    --vl_rec_backend vllm-server \
    --vl_rec_server_url http://127.0.0.1:8080
from paddleocr import PaddleOCRVL

pipeline = PaddleOCRVL(vl_rec_backend="vllm-server", vl_rec_server_url="http://127.0.0.1:8080")
output = pipeline.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/pp_ocr_vl_demo.png")
for res in output:
    res.print()
    res.save_to_json(save_path="output")
    res.save_to_markdown(save_path="output")

四、最后

测评下来我最大的体会就是:作为全球最强 OCR VL ,PaddleOCR-VL 的实力确实是稳扎稳打。

PaddleOCR 历经 5 年技术沉淀,在成为 SOTA 后仍然不断迭代,在每个维度上精益求精,一次次刷新业界水平新标杆。

无论你的文档版面有多复杂,都可以试试。有需求的小伙伴抓紧去看看吧~

指路链接:

Github:

https://github.com/PaddlePaddle/PaddleOCR

技术报告:

https://arxiv.org/pdf/2510.14528

官方博客:

https://ernie.baidu.com/blog/zh/posts/paddleocr-vl/

HuggingFace:

https://huggingface.co/PaddlePaddle/PaddleOCR-VL

>/ 本期作者:Tashi  & JackCui

>/ JackCui:AI领域从业者,毕业于东北大学,大厂算法工程师,热爱技术分享。

没有评论:

发表评论

离线翻译神器Argos Translate:40+语种,无网也能精准翻译

开源离线翻译工具Argos Translate,支持40余种语言本地互译,无需网络连接。智能语言转换功能实现间接翻译,兼顾隐私与便捷,是出行、无网络环境的翻译利器。 推荐阅读: 70.9K Star!官方ai开发指南!建议收藏! 推荐:一个识别、翻译、阅读与智能分析工具!强到...