- 文档首页
GPU云服务器
GPU云服务器
最佳实践
AIGC实践
DeepSeek系列模型
GPU-大EP部署DeepSeek-R1/V3.1模型
DeepSeek系列模型
GPU-大EP部署DeepSeek-R1/V3.1模型
GPU-大EP部署DeepSeek-R1/V3.1模型
本文以在6台ecs.hpcpni3ln.45xlarge实例中部署DeepSeek-R1模型为例,介绍如何通过大规模专家并行(EP)技术融合SGLang框架,提升集群吞吐性能,实现模型高效推理训练。
EP(Expert Parallelism,专家并行)是混合专家(MoE)模型中的核心并行策略,其核心思想是将MoE模型中的专家(Expert)分布到多个计算设备(例如GPU)上,解决单卡内存和算力的瓶颈限制,并通过负载均衡、通信优化和硬件亲和性设计,实现性能与资源效率的平衡。
DeepSeek-R1是基于DeepSeek-V3-Base训练生成的推理模型。相较于DeepSeek-V3模型,DeepSeek-R1更擅长数学、代码和自然语言推理等复杂任务,其凭借模型开源、算法创新、极致性价比吸引全球注意。了解更多。 DeepSeek-V3.1-Terminus是在V3.1的基础上,优化了语言一致性问题,缓解了中英文混杂、偶发异常字符等情况;提升了Agent能力,进一步优化了Code Agent与Search Agent的表现,模型输出效果相比前一版本更加稳定。了解更多。 本文基于解耦模式(Disaggregation Mode)与xPyD弹性调度框架,通过6台ecs.hpcpni3ln.45xlarge实例构建高性能分布式推理集群。集群被划分为专用的Prefill预处理节点池与Decode解码生成节点池,分别承载输入Prompt预处理与输出Token生成任务,实现计算资源的定向分配与推理阶段的深度解耦。其中,2台Prefill节点实例采用DP4+EP16部署方案,通过数据并行提升批处理能力,适应Prompt预处理阶段的高带宽需求;4台Decode节点实例采用DP32+EP32部署方案,强化单Token生成阶段的低延迟特性。
- GPU驱动:用来驱动NVIDIA GPU的程序。本文以535.161.08为例。
- SGLang框架:SGLang是一个用于大型语言模型和视觉语言模型的快速服务框架,本文以v0.5.2版本为例。
- 在每台实例中分别执行如下命令,安装、配置Docker。
sudo apt install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://mirrors.ivolces.com/docker/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.ivolces.com/docker/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
- 在每台实例中分别执行如下命令,安装NVIDIA Container Toolkit。
curl -s https://mirrors.ivolces.com/nvidia_all/ubuntu2204/x86_64/3bf863cc.pub | sudo apt-key add -
cat <<EOF >/etc/apt/sources.list.d/nvidia.list
deb http://mirrors.ivolces.com/nvidia_all/ubuntu2204/x86_64/ /
apt install nvidia-container-toolkit -y
- 在每台实例中分别执行如下命令配置Docker,使容器可以使用实例的GPU资源。
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
- 若您选用的实例规格搭配有本地盘,建议您执行如下命令将本地盘挂载到存储模型的目录“/data00”,提升模型加载速度。
sudo parted /dev/nvme0n1 --script mklabel gpt
sudo parted /dev/nvme0n1 --script mkpart primary ext4 0% 100%
说明
请将/dev/nvme0n1替换为实际本地盘名称。
- 执行如下命令,格式化分区文件系统类型为ext4。
sudo mkfs.ext4 /dev/nvme0n1p1
- 执行如下命令,创建并将分区挂载至“/data00”挂载点。
sudo mount /dev/nvme0n1p1 /data00
docker pull iaas-gpu-cn-beijing.cr.volces.com/serving/sglang:v0.5.2.byted.0.0.5.post1.202509291447
docker run --runtime=nvidia -itd \
--ulimit stack=67108864 \
--security-opt seccomp=unconfined \
--entrypoint /bin/bash \
-v /data00/:/data00 -v /var/run/nvidia-topologyd/:/var/run/nvidia-topologyd/ \
iaas-gpu-cn-beijing.cr.volces.com/serving/sglang:v0.5.2.byted.0.0.5.post1.202509291447
- 在6台实例中分别执行如下命令,通过Docker日志确认容器及模型是否成功启动。
docker logs -f <CONTAINER_ID>
说明
请将<CONTAINER_ID>替换为实际容器ID。
docker exec -it <CONTAINER_ID> bash
说明
请将<CONTAINER_ID>替换为实际容器ID。
说明
建议您选择容量较大的磁盘目录存放模型文件,本文以/data00为例,请将其替换为实际目录路径。
oniond download model DeepSeek-V3.1-Terminus
说明
- 请将DeepSeek-V3.1-Terminus替换为您需要下载的模型名称。支持:DeepSeek-R1、DeepSeek-V3.1-Terminus。
- 您也可以执行oniond list model命令,查看支持模型列表。
说明
请将192.168.0.2:10240替换为“Prefill_0”实例私网IP地址及节点间通信的端口号。
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
python3 -m sglang.launch_server \
--attention-backend flashmla --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 16 --disaggregation-mode prefill \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.2:10240 --moe-a2a-backend deepep --deepep-mode normal --disable-radix-cache --max-running-requests 16 --moe-dense-tp-size 1 --chunked-prefill-size 0 \
--trust-remote-code --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 16 --ep-num-redundant-experts 32 --enable-two-batch-overlap --mem-fraction-static 0.7 \
--nnodes 2 --node-rank 0 --page-size 64 --load-balance-method round_robin --enable-eplb
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
python3 -m sglang.launch_server \
--attention-backend flashmla --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 16 --disaggregation-mode prefill \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.2:10240 --moe-a2a-backend deepep --deepep-mode normal --disable-radix-cache --max-running-requests 16 --moe-dense-tp-size 1 --chunked-prefill-size 0 \
--trust-remote-code --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 16 --ep-num-redundant-experts 32 --enable-two-batch-overlap --mem-fraction-static 0.7 \
--nnodes 2 --node-rank 1 --page-size 64 --load-balance-method round_robin --enable-eplb
说明
请将192.168.0.2:10240替换为“Decode_0”实例私网IP地址及节点间通信的端口号。
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 0 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance --enable-eplb
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 1 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance --enable-eplb
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 2 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance --enable-eplb
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 3 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance --enable-eplb
- 如上命令以启动DeepSeek-V3.1-Terminus模型为例,您可根据如下说明替换对应运行参数值。
docker exec -it <CONTAINER_ID> bash
说明
请将<CONTAINER_ID>替换为实际容器ID。
python3 -m sgl-router.py_src.sglang_router.launch_router \
--prefill-policy round_robin \
--decode-policy round_robin \
--prefill "http://<Prefill_Master_IP>:30300" --decode "http://<Decode_Master_IP>:30300" \
说明
- 请将<Prefill_Master_IP>替换为“Prefill_0”实例私网IP地址。
- 请将<Decode_Master_IP>替换为“Decode_0”实例私网IP地址。
说明
- 请将{服务监听的端口号}替换为您在启动模型服务时配置的实际端口号,本文为30300。
- 生成的配置文件默认存放在容器/tmp目录下,您可以按需将其移动至所需位置。本文将其移动至/sgl-workspace/目录下,完整路径为DeepSeek-R1_prefill_ep16_3500_1500.json。
response = requests.post(f"http://localhost:{服务监听的端口号}/start_expert_distribution_record")
print_highlight(response)
url = f"http://localhost:{代理服务的端口号}/generate"
data = {"text": "What is the capital of France?"}
response = requests.post(url, json=data)
print_highlight(response.json())
response = requests.post(f"http://localhost:{服务监听的端口号}/stop_expert_distribution_record")
print_highlight(response)
response = requests.post(f"http://localhost:{服务监听的端口号}/dump_expert_distribution_record")
print_highlight(response)
- 请根据实例节点执行对应的命令,使用生成的配置文件重启模型服务。
说明
--init-expert-location参数表示配置文件路径,请将/sgl-workspace/DeepSeek-R1_prefill_ep16_3500_1500.json替换为您在上一步中生成的配置文件实际所在路径。其他参数说明请参见“步骤二 > 启动模型服务”。
说明
请将192.168.0.2:10240替换为“Prefill_0”实例私网IP地址及节点间通信的端口号。
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
python3 -m sglang.launch_server \
--attention-backend flashmla --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 16 --disaggregation-mode prefill \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.2:10240 --moe-a2a-backend deepep --deepep-mode normal --disable-radix-cache --max-running-requests 16 --moe-dense-tp-size 1 --chunked-prefill-size 0 \
--trust-remote-code --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 16 --ep-num-redundant-experts 32 --enable-two-batch-overlap --mem-fraction-static 0.7 \
--nnodes 2 --node-rank 0 --page-size 64 --load-balance-method round_robin \
--init-expert-location /sgl-workspace/DeepSeek-R1_prefill_ep16_3500_1500.json
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
python3 -m sglang.launch_server \
--attention-backend flashmla --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 16 --disaggregation-mode prefill \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.2:10240 --moe-a2a-backend deepep --deepep-mode normal --disable-radix-cache --max-running-requests 16 --moe-dense-tp-size 1 --chunked-prefill-size 0 \
--trust-remote-code --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 16 --ep-num-redundant-experts 32 --enable-two-batch-overlap --mem-fraction-static 0.7 \
--nnodes 2 --node-rank 1 --page-size 64 --load-balance-method round_robin
说明
请将192.168.0.2:10240替换为“Decode_0”实例私网IP地址及节点间通信的端口号。
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 0 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 1 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 2 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance
GLOO_SOCKET_IFNAME=eth0 NCCL_IB_HCA=mlx5_ NCCL_IB_DISABLE=0 NCCL_SOCKET_IFNAME=eth0 NCCL_IB_GID_INDEX=3 SGLANG_HACK_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=32 \
SGL_DISABLE_TP_MEMORY_INBALANCE_CHECK=1 \
NCCL_IB_QPS_PER_CONNECTION=8 \
SGL_ENABLE_JIT_DEEPGEMM=1 \
SGLANG_HACK_PD_DECODE_NUM_RESERVED_DECODE_TOKENS=514 \
python3 -m sglang.launch_server \
--attention-backend flashmla \
--model-path /data00/DeepSeek-V3.1-Terminus/ \
--tp 32 --disaggregation-mode decode --disaggregation-ib-device "mlx5_1,mlx5_2,mlx5_3,mlx5_4" \
--host 0.0.0.0 --port 30300 --trust-remote-code --dist-init-addr 192.168.0.4:10240 --moe-a2a-backend deepep --deepep-mode low_latency --disable-radix-cache --mem-fraction-static 0.8 --max-running-requests 640 --moe-dense-tp-size 1 --cuda-graph-bs 1 2 4 8 16 20 32 --watchdog-timeout 1000000 \
--enable-dp-attention --dp-size 32 \
--decode-log-interval 1 --context-length 6500 \
--nnodes 4 --node-rank 3 --trust-remote-code \
--mem-fraction-static 0.7 --page-size 64 --prefill-round-robin-balance
- 执行如下命令调用模型,确保部署的模型可以正常进行推理。
curl http://127.0.0.1:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
"model": "/data00/DeepSeek-V3.1-Terminus",
"content": "Please prove the Riemann Hypothesis."
最近更新时间:2025.12.05 15:59:47