vllm 启动模型参数设置
工作机器是启动时有个报错:指,是一种高效注意力机制实现,用于加速 Transformer 模型训练和推理。:NVIDIA GPU 的版本号,不同架构的 GPU 对应不同版本(如 8.0 对应 Ampere 架构的 A100、RTX 30 系列)。:要求 GPU 的计算能力不低于 8.0(即 sm_80 或更高)。返回 compute_cap 7.0 7.0 7.0 7.0:表头,表示“计算能力”。
工作机器是 4 张 Tesla V100
启动时有个报错
ERROR: Cannot use FA version 2 is not supported due to FA2 is only supported on devices with compute capability >= 80
-
FA2:指 FlashAttention-2,是一种高效注意力机制实现,用于加速 Transformer 模型训练和推理。
-
Compute Capability:NVIDIA GPU 的计算能力版本号,不同架构的 GPU 对应不同版本(如 8.0 对应 Ampere 架构的 A100、RTX 30 系列)。
-
≥ 80:要求 GPU 的计算能力不低于 8.0(即 sm_80 或更高)。
检查计算能力 nvidia-smi --query-gpu=compute_cap --format=csv
返回 compute_cap 7.0 7.0 7.0 7.0
-
compute_cap:表头,表示“计算能力”。
-
7.0:第一块 GPU 的计算能力为 7.0。
-
7.0:第二块 GPU 的计算能力为 7.0。
-
7.0:第三块 GPU 的计算能力为 7.0。
-
7.0:第四块 GPU 的计算能力为 7.0。
V100 是 7.0
vllm serve Qwen/Qwen3-Coder-30B-A3B-Instruct \
--tensor-parallel-size 4 \
--enable-expert-parallel \
--max-model-len 32768 \
--gpu-memory-utilization 0.9 \
--max-num-seqs 512 \
--swap-space 16 \
--trust-remote-code \
--host 0.0.0.0 \
--port 8000 \
--dtype bfloat16
按照这个设置果然爆掉了
修改参数 --max-num-seqs 512
--dtype half
关键参数说明
1. MoE 模型专用参数
| 参数 | 作用 | 说明 |
|---|---|---|
--enable-expert-parallel |
启用专家并行 | 必须添加! Qwen3-Coder 采用 MoE 架构(128个专家,激活8个),没有这个参数会导致专家切分不均匀,即使设置 TP=4 也可能报错 。 |
--tensor-parallel-size 4 |
张量并行 | 将模型切分到 4 张 GPU 上运行。对于你的 4×V100 环境,这个设置刚好用完所有卡。 |
2. 显存与性能优化参数
| 参数 | 推荐值 | 作用 |
|---|---|---|
--max-model-len |
32768 |
设置最大上下文长度。Qwen3-Coder 原生支持 256K,但 V100 显存有限(16GB),建议从 32K 开始,根据 OOM 情况调整 。 |
--gpu-memory-utilization |
0.9 |
控制 vLLM 使用的显存比例。0.9 表示预留 10% 给其他进程,V100 环境下建议保持 0.85-0.9 。 |
--max-num-seqs |
512 |
限制同时处理的请求数量,防止显存爆炸 。 |
--swap-space |
16 |
设置 CPU 交换空间大小(GB),用于缓解显存压力 。 |
--dtype |
bfloat16 |
数据类型。V100 不支持 bfloat16,实际会自动 fallback 到 float16。也可以显式指定 --dtype half。 |
3. 服务与兼容性参数
| 参数 | 作用 |
|---|---|
--trust-remote-code |
允许加载 Hugging Face 上的自定义代码(很多模型需要)。 |
--host 0.0.0.0 |
允许外部 IP 访问,方便局域网内调用。 |
--port 8000 |
指定服务端口(默认就是 8000,可省略)。 |
--served-model-name |
可选,自定义 API 中的模型名称,例如 --served-model-name qwen3-coder 。 |
硬件环境
机器是 4 张 Tesla V100 (计算能力 7.0):
-
显存计算:V100 单卡 16GB,4 卡总显存 64GB。Qwen3-Coder-30B-A3B 是 30.5B 总参数,激活 3.3B 的 MoE 模型,BF16 权重约 61GB 。刚好卡在显存边缘,因此上述参数中
--gpu-memory-utilization 0.9和--max-model-len的调整非常关键。 -
精度选择:V100 不支持 FP8,所以不要尝试
--kv-cache-dtype fp8_e4m3。使用bfloat16或half即可。 -
如果遇到 OOM:
-
降低
--max-model-len到 16384 或 8192。 -
降低
--max-num-seqs到 128 或 64。 -
降低
--gpu-memory-utilization到 0.85 。 -
考虑使用量化版本,例如
Qwen/Qwen3-Coder-30B-A3B-Instruct-AWQ,并调整启动命令中的模型名称 。
-
不同量化版本的启动参数对比
| 模型版本 | 显存需求 | 建议启动参数 |
|---|---|---|
| BF16 原版 | ~61GB | 如上述命令 |
| AWQ 4bit 版 | ~16GB | 使用 tclf90/Qwen3-Coder-30B-A3B-Instruct-AWQ,仍需 --enable-expert-parallel |
| FP8 版 | ~32GB | 需添加 --kv-cache-dtype fp8_e4m3,但 V100 不支持 |
更多推荐



所有评论(0)