Skip to content

Commit 48f4e26

Browse files
committed
add vl-dcu docs
1 parent c16ac8e commit 48f4e26

File tree

1 file changed

+143
-0
lines changed

1 file changed

+143
-0
lines changed
Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
---
2+
comments: true
3+
---
4+
5+
# PaddleOCR-VL-DCU 环境配置教程
6+
7+
本教程是 DCU 的环境配置教程,目的是完成相关的环境配置,环境配置完毕后请参考 [PaddleOCR-VL 使用教程](./PaddleOCR-VL.md) 使用 PaddleOCR-VL。
8+
9+
## 1. 环境准备
10+
11+
此步骤主要介绍如何搭建 PaddleOCR-VL 的运行环境,有以下两种方式,任选一种即可:
12+
13+
- 方法一:使用官方 Docker 镜像。
14+
15+
- 方法二:手动安装 PaddlePaddle 和 PaddleOCR。
16+
17+
### 1.1 方法一:使用 Docker 镜像
18+
19+
我们推荐使用官方 Docker 镜像(要求 Docker 版本 >= 19.03):
20+
21+
```shell
22+
docker run -it \
23+
--rm \
24+
--user root \
25+
--privileged \
26+
--device /dev/kfd \
27+
--device /dev/dri \
28+
--device /dev/mkfd \
29+
--group-add video \
30+
--cap-add SYS_PTRACE \
31+
--security-opt seccomp=unconfined \
32+
-v /opt/hyhal/:/opt/hyhal/:ro \
33+
--shm-size=64G \
34+
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddleocr-vl:latest-dcu-offline \
35+
/bin/bash
36+
# 在容器中调用 PaddleOCR CLI 或 Python API
37+
```
38+
39+
### 1.2 方法二:手动安装 PaddlePaddle 和 PaddleOCR
40+
41+
如果您无法使用 Docker,也可以手动安装 PaddlePaddle 和 PaddleOCR。要求 Python 版本为 3.8–3.12。
42+
43+
**我们强烈推荐您在虚拟环境中安装 PaddleOCR-VL,以避免发生依赖冲突。** 例如,使用 Python venv 标准库创建虚拟环境:
44+
45+
```shell
46+
# 创建虚拟环境
47+
python -m venv .venv_paddleocr
48+
# 激活环境
49+
source .venv_paddleocr/bin/activate
50+
```
51+
52+
执行如下命令完成安装:
53+
54+
```shell
55+
python -m pip install paddlepaddle-dcu==3.2.1 -i https://www.paddlepaddle.org.cn/packages/stable/dcu/
56+
python -m pip install -U "paddleocr[doc-parser]"
57+
python -m pip install https://paddle-whl.bj.bcebos.com/nightly/cu126/safetensors/safetensors-0.6.2.dev0-cp38-abi3-linux_x86_64.whl
58+
```
59+
60+
> **请注意安装 3.2.1 及以上版本的飞桨框架,同时安装特殊版本的 safetensors。**
61+
62+
## 2. 快速开始
63+
64+
请参考[PaddleOCR-VL 使用教程](./PaddleOCR-VL.md)相同章节。
65+
66+
## 3. 使用推理加速框架提升 VLM 推理性能
67+
68+
默认配置下的推理性能未经过充分优化,可能无法满足实际生产需求。此步骤主要介绍如何使用 vLLM 推理加速框架来提升 PaddleOCR-VL 的推理性能。
69+
70+
### 3.1 启动 VLM 推理服务
71+
72+
PaddleOCR 提供了 Docker 镜像,用于快速启动 vLLM 推理服务。可使用以下命令启动服务(要求 Docker 版本 >= 19.03):
73+
74+
```shell
75+
docker run -it \
76+
--rm \
77+
--user root \
78+
--privileged \
79+
--device /dev/kfd \
80+
--device /dev/dri \
81+
--device /dev/mkfd \
82+
--group-add video \
83+
--cap-add SYS_PTRACE \
84+
--security-opt seccomp=unconfined \
85+
-v /opt/hyhal/:/opt/hyhal/:ro \
86+
--shm-size=64G \
87+
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddleocr-genai-vllm-server:latest-dcu-offline \
88+
paddleocr genai_server --model_name PaddleOCR-VL-0.9B --host 0.0.0.0 --port 8118 --backend vllm
89+
```
90+
91+
### 3.2 客户端使用方法
92+
93+
请参考[PaddleOCR-VL 使用教程](./PaddleOCR-VL.md) 相同章节。
94+
95+
## 4. 服务化部署
96+
97+
>请注意,本节所介绍 PaddleOCR-VL 服务与上一节中的 VLM 推理服务有所区别:后者仅负责完整流程中的一个环节(即 VLM 推理),并作为前者的底层服务被调用。
98+
99+
此步骤主要介绍如何使用 Docker Compose 将 PaddleOCR-VL 部署为服务并调用,具体流程如下:
100+
101+
1.[此处](https://github.com/PaddlePaddle/PaddleOCR/blob/main/deploy/paddleocr_vl_docker/compose_dcu.yaml) 复制内容保存为 `compose.yaml` 文件。
102+
103+
2. 复制以下内容并保存为 `.env` 文件:
104+
105+
```
106+
API_IMAGE_TAG_SUFFIX=latest-dcu-offline
107+
VLM_BACKEND=vllm
108+
VLM_IMAGE_TAG_SUFFIX=latest-dcu-offline
109+
```
110+
111+
3. 在 `compose.yaml` 和 `.env` 文件所在目录下执行以下命令启动服务器,默认监听 **8080** 端口:
112+
113+
```shell
114+
# 必须在 compose.yaml 和 .env 文件所在的目录中执行
115+
docker compose up
116+
```
117+
118+
启动后将看到类似如下输出:
119+
120+
```text
121+
paddleocr-vl-api | INFO: Started server process [1]
122+
paddleocr-vl-api | INFO: Waiting for application startup.
123+
paddleocr-vl-api | INFO: Application startup complete.
124+
paddleocr-vl-api | INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
125+
```
126+
127+
此方式基于 vLLM 框架对 VLM 推理进行加速,更适合生产环境部署。
128+
129+
此外,使用此方式启动服务器后,除拉取镜像外,无需连接互联网。如需在离线环境中部署,可先在联网机器上拉取 Compose 文件中涉及的镜像,导出并传输至离线机器中导入,即可在离线环境下启动服务。
130+
131+
如需调整产线相关配置(如模型路径、批处理大小、部署设备等),可参考 4.4 小节。
132+
133+
### 4.3 客户端调用方式
134+
135+
请参考[PaddleOCR-VL 使用教程](./PaddleOCR-VL.md) 相同章节。
136+
137+
### 4.4 产线配置调整说明
138+
139+
请参考[PaddleOCR-VL 使用教程](./PaddleOCR-VL.md) 相同章节。
140+
141+
## 5. 模型微调
142+
143+
请参考[PaddleOCR-VL 使用教程](./PaddleOCR-VL.md) 相同章节。

0 commit comments

Comments
 (0)