From f4d5f73ffa402569ee76e5a2ade05ce7f8b5a843 Mon Sep 17 00:00:00 2001 From: Priyansh Jain <167848587+Priyjain-amd@users.noreply.github.com> Date: Tue, 23 Jun 2026 22:26:17 +0530 Subject: [PATCH] =?UTF-8?q?[Bugfix]:=20Fix=20unquantized=20gpt-oss=20weigh?= =?UTF-8?q?t=20loading=20broken=20by=20FusedMoE=20r=E2=80=A6=20(#45818)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: priyansh jain Co-authored-by: Li, Jiang --- vllm/model_executor/models/gpt_oss.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/vllm/model_executor/models/gpt_oss.py b/vllm/model_executor/models/gpt_oss.py index f10151180d..2ff5a9ea79 100644 --- a/vllm/model_executor/models/gpt_oss.py +++ b/vllm/model_executor/models/gpt_oss.py @@ -979,7 +979,11 @@ class GptOssModel(nn.Module, EagleModelMixin): tp_rank_start = tp_rank * per_rank_intermediate_size tp_rank_end = min((tp_rank + 1) * per_rank_intermediate_size, intermediate_size) - for name, weight in weights: + # Use centralized weight remapping for MoE expert parameters. + # The FusedMoE refactor moved expert params under + # `mlp.experts.routed_experts.*`; this remaps checkpoint names so + # MoE weight/bias keys resolve against params_dict. + for name, weight in remap_moe_expert_weights(weights, params_dict): # Skip layers on other devices. if is_pp_missing_parameter(name, self): continue