附加配置#
附加配置是 vLLM 提供的一种机制,允许插件自行控制内部行为。vLLM Ascend 利用这种机制来增强项目的灵活性。
如何使用#
无论是在线模式还是离线模式,用户都可以使用附加配置。以 Qwen3 为例:
在线模式:
vllm serve Qwen/Qwen3-8B --additional-config='{"config_key":"config_value"}'
离线模式:
from vllm import LLM
LLM(model="Qwen/Qwen3-8B", additional_config={"config_key":"config_value"})
配置选项#
下表列出了 vLLM Ascend 中可用的附加配置选项:
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
dict |
|
xlite 图模式的配置选项 |
|
dict |
|
权重预取 (Weight Prefetch) 的配置选项 |
|
dict |
|
模块级张量并行 (Module Tensor Parallelism) 的配置选项 |
|
dict |
|
昇腾编译选项配置 |
|
dict |
|
昇腾编译选项配置 |
|
bool |
|
是否刷新全局昇腾配置内容。通常用于 RLHF 训练或 UT/E2E 测试用例。 |
|
str |
|
msprobe dump 的配置文件路径(仅限 Eager 模式)。 |
|
bool |
|
是否启用异步指数 (Async Exponential) Overlap。设置为 True 以启用此功能。 |
|
bool |
|
在数据并行 (DP) 中共享专家模型可提供更好的性能,但会消耗更多显存。目前仅支持 DeepSeek 系列模型。 |
|
bool |
|
是否启用多流共享专家 Overlap。此选项仅对包含共享专家的 MoE 模型生效。 |
|
bool |
|
是否启用多流门控 (Gate) Overlap。此选项仅对包含共享专家的 MoE 模型生效。 |
|
bool |
|
是否启用重计算调度器。 |
|
bool |
|
是否启用 CPU 绑定(亲和性设置)。 |
|
int |
|
动态 Batch 的 SLO(服务等级目标)限制。这是用于支持动态特性的新调度器参数。 |
|
list |
|
Page Attention 算子的自定义 Shape 列表。 |
|
int |
|
初始化阶段指定的冗余专家数量。 |
|
bool |
|
是否启用 KVCache NZ 布局。此选项仅对使用 MLA(多头潜在注意力)的模型(如 DeepSeek)生效。 |
|
dict |
|
层分片 (Layer Sharding) 线性层的配置选项 |
每个配置选项的详细说明如下:
xlite_graph_config
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
bool |
|
是否启用 xlite 图模式。目前仅支持 Llama、Qwen 全量(dense)系列模型以及 Qwen3-VL。 |
|
bool |
|
是否在 Prefill(预填充)和 Decode(解码)阶段同时启用 xlite。默认情况下,xlite 仅在 Decode 阶段启用。 |
weight_prefetch_config
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
bool |
|
是否启用权重预取。 |
|
dict |
|
各项权重的预取比例。 |
finegrained_tp_config
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
int |
|
LM Head 层的自定义张量并行大小。 |
|
int |
|
Oproj 层的自定义张量并行大小。 |
|
int |
|
Embedding 层的自定义张量并行大小。 |
|
int |
|
MLP 层的自定义张量并行大小。 |
ascend_compilation_config
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
bool |
|
是否启用 Norm 与量化 (Quant) 的算子融合(Operator Fusion)优化。 |
|
bool |
|
是否启用 QKNorm 与 RoPE 的算子融合优化。安装 Triton 后,此项默认为 True。 |
eplb_config
名称 |
类型 |
默认值 |
描述 |
|---|---|---|---|
|
bool |
|
是否启用动态专家负载均衡 (Dynamic EPLB)。 |
|
str |
|
在使用 MoE 模型的专家负载均衡时,需要传入专家映射表的路径。 |
|
int |
|
开始 EPLB 调整前的正向迭代次数。 |
|
int |
|
The forward iterations when the EPLB worker will finish CPU tasks. |
|
str |
|
将专家负载计算结果保存到指定目录下的新专家表中。 |
|
int |
|
初始化阶段指定的冗余专家数量。 |
示例#
附加配置的一个示例如下:
{
"weight_prefetch_config": {
"enabled": True,
"prefetch_ratio": {
"attn": {
"qkv": 1.0,
"o": 1.0,
},
"moe": {
"gate_up": 0.8
}
},
},
"finegrained_tp_config": {
"lmhead_tensor_parallel_size": 8,
"oproj_tensor_parallel_size": 8,
"embedding_tensor_parallel_size": 8,
"mlp_tensor_parallel_size": 8,
},
"enable_kv_nz": False,
"multistream_overlap_shared_expert": True,
"refresh": False
}