文档首页/
AI开发平台ModelArts/
最佳实践/
DeepSeek&Qwen3基于Lite Server&Cluster推理/
DeepSeek&Qwen3模型基于ModelArts Lite Server适配NPU的PD分离推理解决方案/
基于KubeInfer的推理部署/
PD分离部署Qwen推理服务
更新时间:2025-10-14 GMT+08:00
PD分离部署Qwen推理服务
- 使用Snt9b23资源基于PD分离场景下部署Qwen模型推理,您需要参考下述命令生成部署所需的infer_vllm_kubeinfer.yaml文件,其中“--xx-params“参数支持的参数详见表1,请按需配置。
# 场景参考:生成1P1D的Qwen3-32B部署yaml,实例副本数为2,权重为量化的w8a8c8权重,启动参数为版本推荐值 python3 gen_pd_deploy_kubeinfer_yaml_with_omni.py \ --prefill-pod-num=1 \ --decode-pod-num=1 \ --replicas=2 \ --pd-resource="{\"resource-cpu\": 88, \"resource-npu\": 8, \"resource-mem\": \"500Gi\"}" \ --image-name="ascend_vllm:latest" \ --mount-path=/mnt/deepseek \ --script-path=/mnt/deepseek/deploy \ --common-params="--extra-env-vars='ENABLE_PHASE_AWARE_QKVO_QUANT=1,ENABLE_QWEN_MICROBATCH=1,PREFILL_STOP_SCHEDULE_TOKENS=8000,BLOCK_RELEASE_DELAY=60,USE_ZMQ_BROADCAST=1' \ --pd-port=9100 \ --vllm-log-path=/mnt/deepseek/vllm_log \ --time-window-ms=90000 \ --model=/mnt/deepseek/model/Qwen3-32B-w8a8c8 \ --max-num-seqs=64 \ --served-model-name=qwen \ --max-model-len=65536 \ --tensor-parallel-size=8 \ --gpu-memory-utilization=0.9 \ --no-enable-prefix-caching \ --no-enable-chunked-prefill \ --quantization=compressed-tensors \ --kv-cache-dtype=int8 \ --num-gpu-blocks-override=15000 \ --enable-reasoning \ --reasoning-parser qwen3 \ --additional-config='{\"ascend_turbo_graph_config\": {\"enabled\": true, \"quant_fusion\": true}, \"ascend_scheduler_config\": {\"enabled\": true}, \"async_pull_kv\": true}'" \ --proxy-params="--port=9000"
- 根据部署架构,在工作节点或控制节点上执行下面的k8s命令,完成第三方开源大模型推理实例的部署。
kubectl apply -f infer_vllm_kubeinfer.yaml
- 执行下述命令查看部署状态,当全部Pod的“READ“字段结果都为”1/1”时表示部署成功。
kubectl get po | grep infer
- 执行下述命令获取 Service 的 ”CLUSTER-IP”。
kubectl get svc
- 测试推理API
curl -ik -H 'Content-Type: application/json' -d '{"messages":[{"role":"user","content":"hello"}],"model":"qwen3-32b","temperature":0.6,"top_p": 0.95,"top_k": 20,"max_tokens":1024}' -X POST http://${CLUSTER-IP}:9000/v1/chat/completions
父主题: 基于KubeInfer的推理部署