提交 3b29eba4 编写于 作者: H HexToString

Merge branch 'develop-p' of github.com:HexToString/Serving into develop-p

...@@ -101,17 +101,17 @@ git clone https://github.com/PaddlePaddle/Serving ...@@ -101,17 +101,17 @@ git clone https://github.com/PaddlePaddle/Serving
install python dependencies install python dependencies
``` ```
cd Serving cd Serving
pip install -r python/requirements.txt pip3 install -r python/requirements.txt
``` ```
```shell ```shell
pip install paddle-serving-client==0.6.0 pip3 install paddle-serving-client==0.6.0
pip install paddle-serving-server==0.6.0 # CPU pip3 install paddle-serving-server==0.6.0 # CPU
pip install paddle-serving-app==0.6.0 pip3 install paddle-serving-app==0.6.0
pip install paddle-serving-server-gpu==0.6.0.post102 #GPU with CUDA10.2 + TensorRT7 pip3 install paddle-serving-server-gpu==0.6.0.post102 #GPU with CUDA10.2 + TensorRT7
# DO NOT RUN ALL COMMANDS! check your GPU env and select the right one # DO NOT RUN ALL COMMANDS! check your GPU env and select the right one
pip install paddle-serving-server-gpu==0.6.0.post101 # GPU with CUDA10.1 + TensorRT6 pip3 install paddle-serving-server-gpu==0.6.0.post101 # GPU with CUDA10.1 + TensorRT6
pip install paddle-serving-server-gpu==0.6.0.post11 # GPU with CUDA10.1 + TensorRT7 pip3 install paddle-serving-server-gpu==0.6.0.post11 # GPU with CUDA10.1 + TensorRT7
``` ```
You may need to use a domestic mirror source (in China, you can use the Tsinghua mirror source, add `-i https://pypi.tuna.tsinghua.edu.cn/simple` to pip command) to speed up the download. You may need to use a domestic mirror source (in China, you can use the Tsinghua mirror source, add `-i https://pypi.tuna.tsinghua.edu.cn/simple` to pip command) to speed up the download.
...@@ -129,10 +129,10 @@ Recommended to install paddle >= 2.1.0 ...@@ -129,10 +129,10 @@ Recommended to install paddle >= 2.1.0
``` ```
# CPU users, please run # CPU users, please run
pip install paddlepaddle==2.1.0 pip3 install paddlepaddle==2.1.0
# GPU Cuda10.2 please run # GPU Cuda10.2 please run
pip install paddlepaddle-gpu==2.1.0 pip3 install paddlepaddle-gpu==2.1.0
``` ```
**Note**: If your Cuda version is not 10.2, please do not execute the above commands directly, you need to refer to [Paddle official documentation-multi-version whl package list **Note**: If your Cuda version is not 10.2, please do not execute the above commands directly, you need to refer to [Paddle official documentation-multi-version whl package list
...@@ -141,7 +141,7 @@ pip install paddlepaddle-gpu==2.1.0 ...@@ -141,7 +141,7 @@ pip install paddlepaddle-gpu==2.1.0
Select the url link of the corresponding GPU environment and install it. For example, for Python3.6 users of Cuda 10.1, please select `cp36-cp36m` and Select the url link of the corresponding GPU environment and install it. For example, for Python3.6 users of Cuda 10.1, please select `cp36-cp36m` and
The url corresponding to `cuda10.1-cudnn7-mkl-gcc8.2-avx-trt6.0.1.5`, copy it and run The url corresponding to `cuda10.1-cudnn7-mkl-gcc8.2-avx-trt6.0.1.5`, copy it and run
``` ```
pip install https://paddle-wheel.bj.bcebos.com/with-trt/2.1.0-gpu-cuda10.1-cudnn7-mkl-gcc8.2/paddlepaddle_gpu-2.1.0.post101-cp36-cp36m-linux_x86_64.whl pip3 install https://paddle-wheel.bj.bcebos.com/with-trt/2.1.0-gpu-cuda10.1-cudnn7-mkl-gcc8.2/paddlepaddle_gpu-2.1.0.post101-cp36-cp36m-linux_x86_64.whl
``` ```
the default `paddlepaddle-gpu==2.1.0` is Cuda 10.2 with no TensorRT. If you want to install PaddlePaddle with TensorRT. please also check the documentation-multi-version whl package list and find key word `cuda10.2-cudnn8.0-trt7.1.3`. More info please check [Paddle Serving uses TensorRT](./doc/TENSOR_RT.md) the default `paddlepaddle-gpu==2.1.0` is Cuda 10.2 with no TensorRT. If you want to install PaddlePaddle with TensorRT. please also check the documentation-multi-version whl package list and find key word `cuda10.2-cudnn8.0-trt7.1.3`. More info please check [Paddle Serving uses TensorRT](./doc/TENSOR_RT.md)
...@@ -169,7 +169,7 @@ Paddle Serving provides HTTP and RPC based service for users to access ...@@ -169,7 +169,7 @@ Paddle Serving provides HTTP and RPC based service for users to access
A user can also start a RPC service with `paddle_serving_server.serve`. RPC service is usually faster than HTTP service, although a user needs to do some coding based on Paddle Serving's python client API. Note that we do not specify `--name` here. A user can also start a RPC service with `paddle_serving_server.serve`. RPC service is usually faster than HTTP service, although a user needs to do some coding based on Paddle Serving's python client API. Note that we do not specify `--name` here.
``` shell ``` shell
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 python3 -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292
``` ```
<center> <center>
...@@ -209,7 +209,7 @@ Here, `client.predict` function has two arguments. `feed` is a `python dict` wit ...@@ -209,7 +209,7 @@ Here, `client.predict` function has two arguments. `feed` is a `python dict` wit
Users can also put the data format processing logic on the server side, so that they can directly use curl to access the service, refer to the following case whose path is `python/examples/fit_a_line` Users can also put the data format processing logic on the server side, so that they can directly use curl to access the service, refer to the following case whose path is `python/examples/fit_a_line`
``` ```
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 --name uci python3 -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 --name uci
``` ```
for client side, for client side,
``` ```
...@@ -225,22 +225,22 @@ Paddle Serving provides industry-leading multi-model tandem services, which stro ...@@ -225,22 +225,22 @@ Paddle Serving provides industry-leading multi-model tandem services, which stro
we get two models we get two models
``` ```
python -m paddle_serving_app.package --get_model ocr_rec python3 -m paddle_serving_app.package --get_model ocr_rec
tar -xzvf ocr_rec.tar.gz tar -xzvf ocr_rec.tar.gz
python -m paddle_serving_app.package --get_model ocr_det python3 -m paddle_serving_app.package --get_model ocr_det
tar -xzvf ocr_det.tar.gz tar -xzvf ocr_det.tar.gz
``` ```
then we start server side, launch two models as one standalone web service then we start server side, launch two models as one standalone web service
``` ```
python web_service.py python3 web_service.py
``` ```
http request http request
``` ```
python pipeline_http_client.py python3 pipeline_http_client.py
``` ```
grpc request grpc request
``` ```
python pipeline_rpc_client.py python3 pipeline_rpc_client.py
``` ```
output output
``` ```
......
...@@ -103,17 +103,17 @@ git clone https://github.com/PaddlePaddle/Serving ...@@ -103,17 +103,17 @@ git clone https://github.com/PaddlePaddle/Serving
安装所需的pip依赖 安装所需的pip依赖
``` ```
cd Serving cd Serving
pip install -r python/requirements.txt pip3 install -r python/requirements.txt
``` ```
```shell ```shell
pip install paddle-serving-client==0.6.0 pip3 install paddle-serving-client==0.6.0
pip install paddle-serving-server==0.6.0 # CPU pip3 install paddle-serving-server==0.6.0 # CPU
pip install paddle-serving-app==0.6.0 pip3 install paddle-serving-app==0.6.0
pip install paddle-serving-server-gpu==0.6.0.post102 #GPU with CUDA10.2 + TensorRT7 pip3 install paddle-serving-server-gpu==0.6.0.post102 #GPU with CUDA10.2 + TensorRT7
# 其他GPU环境需要确认环境再选择执行哪一条 # 其他GPU环境需要确认环境再选择执行哪一条
pip install paddle-serving-server-gpu==0.6.0.post101 # GPU with CUDA10.1 + TensorRT6 pip3 install paddle-serving-server-gpu==0.6.0.post101 # GPU with CUDA10.1 + TensorRT6
pip install paddle-serving-server-gpu==0.6.0.post11 # GPU with CUDA10.1 + TensorRT7 pip3 install paddle-serving-server-gpu==0.6.0.post11 # GPU with CUDA10.1 + TensorRT7
``` ```
您可能需要使用国内镜像源(例如清华源, 在pip命令中添加`-i https://pypi.tuna.tsinghua.edu.cn/simple`)来加速下载。 您可能需要使用国内镜像源(例如清华源, 在pip命令中添加`-i https://pypi.tuna.tsinghua.edu.cn/simple`)来加速下载。
...@@ -130,17 +130,17 @@ paddle-serving-client和paddle-serving-app安装包支持Linux和Windows,其 ...@@ -130,17 +130,17 @@ paddle-serving-client和paddle-serving-app安装包支持Linux和Windows,其
``` ```
# CPU环境请执行 # CPU环境请执行
pip install paddlepaddle==2.1.0 pip3 install paddlepaddle==2.1.0
# GPU Cuda10.2环境请执行 # GPU Cuda10.2环境请执行
pip install paddlepaddle-gpu==2.1.0 pip3 install paddlepaddle-gpu==2.1.0
``` ```
**注意**: 如果您的Cuda版本不是10.2,请勿直接执行上述命令,需要参考[Paddle官方文档-多版本whl包列表](https://www.paddlepaddle.org.cn/documentation/docs/zh/install/Tables.html#whl-release) **注意**: 如果您的Cuda版本不是10.2,请勿直接执行上述命令,需要参考[Paddle官方文档-多版本whl包列表](https://www.paddlepaddle.org.cn/documentation/docs/zh/install/Tables.html#whl-release)
选择相应的GPU环境的url链接并进行安装,例如Cuda 10.1的Python3.6用户,请选择表格当中的`cp36-cp36m``cuda10.1-cudnn7-mkl-gcc8.2-avx-trt6.0.1.5`对应的url,复制下来并执行 选择相应的GPU环境的url链接并进行安装,例如Cuda 10.1的Python3.6用户,请选择表格当中的`cp36-cp36m``cuda10.1-cudnn7-mkl-gcc8.2-avx-trt6.0.1.5`对应的url,复制下来并执行
``` ```
pip install https://paddle-wheel.bj.bcebos.com/with-trt/2.1.0-gpu-cuda10.1-cudnn7-mkl-gcc8.2/paddlepaddle_gpu-2.1.0.post101-cp36-cp36m-linux_x86_64.whl pip3 install https://paddle-wheel.bj.bcebos.com/with-trt/2.1.0-gpu-cuda10.1-cudnn7-mkl-gcc8.2/paddlepaddle_gpu-2.1.0.post101-cp36-cp36m-linux_x86_64.whl
``` ```
由于默认的`paddlepaddle-gpu==2.1.0`是Cuda 10.2,并没有联编TensorRT,因此如果需要和在`paddlepaddle-gpu`上使用TensorRT,需要在上述多版本whl包列表当中,找到`cuda10.2-cudnn8.0-trt7.1.3`,下载对应的Python版本。更多信息请参考[如何使用TensorRT?](doc/TENSOR_RT_CN.md) 由于默认的`paddlepaddle-gpu==2.1.0`是Cuda 10.2,并没有联编TensorRT,因此如果需要和在`paddlepaddle-gpu`上使用TensorRT,需要在上述多版本whl包列表当中,找到`cuda10.2-cudnn8.0-trt7.1.3`,下载对应的Python版本。更多信息请参考[如何使用TensorRT?](doc/TENSOR_RT_CN.md)
...@@ -168,7 +168,7 @@ Paddle Serving 为用户提供了基于 HTTP 和 RPC 的服务 ...@@ -168,7 +168,7 @@ Paddle Serving 为用户提供了基于 HTTP 和 RPC 的服务
用户还可以使用`paddle_serving_server.serve`启动RPC服务。 尽管用户需要基于Paddle Serving的python客户端API进行一些开发,但是RPC服务通常比HTTP服务更快。需要指出的是这里我们没有指定`--name` 用户还可以使用`paddle_serving_server.serve`启动RPC服务。 尽管用户需要基于Paddle Serving的python客户端API进行一些开发,但是RPC服务通常比HTTP服务更快。需要指出的是这里我们没有指定`--name`
``` shell ``` shell
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 python3 -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292
``` ```
<center> <center>
...@@ -209,7 +209,7 @@ print(fetch_map) ...@@ -209,7 +209,7 @@ print(fetch_map)
用户也可以将数据格式处理逻辑放在服务器端进行,这样就可以直接用curl去访问服务,参考如下案例,在目录`python/examples/fit_a_line`. 用户也可以将数据格式处理逻辑放在服务器端进行,这样就可以直接用curl去访问服务,参考如下案例,在目录`python/examples/fit_a_line`.
``` ```
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 --name uci python3 -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 --name uci
``` ```
客户端输入 客户端输入
``` ```
...@@ -226,22 +226,22 @@ Paddle Serving提供业界领先的多模型串联服务,强力支持各大公 ...@@ -226,22 +226,22 @@ Paddle Serving提供业界领先的多模型串联服务,强力支持各大公
我们先获取两个模型 我们先获取两个模型
``` ```
python -m paddle_serving_app.package --get_model ocr_rec python3 -m paddle_serving_app.package --get_model ocr_rec
tar -xzvf ocr_rec.tar.gz tar -xzvf ocr_rec.tar.gz
python -m paddle_serving_app.package --get_model ocr_det python3 -m paddle_serving_app.package --get_model ocr_det
tar -xzvf ocr_det.tar.gz tar -xzvf ocr_det.tar.gz
``` ```
然后启动服务端程序,将两个串联的模型作为一个整体的服务。 然后启动服务端程序,将两个串联的模型作为一个整体的服务。
``` ```
python web_service.py python3 web_service.py
``` ```
最终使用http的方式请求 最终使用http的方式请求
``` ```
python pipeline_http_client.py python3 pipeline_http_client.py
``` ```
也支持rpc的方式 也支持rpc的方式
``` ```
python pipeline_rpc_client.py python3 pipeline_rpc_client.py
``` ```
输出 输出
``` ```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册