From bff6e9771d56b977a0e52a3b468186a48f3e44f3 Mon Sep 17 00:00:00 2001 From: Dvad Date: Sat, 28 Feb 2026 12:58:20 -0800 Subject: [PATCH] Fix attention mask in transformer backend --- qwen_asr/core/transformers_backend/modeling_qwen3_asr.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/qwen_asr/core/transformers_backend/modeling_qwen3_asr.py b/qwen_asr/core/transformers_backend/modeling_qwen3_asr.py index 75bef860..274595e1 100644 --- a/qwen_asr/core/transformers_backend/modeling_qwen3_asr.py +++ b/qwen_asr/core/transformers_backend/modeling_qwen3_asr.py @@ -724,11 +724,15 @@ def forward( if remainder != 0: cu_chunk_lens += [remainder] cu_seqlens = torch.tensor(cu_chunk_lens, device=aftercnn_lens.device).cumsum(-1, dtype=torch.int32) + # Build block-diagonal attention mask for non-FA2 backends (SDPA, eager). + # FA2 uses cu_seqlens natively; _prepare_attention_mask returns None for FA2. + attention_mask = self._prepare_attention_mask(hidden_states, cu_seqlens) for encoder_layer in self.layers: layer_outputs = encoder_layer( hidden_states, cu_seqlens, + attention_mask=attention_mask, ) hidden_states = layer_outputs[0]