AIAK推理加速引擎PD分离部署DeepSeek
更新时间:2025-09-09
本文将为您介绍如何在百舸平台基于8台Hopper架构服务器,通过AIAK推理引擎 PD分离部署 DeepSeek R1。
前置条件
准备资源
- 创建百舸全托管资源池,购买8台支持RDMA的Hopper架构服务器
- 开通PFS或CFS存储并与资源池绑定
购买资源需开通白名单,请联系百度售前工程师
数据准备
为了提升部署服务效率,百舸已将常用模型下载到BOS存储中,您可以直接通过BOSCMD工具拉取模型文件到自己的文件系统中,除了模型权重文件,还需要拉取对应模型的NextN文件。
BOSCMD工具拉取模型命令示例:
Plain Text
1./bcecmd bos sync bos:/aihc-models-bj/deepseek-ai/DeepSeek-R1 /mnt/model/DeepSeek-R1
2./bcecmd bos sync bos:/aihc-models-bj/deepseek-ai/DeepSeek-R1 /mnt/model/DeepSeek-R1-NextN
模型名称 | BOS路径 |
---|---|
DeepSeek-R1 | bos:/aihc-models-bj/deepseek-ai/DeepSeek-R1-0528 |
DeepSeek-V3 | bos:/aihc-models-bj/deepseek-ai/DeepSeek-V3.1 |
DeepSeek-R1 | bos:/aihc-models-bj/deepseek-ai/DeepSeek-R1 |
DeepSeek-V3 | bos:/aihc-models-bj/deepseek-ai/DeepSeek-V3 |
DeepSeek-R1-NextN | bos:/aihc-models-bj/deepseek-ai/DeepSeek-R1-NextN |
DeepSeek-V3-NextN | bos:/aihc-models-bj/deepseek-ai/DeepSeek-V3-NextN |
Tips: 模型路径需要根据您资源所在的Region适当调整,示例路径中的 bj 代表北京 Region,可替换为资源位置首字母缩写。
部署服务
需分别部署Prefill和Decode服务,并将P和D服务加入同一服务组
资源配置
1、正确填写服务名称,新建服务组
2、资源配置选择Hopper架构的算力,推荐CPU 100核,内存 1024G
3、开启分布式推理、Prefill-Decode 分离、RDMA
环境配置
参数说明
以下参数若无特殊需求可以直接使用平台推荐值
参数 | 说明 |
---|---|
ENABLE_REDUNDANT_EXPERTS | 冗余专家使能 如需关闭修改false,并添加环境变量 SET_DEEP_DP_NUM_EXPERTS=256 |
MAX_PREFILL_TOKENS | 控制预填充阶段单批处理的最大token数量,推荐值为8192 |
MAX_RUNNING_REQUESTS | 限制并发处理的请求数量,推荐值为256 |
MAX_TOTAL_TOKENS | 设定单个请求的输入和输出token总数上限,推荐值为300000 |
MEM_FRACTION_STATIC | 分配固定比例的GPU内存用于KV Cache等,推荐值为0.95 |
MODEL_DP_SIZE | 指定数据并行的GPU数量,推荐值为8 |
MODEL_PATH | 需填写模型R1权重文件容器挂载的目标路径,以上图为例:/deepseek |
MODEL_TP_SIZE | 指定张量并行的GPU数量,推荐值为4 |
MODEL_PATH_NEXTN | 需填写模型R1权重文件容器挂载的目标路径,以上图为例:/deepseek-nextn |
CUDA_GRAPH_MAX_BS | 使用 CUDA Graph 时允许的最大Batch Size,推荐值为64 |
流量接入
选择云原生网关,负载均衡策略设置为轮询,正确填写端口号
高级配置
共享内存建议设置为400G
调用服务
部署服务成功后,在服务组中查看PD服务的调用信息。
调用示例
Plain Text
1curl --location '<访问地址>/v1/chat/completions' \
2--header 'Content-Type: application/json' \
3--header 'Authorization: <TOKEN>' \
4--data '{
5 "model": "DeepSeek-R1",
6 "messages": [{"role": "system", "content": "你是一名天文学家,请回答用户提出的问题。"}, {"role": "user", "content": "人类是否能登上火星?"}, {"role": "assistant", "content": "目前来看,人类登上火星是完全可能的..."}],
7 "max_tokens": 1024,
8 "temperature": 0
9}'