Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleClas
提交
03eac7e7
P
PaddleClas
项目概览
PaddlePaddle
/
PaddleClas
大约 1 年 前同步成功
通知
115
Star
4999
Fork
1114
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
19
列表
看板
标记
里程碑
合并请求
6
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleClas
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
19
Issue
19
列表
看板
标记
里程碑
合并请求
6
合并请求
6
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
03eac7e7
编写于
6月 17, 2022
作者:
H
HtdrogenSulfate
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update docs
上级
ec6b19eb
变更
14
隐藏空白更改
内联
并排
Showing
14 changed file
with
42 addition
and
22 deletion
+42
-22
README_ch.md
README_ch.md
+2
-2
deploy/paddleserving/readme.md
deploy/paddleserving/readme.md
+9
-9
deploy/paddleserving/recognition/readme.md
deploy/paddleserving/recognition/readme.md
+24
-4
deploy/paddleserving/recognition/run_cpp_serving.sh
deploy/paddleserving/recognition/run_cpp_serving.sh
+2
-2
docs/zh_CN/inference_deployment/classification_serving_deploy.md
..._CN/inference_deployment/classification_serving_deploy.md
+1
-0
docs/zh_CN/inference_deployment/cpp_deploy.md
docs/zh_CN/inference_deployment/cpp_deploy.md
+0
-0
docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md
docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md
+0
-0
docs/zh_CN/inference_deployment/deployment/paddle_classification_serving_deploy.md
...oyment/deployment/paddle_classification_serving_deploy.md
+0
-1
docs/zh_CN/inference_deployment/deployment/paddle_recognition_serving_deploy.md
...eployment/deployment/paddle_recognition_serving_deploy.md
+0
-1
docs/zh_CN/inference_deployment/paddle_hub_serving_deploy.md
docs/zh_CN/inference_deployment/paddle_hub_serving_deploy.md
+0
-0
docs/zh_CN/inference_deployment/paddle_lite_deploy.md
docs/zh_CN/inference_deployment/paddle_lite_deploy.md
+0
-0
docs/zh_CN/inference_deployment/python_deploy.md
docs/zh_CN/inference_deployment/python_deploy.md
+3
-3
docs/zh_CN/inference_deployment/recognition_serving_deploy.md
.../zh_CN/inference_deployment/recognition_serving_deploy.md
+1
-0
docs/zh_CN/inference_deployment/whl_deploy.md
docs/zh_CN/inference_deployment/whl_deploy.md
+0
-0
未找到文件。
README_ch.md
浏览文件 @
03eac7e7
...
...
@@ -78,7 +78,7 @@ PP-ShiTu图像识别快速体验:[点击这里](./docs/zh_CN/quick_start/quick
-
推理部署
-
[
基于python预测引擎推理
](
docs/zh_CN/inference_deployment/python_deploy.md#1
)
-
[
基于C++预测引擎推理
](
docs/zh_CN/inference_deployment/cpp_deploy.md
)
-
[
服务化部署
](
docs/zh_CN/inference_deployment/
paddle
_serving_deploy.md
)
-
[
服务化部署
](
docs/zh_CN/inference_deployment/
classification
_serving_deploy.md
)
-
[
端侧部署
](
docs/zh_CN/inference_deployment/paddle_lite_deploy.md
)
-
[
Paddle2ONNX模型转化与预测
](
deploy/paddle2onnx/readme.md
)
-
[
模型压缩
](
deploy/slim/README.md
)
...
...
@@ -93,7 +93,7 @@ PP-ShiTu图像识别快速体验:[点击这里](./docs/zh_CN/quick_start/quick
-
推理部署
-
[
基于python预测引擎推理
](
docs/zh_CN/inference_deployment/python_deploy.md#2
)
-
[
基于C++预测引擎推理
](
deploy/cpp_shitu/readme.md
)
-
[
服务化部署
](
docs/zh_CN/inference_deployment/
paddle
_serving_deploy.md
)
-
[
服务化部署
](
docs/zh_CN/inference_deployment/
recognition
_serving_deploy.md
)
-
[
端侧部署
](
deploy/lite_shitu/README.md
)
-
PP系列骨干网络模型
-
[
PP-HGNet
](
docs/zh_CN/models/PP-HGNet.md
)
...
...
deploy/paddleserving/readme.md
浏览文件 @
03eac7e7
...
...
@@ -112,7 +112,7 @@ python3.7 -m pip install paddle-serving-server-gpu==0.7.0.post112 # GPU with CUD
└── serving_client_conf.stream.prototxt
```
-
Serving 为了兼容不同模型的部署,提供了输入输出重命名的功能。让不同的模型在推理部署时,只需要修改配置文件的
`alias_name`
即可,无需修改代码即可完成推理部署。因此在转换完毕后需要分别修改
`ResNet50_vd_serving`
和
`ResNet50_vd_client`
下文件
`serving_server_conf.prototxt`
中的 alias 名字,将
`fetch_var`
中的
`alias_name`
改为
`prediction`
,修改后的 serving_server_conf.prototxt
如下所示:
-
Serving 为了兼容不同模型的部署,提供了输入输出重命名的功能。让不同的模型在推理部署时,只需要修改配置文件的
`alias_name`
即可,无需修改代码即可完成推理部署。因此在转换完毕后需要分别修改
`ResNet50_vd_serving`
下的文件
`serving_server_conf.prototxt`
和
`ResNet50_vd_client`
下的文件
`serving_client_conf.prototxt`
,将
`fetch_var`
中
`alias_name:`
后的字段改为
`prediction`
,修改后的
`serving_server_conf.prototxt`
和
`serving_client_conf.prototxt`
如下所示:
```
log
feed_var {
name: "inputs"
...
...
@@ -159,7 +159,7 @@ test_cpp_serving_client.py # rpc方式发送C++ serving预测请求的脚本
# 发送服务请求
python3.7 pipeline_http_client.py
```
成功运行后,模型预测的结果会打印在
cmd 窗口中,结果如下
:
成功运行后,模型预测的结果会打印在
客户端中,如下所示
:
```
log
{'err_no': 0, 'err_msg': '', 'key': ['label', 'prob'], 'value': ["['daisy']", '[0.9341402053833008]'], 'tensors': []}
```
...
...
@@ -180,11 +180,11 @@ test_cpp_serving_client.py # rpc方式发送C++ serving预测请求的脚本
# 进入工作目录
cd
PaddleClas/deploy/paddleserving
# 一键编译安装Serving server、设置 SERVING_BIN
bash
./build_server.sh python3.7
source
./build_server.sh python3.7
```
**注:**
[
build_server.sh
](
./build_server.sh#L55-L62
)
所设定的路径可能需要根据实际机器上的环境如CUDA、python版本等作一定修改,然后再编译。
-
修改客户端文件
`ResNet50_client/serving_client_conf.prototxt`
,将
`feed_type:`
后的字段改为20,将第一个
`shape:`
后的字段改为1并删掉其余的
`shape`
字段。
-
修改客户端文件
`ResNet50_
vd_
client/serving_client_conf.prototxt`
,将
`feed_type:`
后的字段改为20,将第一个
`shape:`
后的字段改为1并删掉其余的
`shape`
字段。
```
log
feed_var {
name: "inputs"
...
...
@@ -195,16 +195,16 @@ test_cpp_serving_client.py # rpc方式发送C++ serving预测请求的脚本
}
```
-
修改
[
`test_cpp_serving_client`
](
./test_cpp_serving_client.py
)
的部分代码
1.
修改
[
`
feed={"inputs": image}`
](
./test_cpp_serving_client.py#L28
)
部分代码,将
`load_client_config`
后的路径改为
`ResNet50
_client/serving_client_conf.prototxt`
。
2.
修改
[
`feed={"inputs": image}`
](
./test_cpp_serving_client.py#L45
)
部分代码,将
`inputs`
改为与
`ResNet50
_client/serving_client_conf.prototxt`
中
`feed_var`
字段下面的
`name`
一致。由于部分模型client文件中的
`name`
为
`x`
而不是
`inputs`
,因此使用这些模型进行C++ Serving部署时需要注意这一点。
1.
修改
[
`
load_client_config`
](
./test_cpp_serving_client.py#L28
)
处的代码,将
`load_client_config`
后的路径改为
`ResNet50_vd
_client/serving_client_conf.prototxt`
。
2.
修改
[
`feed={"inputs": image}`
](
./test_cpp_serving_client.py#L45
)
处的代码,将
`inputs`
改为与
`ResNet50_vd
_client/serving_client_conf.prototxt`
中
`feed_var`
字段下面的
`name`
一致。由于部分模型client文件中的
`name`
为
`x`
而不是
`inputs`
,因此使用这些模型进行C++ Serving部署时需要注意这一点。
-
启动服务:
```
shell
# 启动服务, 服务在后台运行,运行日志保存在 nohup.txt
# CPU部署
sh run_cpp_serving.sh
ba
sh run_cpp_serving.sh
# GPU部署并指定0号卡
sh run_cpp_serving.sh 0
ba
sh run_cpp_serving.sh 0
```
-
发送请求:
...
...
@@ -212,7 +212,7 @@ test_cpp_serving_client.py # rpc方式发送C++ serving预测请求的脚本
# 发送服务请求
python3.7 test_cpp_serving_client.py
```
成功运行后,模型预测的结果会打印在
cmd 窗口中,结果如下
:
成功运行后,模型预测的结果会打印在
客户端中,如下所示
:
```
log
prediction: daisy, probability: 0.9341399073600769
```
...
...
deploy/paddleserving/recognition/readme.md
浏览文件 @
03eac7e7
...
...
@@ -119,6 +119,26 @@ python3.7 -m pip install paddle-serving-server-gpu==0.7.0.post112 # GPU with CUD
```
上述命令的参数含义与
[
#3.1 模型转换
](
#3.1
)
相同
识别推理模型转换完成后,会在当前文件夹多出
`general_PPLCNet_x2_5_lite_v1.0_serving/`
和
`general_PPLCNet_x2_5_lite_v1.0_client/`
的文件夹。分别修改
`general_PPLCNet_x2_5_lite_v1.0_serving/`
和
`general_PPLCNet_x2_5_lite_v1.0_client/`
目录下的
`serving_server_conf.prototxt`
中的
`alias`
名字: 将
`fetch_var`
中的
`alias_name`
改为
`features`
。 修改后的
`serving_server_conf.prototxt`
内容如下
```
log
feed_var {
name: "x"
alias_name: "x"
is_lod_tensor: false
feed_type: 1
shape: 3
shape: 224
shape: 224
}
fetch_var {
name: "save_infer_model/scale_0.tmp_1"
alias_name: "features"
is_lod_tensor: false
fetch_type: 1
shape: 512
}
```
通用检测 inference 模型转换完成后,会在当前文件夹多出
`picodet_PPLCNet_x2_5_mainbody_lite_v1.0_serving/`
和
`picodet_PPLCNet_x2_5_mainbody_lite_v1.0_client/`
的文件夹,具备如下结构:
```
shell
├── picodet_PPLCNet_x2_5_mainbody_lite_v1.0_serving/
...
...
@@ -182,7 +202,7 @@ python3.7 -m pip install paddle-serving-server-gpu==0.7.0.post112 # GPU with CUD
```
shell
python3.7 pipeline_http_client.py
```
成功运行后,模型预测的结果会打印在
cmd 窗口中,结果如下
:
成功运行后,模型预测的结果会打印在
客户端中,如下所示
:
```
log
{'err_no': 0, 'err_msg': '', 'key': ['result'], 'value': ["[{'bbox': [345, 95, 524, 576], 'rec_docs': '红牛-强化型', 'rec_scores': 0.79903316}]"], 'tensors': []}
```
...
...
@@ -219,9 +239,9 @@ python3.7 -m pip install paddle-serving-server-gpu==0.7.0.post112 # GPU with CUD
# 端口号默认为9400;运行日志默认保存在 log_PPShiTu.txt 中
# CPU部署
sh run_cpp_serving.sh
ba
sh run_cpp_serving.sh
# GPU部署,并指定第0号卡
sh run_cpp_serving.sh 0
ba
sh run_cpp_serving.sh 0
```
-
发送请求:
...
...
@@ -229,7 +249,7 @@ python3.7 -m pip install paddle-serving-server-gpu==0.7.0.post112 # GPU with CUD
# 发送服务请求
python3.7 test_cpp_serving_client.py
```
成功运行后,模型预测的结果会打印在客户端
的终端窗口中,结果
如下所示:
成功运行后,模型预测的结果会打印在客户端
中,
如下所示:
```
log
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0614 03:01:36.273097 6084 naming_service_thread.cpp:202] brpc::policy::ListNamingService("127.0.0.1:9400"): added 1
...
...
deploy/paddleserving/recognition/run_cpp_serving.sh
浏览文件 @
03eac7e7
...
...
@@ -5,10 +5,10 @@ if [[ -n "${gpu_id}" ]]; then
nohup
python3.7
-m
paddle_serving_server.serve
\
--model
../../models/picodet_PPLCNet_x2_5_mainbody_lite_v1.0_serving ../../models/general_PPLCNet_x2_5_lite_v1.0_serving
\
--op
GeneralPicodetOp GeneralFeatureExtractOp
\
--port
9400
--gpu_id
=
"
${
gpu_id
}
"
>
>
log_PPShiTu.txt 1&>2
&
--port
9400
--gpu_id
=
"
${
gpu_id
}
"
>
log_PPShiTu.txt 2>&1
&
else
nohup
python3.7
-m
paddle_serving_server.serve
\
--model
../../models/picodet_PPLCNet_x2_5_mainbody_lite_v1.0_serving ../../models/general_PPLCNet_x2_5_lite_v1.0_serving
\
--op
GeneralPicodetOp GeneralFeatureExtractOp
\
--port
9400
>
>
log_PPShiTu.txt 1&>2
&
--port
9400
>
log_PPShiTu.txt 2>&1
&
fi
docs/zh_CN/inference_deployment/classification_serving_deploy.md
0 → 120000
浏览文件 @
03eac7e7
../../../deploy/paddleserving/readme.md
\ No newline at end of file
docs/zh_CN/inference_deployment/
inference/
cpp_deploy.md
→
docs/zh_CN/inference_deployment/cpp_deploy.md
浏览文件 @
03eac7e7
文件已移动
docs/zh_CN/inference_deployment/
inference/
cpp_deploy_on_windows.md
→
docs/zh_CN/inference_deployment/cpp_deploy_on_windows.md
浏览文件 @
03eac7e7
文件已移动
docs/zh_CN/inference_deployment/deployment/paddle_classification_serving_deploy.md
已删除
120000 → 0
浏览文件 @
ec6b19eb
deploy/paddleserving/readme.md
\ No newline at end of file
docs/zh_CN/inference_deployment/deployment/paddle_recognition_serving_deploy.md
已删除
120000 → 0
浏览文件 @
ec6b19eb
deploy/paddleserving/recognition/readme.md
\ No newline at end of file
docs/zh_CN/inference_deployment/
deployment/
paddle_hub_serving_deploy.md
→
docs/zh_CN/inference_deployment/paddle_hub_serving_deploy.md
浏览文件 @
03eac7e7
文件已移动
docs/zh_CN/inference_deployment/
deployment/
paddle_lite_deploy.md
→
docs/zh_CN/inference_deployment/paddle_lite_deploy.md
浏览文件 @
03eac7e7
文件已移动
docs/zh_CN/inference_deployment/
inference/
python_deploy.md
→
docs/zh_CN/inference_deployment/python_deploy.md
浏览文件 @
03eac7e7
...
...
@@ -8,9 +8,9 @@
-
[
1. 图像分类模型推理
](
#1
)
-
[
2. PP-ShiTu模型推理
](
#2
)
-
[
2.1 主体检测模型推理
](
#2.1
)
-
[
2.2 特征提取模型推理
](
#2.2
)
-
[
2.3 PP-ShiTu PipeLine推理
](
#2.3
)
-
[
2.1 主体检测模型推理
](
#2.1
)
-
[
2.2 特征提取模型推理
](
#2.2
)
-
[
2.3 PP-ShiTu PipeLine推理
](
#2.3
)
<a
name=
"1"
></a>
## 1. 图像分类推理
...
...
docs/zh_CN/inference_deployment/recognition_serving_deploy.md
0 → 120000
浏览文件 @
03eac7e7
../../../deploy/paddleserving/recognition/readme.md
\ No newline at end of file
docs/zh_CN/inference_deployment/
inference/
whl_deploy.md
→
docs/zh_CN/inference_deployment/whl_deploy.md
浏览文件 @
03eac7e7
文件已移动
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录