本文为PaddleClas全流程文档第二篇,介绍基于PaddleHub Serving部署其服务功能。涵盖准备环境、下载推理模型、安装服务模块、启动服务(命令行和配置文件两种方式)、发送预测请求及自定义修改服务模块等步骤,还说明了相关参数和结果格式。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

deploy/hubserving/clas/ └─ __init__.py 空文件,必选 └─ config.json 配置文件,可选,使用配置启动服务时作为参数传入 └─ module.py 主模块,必选,包含服务的完整逻辑 └─ params.py 参数文件,必选,包含模型路径、前后处理参数等参数


# 安装paddlehub2.0版本 pip3 install paddlehub==2.0.0b1 --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple

安装服务模块前,需要准备推理模型并放到正确路径,默认模型路径为:
分类推理模型结构文件:./inference/cls_infer.pdmodel 分类推理模型权重文件:./inference/cls_infer.pdiparams
模型路径可在deploy/hubserving/clas/params.py中查看和修改。


# 进入目录cd /d E:\PaddleClas-release-2.0# 安装服务模块: hub install deploy\hubserving\clas\

启动命令:
$ hub serving start --modules Module1==Version1 \
                    --port XXXX \
                    --use_multiprocess \
                    --workers \参数:
| 参数 | 用途 | 
|---|---|
| --modules/-m | [必选] PaddleHub Serving预安装模型,以多个Module==Version键值对的形式列出 当不指定Version时,默认选择最新版本 | 
| --port/-p | [可选] 服务端口,默认为8866 | 
| --use_multiprocess | [可选] 是否启用并发方式,默认为单进程方式,推荐多核CPU机器使用此方式 Windows操作系统只支持单进程方式 | 
| --workers | [可选] 在并发方式下指定的并发任务数,默认为2*cpu_count-1,其中cpu_count为CPU核数 | 
如按默认参数启动服务: hub serving start -m clas_system
这样就完成了一个服务化API的部署,使用默认端口号8866。
启动命令:
hub serving start -c config.json
其中config.json在目录deploy/hubserving/clas/内,格式如下:
{    "modules_info": {        "clas_system": {            "init_args": {                "version": "1.0.0",                "use_gpu": true,                "enable_mkldnn": false
            },            "predict_args": {
            }
        }
    },    "port": 8866,    "use_multiprocess": false,    "workers": 2}注意:
如,使用GPU 0号卡启动串联服务(Windows 下不支持多卡一般使用0号卡,如果有问题可以尝试禁用其他显卡只保留一张使用):
set CUDA_VISIBLE_DEVICES=0 hub serving start -c deploy/hubserving/clas/config.json

python tools/test_hubserving.py server_url image_path
python tools/test_hubserving.py http://127.0.0.1:8866/predict/clas_system ./dataset/cat_12/cat_12_train/0aSixIFj9X73z41LMDUQ6ZykwnBA5YJW.jpg

list: 返回结果└─ list: 第一张图片结果 └─ list: 前k个分类结果,依score递减排序 └─ list: 前k个分类结果对应的score,依score递减排序 └─ float: 该图分类耗时,单位秒
说明: 如果需要增加、删除、修改返回字段,可在相应模块的module.py文件中进行修改,完整流程参考下一节自定义修改服务模块。
1、 停止服务
hub serving stop --port/-p XXXX
2、 到相应的module.py和params.py等文件中根据实际需求修改代码。
例如,例如需要替换部署服务所用模型,则需要到params.py中修改模型路径参数cfg.model_file和cfg.params_file。
修改并安装(hub install deploy/hubserving/clas/)完成后,在进行部署前,可通过python deploy/hubserving/clas/test.py测试已安装服务模块。
3、 卸载旧服务包
hub uninstall clas_system
4、 安装修改后的新服务包
hub install deploy/hubserving/clas/
5、重新启动服务
hub serving start -m clas_system
以上就是Windows:PaddleClas基于Hub Serving的服务部署(二)的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号