|
|
před 1 týdnem | |
|---|---|---|
| .. | ||
| README.md | před 1 týdnem | |
| dotsocr_vllm_daemon.sh | před 1 týdnem | |
| mineru_vllm_daemon.sh | před 1 týdnem | |
| paddle_vllm_daemon.sh | před 1 týdnem | |
| ppstructure_v3_daemon.sh | před 1 týdnem | |
本目录包含所有 OCR 工具的服务端守护进程脚本,用于启动和管理 HTTP API 服务。
这些守护进程脚本用于在服务器上启动和管理各种 OCR 服务的 HTTP API 端点。客户端工具(位于 ocr_tools/*_tool/ 目录)可以通过这些 API 端点调用远程服务进行文档处理。
| 脚本文件 | 服务类型 | 默认端口 | 服务 URL |
|---|---|---|---|
mineru_vllm_daemon.sh |
MinerU vLLM | 8121 | http://localhost:8121 |
ppstructure_v3_daemon.sh |
PP-StructureV3 API | 8111 | http://localhost:8111/layout-parsing |
paddle_vllm_daemon.sh |
PaddleOCR-VL vLLM | 8110 | http://localhost:8110 |
dotsocr_vllm_daemon.sh |
DotsOCR vLLM | 8101 | http://localhost:8101 |
| 服务端脚本 | 客户端工具 | 服务类型 | 默认端口 | API 端点 |
|---|---|---|---|---|
mineru_vllm_daemon.sh |
mineru_vl_tool/main.py |
MinerU vLLM | 8121 | http://localhost:8121 |
ppstructure_v3_daemon.sh |
ppstructure_tool/api_client.py |
PP-StructureV3 API | 8111 | http://localhost:8111/layout-parsing |
paddle_vllm_daemon.sh |
paddle_vl_tool/main.py |
PaddleOCR-VL vLLM | 8110 | http://localhost:8110 |
dotsocr_vllm_daemon.sh |
dots.ocr_vl_tool/main.py |
DotsOCR vLLM | 8101 | http://localhost:8101 |
所有脚本都支持以下命令:
# 启动服务
./script_name.sh start
# 停止服务
./script_name.sh stop
# 重启服务
./script_name.sh restart
# 查看服务状态
./script_name.sh status
# 查看日志(实时)
./script_name.sh logs
# 查看配置
./script_name.sh config
# 测试 API(如果支持)
./script_name.sh test
# 启动 MinerU vLLM 服务
cd ocr_tools/daemons
./mineru_vllm_daemon.sh start
# 查看服务状态
./mineru_vllm_daemon.sh status
# 查看日志
./mineru_vllm_daemon.sh logs
服务类型:MinerU vLLM 服务
配置参数:
CONDA_ENV: conda 环境名称(默认: mineru2)PORT: 服务端口(默认: 8121)HOST: 服务主机(默认: 0.0.0.0)MODEL_PATH: 模型路径MODEL_NAME: 模型名称(默认: MinerU2.5)GPU_MEMORY_UTILIZATION: GPU 内存利用率(默认: 0.3)CUDA_VISIBLE_DEVICES: 可见的 CUDA 设备(默认: 4)启动方法:
./mineru_vllm_daemon.sh start
服务 URL:
http://localhost:8121http://localhost:8121/docs依赖环境:
mineru2mineru-vllm-server客户端使用:
# 使用 mineru_vl_tool 调用服务
cd ../mineru_vl_tool
python main.py --input document.pdf --output_dir ./output --server_url http://localhost:8121
服务类型:PP-StructureV3 API 服务
配置参数:
CONDA_ENV: conda 环境名称(默认: paddle)PORT: 服务端口(默认: 8111)CUDA_VISIBLE_DEVICES: 可见的 CUDA 设备(默认: 7)SCRIPT_DIR: PaddleX 脚本目录PIPELINE_CONFIG: Pipeline 配置文件路径启动方法:
./ppstructure_v3_daemon.sh start
服务 URL:
http://localhost:8111/layout-parsinghttp://localhost:8111/docs依赖环境:
paddlepaddlexstart_paddlex_with_adapter.py(位于 ocr_tools/paddle_common/ 目录)配置说明:
PADDLE_COMMON_DIR 需要根据实际部署环境设置为 ocr_platform/ocr_tools/paddle_common 的绝对路径paddle_common/config/ 中的配置文件客户端使用:
# 使用 ppstructure_tool/api_client.py 调用服务
cd ../ppstructure_tool
python api_client.py --input document.pdf --output_dir ./output --api_url http://localhost:8111/layout-parsing
服务类型:PaddleOCR-VL vLLM 服务
配置参数:
CONDA_ENV: conda 环境名称(默认: paddle)PORT: 服务端口(默认: 8110)HOST: 服务主机(默认: 0.0.0.0)MODEL_NAME: 模型名称(默认: PaddleOCR-VL-0.9B)BACKEND: 后端类型(默认: vllm)GPU_MEMORY_UTILIZATION: GPU 内存利用率(默认: 0.3)CUDA_VISIBLE_DEVICES: 可见的 CUDA 设备(默认: 3)启动方法:
./paddle_vllm_daemon.sh start
服务 URL:
http://localhost:8110http://localhost:8110/docs依赖环境:
paddle需要安装: paddlex 和 genai-vllm-server 插件
paddlex --install genai-vllm-server
客户端使用:
# 使用 paddle_vl_tool 调用服务(通过配置文件指定 vLLM 服务器)
cd ../paddle_vl_tool
python main.py --input document.pdf --output_dir ./output \
--pipeline ../paddle_common/config/PaddleOCR-VL-Client.yaml
服务类型:DotsOCR vLLM 服务
配置参数:
CONDA_ENV: conda 环境名称(默认: dots.ocr)PORT: 服务端口(默认: 8101)HOST: 服务主机(默认: 0.0.0.0)HF_MODEL_PATH: HuggingFace 模型路径MODEL_NAME: 模型名称(默认: DotsOCR)GPU_MEMORY_UTILIZATION: GPU 内存利用率(默认: 0.70)CUDA_VISIBLE_DEVICES: 可见的 CUDA 设备(默认: 1,2)DATA_PARALLEL_SIZE: 数据并行大小(默认: 2)启动方法:
./dotsocr_vllm_daemon.sh start
服务 URL:
http://localhost:8101http://localhost:8101/docs依赖环境:
dots.ocrvllm客户端使用:
# 使用 dots.ocr_vl_tool 调用服务
cd ../dots.ocr_vl_tool
python main.py --input document.pdf --output_dir ./output --ip localhost --port 8101
在部署前,请根据实际环境调整脚本中的配置参数:
/home/ubuntu/zhch/logs,可根据需要修改CUDA_VISIBLE_DEVICES# 为所有脚本添加执行权限
chmod +x *.sh
可以创建 systemd 服务文件来管理这些守护进程,实现自动启动和重启:
[Unit]
Description=MinerU vLLM Service
After=network.target
[Service]
Type=forking
User=ubuntu
WorkingDirectory=/path/to/ocr_platform/ocr_tools/daemons
ExecStart=/path/to/ocr_platform/ocr_tools/daemons/mineru_vllm_daemon.sh start
ExecStop=/path/to/ocr_platform/ocr_tools/daemons/mineru_vllm_daemon.sh stop
Restart=always
[Install]
WantedBy=multi-user.target
所有服务的日志文件位于 /home/ubuntu/zhch/logs/ 目录:
mineru_vllm.log - MinerU vLLM 服务日志ppstructurev3.log - PP-StructureV3 服务日志paddleocr_vl_vllm.log - PaddleOCR-VL vLLM 服务日志vllm.log - DotsOCR vLLM 服务日志建议定期清理或轮转日志文件。
可能原因:
解决方法:
./script_name.sh config 检查配置conda env listwhich python, which mineru-vllm-server 等netstat -tuln | grep :PORTnvidia-smi可能原因:
解决方法:
./script_name.sh status 检查服务状态./script_name.sh logs可能原因:
解决方法:
GPU_MEMORY_UTILIZATION 参数CUDA_VISIBLE_DEVICES)可能原因:
解决方法:
which vllmls -la $HF_MODEL_PATHecho $PYTHONPATH