From 24ab8f9ed9f78328906fab3ddedff2f13c5db212 Mon Sep 17 00:00:00 2001 From: Zhaoyi Li <36555117+Lzy17@users.noreply.github.com> Date: Sat, 15 Aug 2026 23:28:13 -0500 Subject: [PATCH] [AMD] Qwen3.5: guard attn layers against empty DP-attention batch (#34474) Co-authored-by: jacky.cheng --- python/sglang/srt/models/qwen3_5.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/python/sglang/srt/models/qwen3_5.py b/python/sglang/srt/models/qwen3_5.py index a2fb07c8a..52a703390 100644 --- a/python/sglang/srt/models/qwen3_5.py +++ b/python/sglang/srt/models/qwen3_5.py @@ -693,7 +693,10 @@ class Qwen3_5GatedDeltaNet(nn.Module): core_attn_out = self.norm(core_attn_out, z) core_attn_out = core_attn_out.reshape(z_shape_og) - core_attn_out = core_attn_out.reshape(*core_attn_out.shape[:-2], -1) + core_attn_out = core_attn_out.reshape( + *core_attn_out.shape[:-2], + core_attn_out.shape[-2] * core_attn_out.shape[-1], + ) output, _ = self.out_proj(core_attn_out) return output @@ -800,7 +803,7 @@ class Qwen3_5LinearDecoderLayer(nn.Module): ) ) - if not forward_batch.forward_mode.is_idle(): + if not forward_batch.forward_mode.is_idle() and hidden_states.shape[0] > 0: hidden_states = self.linear_attn( hidden_states, forward_batch, @@ -1204,7 +1207,7 @@ class Qwen3_5AttentionDecoderLayer(nn.Module): ) ) - if not forward_batch.forward_mode.is_idle(): + if not forward_batch.forward_mode.is_idle() and hidden_states.shape[0] > 0: hidden_states = self.self_attention( positions=positions, hidden_states=hidden_states,