更新时间:2025-10-14 GMT+08:00
分享

生成Qwen部署定义yaml

基于KubeInfer的部署,关键是定义部署所需的yaml文件,参考获取部署版本包中提供的gen_pd_deploy_kubeinfer_yaml_with_omni.py脚本通过执行下述命令生成基于KubeInfer部署的yaml文件:

python3 gen_pd_deploy_kubeinfer_yaml_with_omni.py [--prefill-pod-num=xx] [--decode-pod-num=xx] [--replicas=xx] [--image-name=xx] [--custom-labels=xx] [--proxy-resource=xx] [--pd-resource=xx] [--mount-path=xx] [--script-path=xx] [--proxy-params="xxx"] [--prefill-params="xxx"] [--decode-params="xxx"] [--file-name=xx]

当前脚本自动生成的基于KubeInfer部署的yaml文件默认能力和生成DeepSeek部署定义yaml说明保持一致。

表1 生成yaml脚本参数说明

参数

约束

描述

默认值

--prefill-pod-num

可选

Prefill角色个数。

1

--decode-pod-num

可选

Decode角色个数。

1

--replicas

可选

kubeinfer实例instance数,对应K8s概念中的副本数。

1

--image-name

必选

推理镜像名称,即为获取推理镜像中制作的镜像。

-

--custom-labels

可选

kubeinfer部署支持自定义标签,格式为json。

-

--pd-resource

可选

Prefill和Decode角色需要的资源,参考CPU及内存资源规划

-

--mount-path

可选

存储配置中挂载的目录,该目录下存放权重和脚本文件。

/mnt/deepseek

--script-path

可选

部署推理服务依赖的脚本文件路径。

须知:

必须是--mount-path指定的目录的子目录。

/mnt/deepseek/deploy

--common-params

必选

部署推理服务的特性参数和公共的启动参数,参考表2及参数类型。

须知:

值必须用双引号包裹。

-

--proxy-params

可选

部署推理服务proxy、prefill、decode分别对应的启动参数,参考表2及参数类型。

须知:

值必须用双引号包裹。

-

--prefill-params

可选

-

--decode-params

可选

-

--file-name

可选

生成的yaml文件名。

infer_vllm_kubeinfer.yaml

表2 Qwen PD分离部署脚本启动命令说明

参数

约束

参数类型

描述

--vllm-log-path

可选

特性参数

采集vLLM框架日志,开启特性需要指定滚动日志保存的路径。不开启时,日志保存在容器内/home/ma-user/AscendCloud/logs。

日志采集功能的使用详见推理层日志采集与转储

--hang-threshold-sec

可选

特性参数

Decode的hang判断时间阈值,单位为秒,默认值为5。

--log-max-size

可选

特性参数

指定Proxy滚动日志文件大小,单位为MB,默认值为1024。日志默认按1G一个文件进行滚动,滚动保存10个备份文件,文件名为proxy.log。保存后会将旧日志压缩存储。

--time-window-ms

可选

特性参数

指定Proxy被动健康检查配置时间窗,单位为ms,默认值为10000。一个Prefill或Decode实例在时间窗口内,3次失败即认为异常。

--extra-env-vars

可选

启动参数

部署推理服务要额外设置的环境变量,参考表3

须知:

值必须用单引号包裹,多个环境变量以逗号分隔。

--port

可选

启动参数

Proxy角色监听的端口,默认值为9000。

须知:

如果修改端口,需要同时修改健康检查的端口。

--pd-port

可选

启动参数

Prefill、Decode角色监听的端口,默认值为9100。

--model

必选

启动参数

对应vLLM入参--model,模型权重所在路径。

须知:

要求该目录必须是--mount-path指定的目录的子目录。路径中不能包含英号句号"."等特殊字符。

--served-model-name

必选

启动参数

对应vLLM入参--served-model-name。

--max-model-len

必选

启动参数

对应vLLM入参--max-model-len。

--tensor-parallel-size

必选

启动参数

对应vLLM入参--tensor-parallel-size。

--gpu-memory-utilization

必选

启动参数

对应vLLM入参--gpu-memory-utilization。

其他vLLM支持的参数,用法同vLLM

-

表3 Qwen环境变量配置参考

参数

描述

ENABLE_PHASE_AWARE_QKVO_QUANT=1

推荐Qwen3-32B w8a8添加,提升Decode性能。

ENABLE_QWEN_MICROBATCH=1

推荐长序列添加,提升Prefill性能。

PREFILL_STOP_SCHEDULE_TOKENS=8000

降低TTFS的平均值,但是会影响Prefill实例吞吐。

BLOCK_RELEASE_DELAY=60

Prefill配置kvcache 60s老化,Decode无影响。

USE_ZMQ_BROADCAST=1

使用ZMQ(ZeroMQ)进行广播通信。ZMQ 具有高吞吐低延迟的特点,适合分布式推理场景。

相关文档