PaddleOCR-VL本地部署流程
PaddleOCR-VL本地部署流程
- 1、项目部署:
- 2、测试:
1、项目部署:
拉取官方Docker镜像
docker run \-it \-v /data_4/googosoft_file/PaddleOCR-VL:/home/data \-v /dev/shm:/dev/shm \--gpus all \-p 7777:7777 \ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlex-genai-vllm-server \paddlex_genai_server --model_name PaddleOCR-VL-0.9B --host 0.0.0.0 --port 7777 --backend vllm
执行完毕上述语句后,其会自动进入该容器拉取模型,加载模型,以后再次在该容器内加载模型可以执行语句如下:
如果不想每次让其容器运行后加载程,可以执行如下语句:
docker run -it \-v /data_4/googosoft_file/PaddleOCR-VL:/home/data \-v /dev/shm:/dev/shm \--gpus all \-p 7777:7777 \--entrypoint /bin/bash \ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlex-genai-vllm-server
然后执行如下语句,启动模型,并指定端口号
# 其会检测本地是否存在模型,不存在的话,会自动下载
paddlex_genai_server --model_name PaddleOCR-VL-0.9B --host 0.0.0.0 --port 7777 --backend vllm

也可以加载本地模型,语句如下:
paddlex_genai_server --model_name PaddleOCR-VL-0.9B --host 0.0.0.0 --model_dir /home/data/paddle-ocr-model --port 7777 --backend vllm
测试:
启动成功后,可以执行如下语句查看:
curl http://127.0.0.1:7777/v1/models
可以使用图片进行识别:
paddlex_genai_server --model_name PaddleOCR-VL-0.9B --host 0.0.0.0 --model_dir /home/data/paddle-ocr-model --port 7777 --backend vllm

上述模型启动完毕!!
2、测试:
安装paddlex并启动
# 拉取基础镜像
# 基于nVidia官方镜像nvcr.io/nvidia/tritonserver:24.08-py3构建paddlex镜像
docker pull nvcr.io/nvidia/tritonserver:24.08-py3
进入容器
进入镜像,应用默认起在8000端口,需要挂载当前目录,并指配gpu使用的卡(这里使用0号GPU卡)
设置环境变量
PADDLE_PDX_MODEL_SOURCE=bos
PADDLEX_HPS_DEVICE_TYPE=gpu
docker run \-it \-p 9965:8000 \-e PADDLE_PDX_MODEL_SOURCE=bos \-e PADDLEX_HPS_DEVICE_TYPE=gpu \--name PaddleOCR-VL-Inference\-v "$(pwd)":/app \-w /app \--gpus device=0 \--init \--shm-size 8g \nvcr.io/nvidia/tritonserver:24.08-py3 \/bin/bash
安装依赖
注意:此处paddlepaddle-gpu、paddlex版本需按下方命令的版本安装,老版本少了一些功能,会导致无法拉取PaddleOCR-VL产线配置文件
pip install paddlepaddle-gpu==3.2.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/
pip install paddlex==3.3.3 -i https://pypi.tuna.tsinghua.edu.cn/simpleapt-get update或apt-get --allow-insecure-repositories update
apt-get install -y libgl1-mesa-glx
apt-get install -y ccachepip install "paddlex[ocr]" -i https://pypi.tuna.tsinghua.edu.cn/simple# 这行命令在网络不好的时候容易失败,多试几次,如果一直提示某个依赖下载失败,可手工下载,如pip install "aiohttp>=3.9" -i https://pypi.tuna.tsinghua.edu.cn/simple
paddlex --install serving
验证是否安装完成
paddlex --pipeline OCR \--input https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_001.png \--use_doc_orientation_classify False \--use_doc_unwarping False \--use_textline_orientation False \--save_path ./output \--device gpu:0
至此,paddlex已安装完成,接下来需要安装客户端插件:genai-client
安装genai-client
paddlex --install genai-client
拉取PaddleOCR-VL产线配置文件
paddlex --get_pipeline_config PaddleOCR-VL
拉取配置文件后,会有一个PaddleOCR-VL.yaml文件,需要改一下PaddleOCR-VL.yaml这个文件的配置,参照官方
VLRecognition:...genai_config:backend: vllm-serverserver_url: http://127.0.0.1:8118/v1 #这里的url是PaddleOCR-VL-0.9B启动后提示的url
测试PaddleOCR-VL是否正常运行
wget https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/paddleocr_vl_demo.png
paddlex --pipeline PaddleOCR-VL.yaml --input paddleocr_vl_demo.png
以上命令执行完之后,有识别图片的文字即为正常
