A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 4, 08:45 UTC
[DSV4] Guard megamoe flag with Pure TP (#41522)
Signed-off-by: Yongye Zhu <zyy1102000@gmail.com>
Yongye Zhu committed
May 2, 2026 at 19:41 UTC
1c607d7b2cd4fb572b919c6053f19d0577203495
1 file changed
+16
-10
vllm/model_executor/models/deepseek_v4.py
+16
-10
@@ -715,12 +715,15 @@ class DeepseekV4MoE(nn.Module):
715
config = vllm_config.model_config.hf_config
716
quant_config = vllm_config.quant_config
717
self.prefix = prefix
718
- if vllm_config.parallel_config.enable_expert_parallel:
719
- self.use_mega_moe = (
720
- vllm_config.kernel_config.moe_backend == "deep_gemm_mega_moe"
718
+ self.use_mega_moe = (
719
+ vllm_config.kernel_config.moe_backend == "deep_gemm_mega_moe"
720
+ )
721
+ if self.use_mega_moe and not vllm_config.parallel_config.enable_expert_parallel:
722
+ raise NotImplementedError(
723
+ "DeepSeek V4 MegaMoE currently requires expert parallel. "
724
+ "Enable it with --enable-expert-parallel, or pick a different "
725
+ "moe backend."
726
)
722
- else:
723
- self.use_mega_moe = False
727
728
self.routed_scaling_factor = getattr(config, "routed_scaling_factor", 1.0)
729
self.hidden_size = config.hidden_size
@@ -1223,12 +1226,15 @@ class DeepseekV4Model(nn.Module):
1226
config = vllm_config.model_config.hf_config
1227
quant_config = vllm_config.quant_config
1228
self.config = config
1226
- if vllm_config.parallel_config.enable_expert_parallel:
1227
- self.use_mega_moe = (
1228
- vllm_config.kernel_config.moe_backend == "deep_gemm_mega_moe"
1229
+ self.use_mega_moe = (
1230
+ vllm_config.kernel_config.moe_backend == "deep_gemm_mega_moe"
1231
+ )
1232
+ if self.use_mega_moe and not vllm_config.parallel_config.enable_expert_parallel:
1233
+ raise NotImplementedError(
1234
+ "DeepSeek V4 MegaMoE currently requires expert parallel. "
1235
+ "Enable it with --enable-expert-parallel, or pick a different "
1236
+ "moe backend."
1237
)
1230
- else:
1231
- self.use_mega_moe = False
1238
self.vocab_size = config.vocab_size
1239
self.hc_eps = config.hc_eps
1240
self.hc_mult = config.hc_mult