PaddleOCR 3.5:使用 Transformers 后端运行 OCR 与文档解析

PaddleOCR 3.5:使用 Transformers 后端运行 OCR 与文档解析

PaddleOCR 3.5 让 OCR 和文档解析任务与 Hugging Face 生态更紧密地连接。在这个版本中,受支持的 PaddleOCR 模型可以使用 Hugging Face Transformers 作为推理后端,只需设置:

engine="transformers"

PaddleOCR 继续提供 PP-OCRv5 等 OCR 模型系列,以及 PaddleOCR-VL 1.5 等文档解析模型系列;Transformers 则成为运行这些模型的受支持后端之一。

可在 Hugging Face Spaces 体验在线演示。

发生了哪些变化?

PaddleOCR 3.5 引入了更灵活的推理引擎接口。开发者可以通过 engine 参数选择后端,并通过 engine_config 传入后端专属选项。

具体而言:

  • PaddleOCR 管理这些任务背后的流水线,开发者无需逐一手动调用内部组件。
  • Transformers 成为运行受支持 PaddleOCR 模型的推理后端之一。
  • 可通过 engine_config 配置 dtype、设备分配和注意力实现等后端选项。

可以按以下三个层次理解这套技术栈:

层次 含义 示例
应用层 使用 OCR 和文档解析结果的应用 RAG、智能体、Document AI 等
模型层 提供 OCR 与文档解析能力 PP-OCRv5、PaddleOCR-VL 1.5 等
推理后端层 运行受支持模型的运行时 Paddle 静态图、Paddle 动态图、Transformers

本次发布主要涉及推理后端层。PaddleOCR 继续提供 OCR 与文档解析能力,Transformers 则为受支持模型增加一个适合 Hugging Face 技术栈的运行选项。更完整的 Document AI 工作流仍由开发者和应用构建者设计。

为什么这很重要?

对于 RAG、Document AI 和文档智能体应用,困难往往在调用大语言模型之前就开始了。

开发者首先需要将 PDF、扫描文档、截图、表格、图表、公式和复杂页面布局转换为可靠的结构化数据。如果文档接入环节薄弱,后续大语言模型工作流就可能遗漏关键信息、检索错误的上下文,或生成不可靠的答案。

PaddleOCR 通过 PP-OCRv5 等 OCR 模型系列和 PaddleOCR-VL-1.5 等文档解析模型系列,帮助解决这一文档接入问题。

在 PaddleOCR 3.5 中,这些能力更容易接入以 Transformers 为中心的技术栈。受支持模型可以在 Transformers 后端上运行,而 PaddleOCR 继续在内部管理 OCR 或文档解析流水线。

对开发者而言,这减少了集成阻力,让文档更自然地进入后续 RAG、智能体、搜索、分析或自动化工作流。

快速开始

安装 PaddleOCR 3.5、PaddleX、Transformers,以及与硬件兼容的 PyTorch 版本。例如 CUDA 12.6 环境:

python -m pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
python -m pip install "paddleocr==3.5.0" "paddlex==3.5.2" "transformers>=5.4.0"

CPU、ROCm 或其他环境应安装匹配目标硬件的 PyTorch 构建版本。

从命令行运行:

paddleocr ocr \
  -i https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_002.png \
  --device gpu:0 \
  --engine transformers

也可以使用 Python API:

from paddleocr import PaddleOCR

pipeline = PaddleOCR(
    device="gpu:0",
    engine="transformers",
    use_doc_orientation_classify=False,
    use_doc_unwarping=False,
    use_textline_orientation=False,
    engine_config={
        "dtype": "float32",
    },
)

results = pipeline.predict(
    "https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_002.png"
)
for result in results:
    print(result)

为了获得更广泛的兼容性,Hugging Face Space 使用 float32。针对自己的硬件,可以通过 engine_config 调整后端专属选项:

engine_config = {
    "dtype": "bfloat16",
    "device_type": "gpu",
    "device_id": 0,
    "attn_implementation": "sdpa",
}

最佳配置取决于模型、硬件和部署环境。

何时适合使用 Transformers 后端?

当你希望 PaddleOCR 的 OCR 和文档解析能力更自然地接入以 Hugging Face 为中心的技术栈时,可以使用 Transformers 后端。

如果正在构建 RAG、Document AI、搜索、分析或智能体应用,并且已经用 PyTorch / Transformers 基础设施管理模型加载、实验、部署或模型产物,这种后端尤其有帮助。

它适合以下目标:

  • 为已使用 Transformers 的团队提供更熟悉的开发体验。
  • 通过兼容 Hub 的方式发现和分发受支持的 PaddleOCR 模型。
  • 更容易与现有 PyTorch / Transformers 服务集成。

本次发布的目的不是用一个后端替换另一个,而是增加灵活性:使用 PaddleOCR 提供 OCR 与文档解析能力,再选择最适合现有技术栈的推理后端。

立即体验

在 Hugging Face Spaces 试用 PaddleOCR 3.5 Transformers 演示,或在 Hub 上浏览 PaddleOCR 模型。

PaddleOCR 3.5 让 OCR 和文档解析能力更贴近 Transformers 工作流,同时保留了由开发者围绕这些能力构建完整 Document AI 应用的自由。

相关资源

致谢

作者感谢参与 PaddleOCR 3.5 Transformers 集成的 Hugging Face 工程师。特别感谢 Anton Vlasjuk 全程参与,包括审查和合并所有相关 PR;也感谢 Raushan Turganbay 与 Yoni Gozlan 提供的 PR 审查和反馈。他们的指导帮助改善了面向 Hugging Face 社区的集成质量、文档和开发者体验。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容