3
3
4
4
* 该部署工具是基于英伟达 Triton 框架专为服务器场景的大模型服务化部署而设计。它提供了支持 gRPC、HTTP 协议的服务接口,以及流式 Token 输出能力。底层推理引擎支持连续批处理、weight only int8、后训练量化(PTQ)等加速优化策略,为用户带来易用且高性能的部署体验。*
5
5
6
+ ## 静态图快速部署
7
+
8
+ 该方法仅支持[ 可一键跑通的模型列表] ( https://github.com/PaddlePaddle/PaddleNLP/blob/develop/llm/server/docs/static_models.md ) 中的模型进行一键启动推理服务。
9
+
10
+ 为了避免模型过大导致的下载时间过长问题,我们直接提供了自动下载的[ 脚本] ( #静态图下载 ) ,支持下载后再启动服务进行推理。进入容器后根据单机或多机模型进行静态图下载。
11
+
12
+ ` MODEL_PATH ` 为指定模型下载的存储路径,可自行指定
13
+ ` model_name ` 为指定下载模型名称,具体支持模型可查看[ 文档] ( https://github.com/PaddlePaddle/PaddleNLP/blob/develop/llm/server/docs/static_models.md )
14
+
15
+ Note:
16
+ 1 . 请保证 shm-size >= 5,不然可能会导致服务启动失败
17
+ 2 . 部署前请确认模型所需要的环境和硬件,请参考[ 文档] ( https://github.com/PaddlePaddle/PaddleNLP/blob/develop/llm/server/docs/static_models.md )
18
+
19
+ ** A100部署示例**
20
+ ``` shell
21
+ export MODEL_PATH=${MODEL_PATH:- $PWD }
22
+ export model_name=${model_name:- " deepseek-ai/DeepSeek-R1-Distill-Llama-8B/weight_only_int8" }
23
+ docker run -i --rm --gpus all --shm-size 32G --network=host --privileged --cap-add=SYS_PTRACE \
24
+ -v $MODEL_PATH :/models -e " model_name=${model_name} " \
25
+ -dit ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlenlp:llm-serving-cuda124-cudnn9-v2.1 /bin/bash \
26
+ -c -ex ' start_server $model_name && tail -f /dev/null'
27
+ ```
28
+
6
29
7
30
## 部署环境准备
8
31
19
42
20
43
### 准备部署镜像
21
44
22
- 为了方便部署,我们提供了 cuda12.4 与 cuda 11.8 的镜像,可以直接拉取镜像,或者使用我们提供的 ` Dockerfile ` [ 构建自定义镜像] (#基于 dockerfile 创建自己的镜像)
23
- ```
24
- docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlenlp:llm-serving-cuda124-cudnn9-v2.1
25
- ```
45
+ 为了方便部署,我们提供了 cuda12.4 与 cuda 11.8 的镜像,可以直接拉取镜像,或者使用我们提供的 ` Dockerfile ` [ 构建自定义镜像] ( #基于-dockerfile-创建自己的镜像 )
46
+
47
+
48
+ | cuda版本| 支持硬件架构| 镜像地址| 支持的典型设备|
49
+ | :------| :-:| :-:| :-:|
50
+ | cuda11.8 | 70 75 80 86 | ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlenlp: llm-serving-cuda118-cudnn8-v2 .1 | V100,T4,A100,A30,A10 |
51
+ | cuda12.4 | 80 86 89 90 | ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddlenlp: llm-serving-cuda124-cudnn9-v2 .1 | A100,A30,A10,L20,H20,H100 |
52
+
26
53
27
54
### 准备模型
28
55
@@ -45,7 +72,7 @@ cd /home/workspace/models_dir
45
72
46
73
#### 静态图下载
47
74
48
- 除了支持通过设置` model_name ` 在启动时进行自动下载,服务提供脚本可以进行自行下载
75
+ 除了支持通过设置` model_name ` 在启动时进行自动下载,服务提供脚本可以进行自行下载。 ** 部署时需指定环境变量 ` MODEL_DIR ` 为模型下载存储路径 **
49
76
50
77
脚本所在路径` /opt/output/download_model.py `
51
78
@@ -170,28 +197,34 @@ export CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7
170
197
更多请求参数请参考[ 模型配置参数介绍] ( #模型配置参数介绍 )
171
198
172
199
### 启动服务
200
+ 针对模型部署我们提供两种方案:
201
+ - 模型已保存在指定路径下进行部署
202
+ - 静态图自动下载部署
203
+
173
204
#### 单机启动
205
+ 模型已保存在指定路径下进行部署
174
206
175
207
``` shell
208
+ export MODEL_DIR=${MODEL_DIR:- " /models" }
176
209
start_server
177
210
178
211
# 重新启动服务前,需要停止服务,执行 stop_server
179
212
```
180
- 启动脚本位置: /opt/output/Serving
213
+ 静态图自动下载部署
214
+ ` model_name ` 为指定下载模型名称,具体支持模型可查看[ 文档] ( https://github.com/PaddlePaddle/PaddleNLP/blob/develop/llm/server/docs/static_models.md )
215
+
216
+ ``` shell
217
+ model_name=" deepseek-ai/DeepSeek-R1-2nodes/weight_only_int8"
218
+ start_server $model_name
219
+
220
+ # 重新启动服务前,需要停止服务,执行 stop_server
221
+ ```
181
222
#### 多机启动
182
223
##### 依次启动服务
183
224
1 . 启动 master node 主节点服务
184
225
2 . 依次启动其他节点的服务
185
226
186
- ** 启动命令**
187
-
188
- ```
189
- start_server
190
-
191
- # 重新启动服务前,需要停止服务
192
-
193
- stop_server
194
- ```
227
+ 启动命令与单机相同
195
228
196
229
##### mpi启动
197
230
若使用mpi 进行启动需提前配置各机器的ssh 可以正常访问
0 commit comments