diff --git a/doc/Offical_Docs/Environment_CN.md b/doc/Offical_Docs/2-2_Environment_CN.md similarity index 50% rename from doc/Offical_Docs/Environment_CN.md rename to doc/Offical_Docs/2-2_Environment_CN.md index 4d8bf7f7f14f395a9fa051eefa956be27a2b0d2a..85d9e28eb51c5866960d80d825a5a38e804eaf46 100644 --- a/doc/Offical_Docs/Environment_CN.md +++ b/doc/Offical_Docs/2-2_Environment_CN.md @@ -1,16 +1,14 @@ -# 环境配置 +# 标准环境配置 -使用 PaddleServing 前需要准备相关环境。 +本文介绍基于标准环境进行配置安装。 -## 环境准备 +## CentOS 7 环境配置 + +**一.环境准备** -* **Linux 版本 (64 bit)** - * **CentOS 7 (GPU 版本支持CUDA 10.1/10.2/11.0/11.1/11.2)** - * **Ubuntu 16.04 (GPU 版本支持 CUDA 10.1/10.2/11.0/11.1/11.2)** - * **Ubuntu 18.04 (GPU 版本支持 CUDA 10.1/10.2/11.0/11.1/11.2)** * **Python 版本 3.6/3.7/3.8/3.9 (64 bit)** -## 选择 CPU/GPU +**二.选择 CPU/GPU** * 如果您的计算机有 NVIDIA® GPU,请确保满足以下条件 @@ -21,11 +19,9 @@ 您可参考NVIDIA官方文档了解CUDA和CUDNN的安装流程和配置方法,请见[CUDA](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/),[cuDNN](https://docs.nvidia.com/deeplearning/sdk/cudnn-install/),[TensorRT](https://docs.nvidia.com/deeplearning/tensorrt/index.html) -## 安装必要工具 - -**一.更新系统源** +**三.安装必要工具** -* Centos 环境 +1. 更新系统源 更新`yum`的源: @@ -39,17 +35,7 @@ yum install -y epel-release ``` -* Ubuntu 环境 - - 更新`apt`的源: - - ``` - apt update - ``` - -**二.安装工具** - -* Centos 环境 +2. 安装工具 `bzip2`以及`make`: @@ -93,7 +79,70 @@ make -j8 && make install ``` -* Ubuntu 环境 +3. 安装GOLANG + + 建议使用 go1.17.2: + + ``` + wget -qO- https://go.dev/dl/go1.17.2.linux-amd64.tar.gz | \ + tar -xz -C /usr/local && \ + mkdir /root/go && \ + mkdir /root/go/bin && \ + mkdir /root/go/src && \ + echo "GOROOT=/usr/local/go" >> /root/.bashrc && \ + echo "GOPATH=/root/go" >> /root/.bashrc && \ + echo "PATH=/usr/local/go/bin:/root/go/bin:$PATH" >> /root/.bashrc + source /root/.bashrc + ``` + +4. 安装依赖库 + + 安装相关依赖库 patchelf: + + ``` + yum install patchelf + ``` + + 配置 ssl 依赖库 + + ``` + wget https://paddle-serving.bj.bcebos.com/others/centos_ssl.tar && \ + tar xf centos_ssl.tar && rm -rf centos_ssl.tar && \ + mv libcrypto.so.1.0.2k /usr/lib/libcrypto.so.1.0.2k && mv libssl.so.1.0.2k /usr/lib/libssl.so.1.0.2k && \ + ln -sf /usr/lib/libcrypto.so.1.0.2k /usr/lib/libcrypto.so.10 && \ + ln -sf /usr/lib/libssl.so.1.0.2k /usr/lib/libssl.so.10 && \ + ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so && \ + ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so + ``` + +## Ubuntu 16.04/18.04 环境配置 + +**一.环境准备** + +* **Python 版本 3.6/3.7/3.8/3.9 (64 bit)** + +**二.选择 CPU/GPU** + +* 如果您的计算机有 NVIDIA® GPU,请确保满足以下条件 + + * **CUDA 工具包 10.1/10.2 配合 cuDNN 7 (cuDNN 版本>=7.6.5)** + * **CUDA 工具包 11.2 配合 cuDNN v8.1.1** + * **配套版本的 TensorRT** + * **GPU运算能力超过3.5的硬件设备** + + 您可参考NVIDIA官方文档了解CUDA和CUDNN的安装流程和配置方法,请见[CUDA](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/),[cuDNN](https://docs.nvidia.com/deeplearning/sdk/cudnn-install/),[TensorRT](https://docs.nvidia.com/deeplearning/tensorrt/index.html) + +**三.安装必要工具** + +1. 更新系统源 + + 更新`apt`的源: + + ``` + apt update + ``` + +2. 安装工具 `bzip2`以及`make`: @@ -136,7 +185,7 @@ make -j8 && make install ``` -**三.安装GOLANG** +3. 安装GOLANG 建议使用 go1.17.2: @@ -152,14 +201,12 @@ source /root/.bashrc ``` -**四.安装依赖库** - -* Centos 环境 +4. 安装依赖库 安装相关依赖库 patchelf: ``` - yum install patchelf + apt-get install patchelf ``` 配置 ssl 依赖库 @@ -174,22 +221,69 @@ ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so ``` -* Ubuntu 环境 +## Windows 环境配置 - 安装相关依赖库 patchelf: +由于受限第三方库的支持,Windows平台目前只支持用web service的方式搭建local predictor预测服务。 - ``` - apt-get install patchelf - ``` +**一.环境准备** - 配置 ssl 依赖库 +**目前原生Windows仅支持Python 3.6或更高版本**。首先需要将Python的可执行程序所在目录加入到PATH当中。通常在**系统属性/我的电脑属性**-**高级**-**环境变量** ,点选Path,并在开头加上路径。例如`C:\Users\$USER\AppData\Local\Programs\Python\Python36`,最后连续点击**确定** 。在Powershell上如果输入python可以进入python交互界面,说明环境变量配置成功。 - ``` - wget https://paddle-serving.bj.bcebos.com/others/centos_ssl.tar && \ - tar xf centos_ssl.tar && rm -rf centos_ssl.tar && \ - mv libcrypto.so.1.0.2k /usr/lib/libcrypto.so.1.0.2k && mv libssl.so.1.0.2k /usr/lib/libssl.so.1.0.2k && \ - ln -sf /usr/lib/libcrypto.so.1.0.2k /usr/lib/libcrypto.so.10 && \ - ln -sf /usr/lib/libssl.so.1.0.2k /usr/lib/libssl.so.10 && \ - ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so && \ - ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so - ``` \ No newline at end of file +**二.安装必要工具** + +1. 更新 wget 工具 + + 在链接[下载wget](http://gnuwin32.sourceforge.net/packages/wget.htm),解压后复制到`C:\Windows\System32`下,如有安全提示需要通过。 + +2. 安装git工具 + + 详情参见[Git官网](https://git-scm.com/downloads) + +3. 安装必要的C++库(可选) + + 部分用户可能会在`import paddle`阶段遇见dll无法链接的问题,建议[安装Visual Studio社区版本](https://visualstudio.microsoft.com/) ,并且安装C++的相关组件。 + +## 使用 pip 安装 + +**一. 安装服务 whl 包** + + 共有3种 client、app、server,Server 分为 CPU 和 GPU,GPU 包根据您的环境选择一种安装 + + - post102 = CUDA10.2 + Cudnn7 + TensorRT6(推荐) + - post101 = CUDA10.1 + TensorRT6 + - post112 = CUDA11.2 + TensorRT8 + + ``` + pip3 install paddle-serving-client==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple + pip3 install paddle-serving-app==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple + + # CPU Server + pip3 install paddle-serving-server==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple + + # GPU Server,需要确认环境再选择执行哪一条,推荐使用CUDA 10.2的包 + pip3 install paddle-serving-server-gpu==0.8.3.post102 -i https://pypi.tuna.tsinghua.edu.cn/simple + pip3 install paddle-serving-server-gpu==0.8.3.post101 -i https://pypi.tuna.tsinghua.edu.cn/simple + pip3 install paddle-serving-server-gpu==0.8.3.post112 -i https://pypi.tuna.tsinghua.edu.cn/simple + ``` + + 默认开启国内清华镜像源来加速下载,如果您使用 HTTP 代理可以关闭(`-i https://pypi.tuna.tsinghua.edu.cn/simple`) + +**二. 安装 Paddle 相关 Python 库** + **当您使用`paddle_serving_client.convert`命令或者`Python Pipeline 框架`时才需要安装。** + ``` + # CPU 环境请执行 + pip3 install paddlepaddle==2.2.2 + + # GPU CUDA 10.2环境请执行 + pip3 install paddlepaddle-gpu==2.2.2 + ``` + **注意**: 如果您的 Cuda 版本不是10.2,或者您需要在 GPU 环境上使用 TensorRT,请勿直接执行上述命令,需要参考[Paddle-Inference官方文档-下载安装Linux预测库](https:/paddleinference.paddlepaddle.org.cn/master/user_guides/download_lib.html#python)选择相应的 GPU 环境的 url 链接并进行安装。 + +**三. 安装完成后的环境检查** + 当以上步骤均完成后可使用命令行运行环境检查功能,自动运行 Paddle Serving 相关示例,进行环境相关配置校验。 + + ``` + python3 -m paddle_serving_server.serve check + ``` + + 详情请参考[环境检查文档](./Check_Env_CN.md) \ No newline at end of file