From a0e7137c4bb94dcb057247334978a17364a0a127 Mon Sep 17 00:00:00 2001 From: Micah Williamson Date: Fri, 16 Oct 2026 23:25:39 -0500 Subject: [PATCH] [CI][ROCm][Bugfix] DeepSeek V4.1: don't pass expert intermediate padding to AITER (#61960) Signed-off-by: Micah Williamson Co-authored-by: Cursor --- vllm/models/deepseek_v4/amd/model.py | 4 ++++ vllm/models/deepseek_v41/amd/model.py | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/vllm/models/deepseek_v4/amd/model.py b/vllm/models/deepseek_v4/amd/model.py index f933cffcda..d1a8ca1d9d 100644 --- a/vllm/models/deepseek_v4/amd/model.py +++ b/vllm/models/deepseek_v4/amd/model.py @@ -578,6 +578,9 @@ def _validate_aiter_mega_moe_config(vllm_config: VllmConfig) -> None: class DeepseekV4MoE(nn.Module): + # None: use the padding vLLM added. + experts_intermediate_pad: int | None = None + def __init__( self, vllm_config: VllmConfig, @@ -726,6 +729,7 @@ class DeepseekV4MoE(nn.Module): top_k=config.num_experts_per_tok, hidden_size=config.hidden_size, intermediate_size=config.moe_intermediate_size, + intermediate_pad=self.experts_intermediate_pad, renormalize=config.norm_topk_prob, quant_config=quant_config, prefix=f"{prefix}.experts", diff --git a/vllm/models/deepseek_v41/amd/model.py b/vllm/models/deepseek_v41/amd/model.py index 57366f2453..9b8a00388a 100644 --- a/vllm/models/deepseek_v41/amd/model.py +++ b/vllm/models/deepseek_v41/amd/model.py @@ -77,6 +77,10 @@ logger = init_logger(__name__) class DeepseekV4MoE(DeepseekV4MoEBase): + # TODO: revert once https://github.com/ROCm/aiter/pull/6598 is in the + # pinned AITER; with the padding set, its FlyDSL MoE can output NaN. + experts_intermediate_pad = 0 + def __init__( self, vllm_config: VllmConfig,