Skip to content
共绩算力文档中心

容器化部署 PaddleOCR-VL-0.9B

此镜像提供了标准化的 API 接口,让您能够便捷地通过 API 调用方式 访问和使用所有功能。

本指南详细阐述了在共绩算力平台上,高效部署与使用 PaddleOCR-VL 项目的技术方案。

PaddleOCR-VL-0.9B 是百度 PaddleOCR-VL-0.9B 团队于 2025 年 10 月发布的超轻量级视觉 - 语言模型,专门针对文档解析场景优化。它是 ERNIE-4.5 系列中最强大的衍生模型之一。

1. 在共绩算力上运行 PaddleOCR-VL-0.9B

Section titled “1. 在共绩算力上运行 PaddleOCR-VL-0.9B”

共绩算力平台提供预构建的 PaddleOCR-VL-0.9B 容器镜像,用户无需本地复杂环境配置,可快速完成部署并启用服务。以下是详细部署步骤:

登录共绩算力控制台,在控制台首页点击”弹性部署服务”进入管理页面。首次使用需确保账户已开通弹性部署服务权限。

根据实际需求选择 GPU 型号:

初次使用或调试阶段,推荐配置单张 NVIDIA RTX 4090 GPU

在”服务配置”模块切换至”预制服务”选项卡,选择 PaddleOCR-VL-0.9B 官方镜像。

点击”部署服务”,平台将自动拉取镜像并启动容器。

从快捷访问那里把服务端的 URL 复制出来。

目前这个方案有点麻烦,还是要装一个 paddle 的包,不过CPU 即可运行,享受云端充足算力。

pip install paddlepaddle
pip install "paddleocr[doc-parser]"

参考下面的代码,替换 url 和图片的路径。

URL 后面不需要再拼上:8080 接口,复制过来的只在后面加/v1 就行

from paddleocr import PaddleOCRVL
import time
pipeline = PaddleOCRVL(vl_rec_backend="vllm-server",
vl_rec_server_url="https://deployment-1717-t68kcrlt-8080.550c.cloud/v1")
start_time = time.time()
output = pipeline.predict("./table_test/pdf.png")
end_time = time.time()
print(f"预测耗时:{end_time - start_time:.2f} 秒")
for res in output:
res.print()
res.save_to_json(save_path="output")
res.save_to_markdown(save_path="output")

运行上面的代码,paddle 第一次先要去下载一个 layout 模型,之后会缓存在本地。这个模型可以用 CPU 跑。

然后在共绩算力的后台可以看到请求的日志。

最后再 output 目录下就可以看到 OCR 的结果了。

有了 GPU 速度还是快很多的。昨天在 modelscope 的 gradio demo,用 CPU 跑一张测试图片大概要30 秒,今天同样的图片用了一半 GPU(layout 模型用 CPU,OCR 模型用 GPU)只要10 秒

如果遇到这样的报错

File "D:\code\susu\table_ocr\pdclient\Lib\site-packages\paddleocr\_common_args.py", line 61, in prepare_common_init_args
device = get_default_device()
^^^^^^^^^^^^^^^^^^^^
File "D:\code\susu\table_ocr\pdclient\Lib\site-packages\paddlex\utils\device.py", line 44, in get_default_device
if paddle.device.is_compiled_with_cuda() and paddle.device.cuda.device_count() > 0:
^^^^^^^^^^^^^
AttributeError: module 'paddle' has no attribute 'device'

可以改源码跳过这一段直接返回 cpu。