diff --git a/python/sglang/srt/batch_overlap/two_batch_overlap.py b/python/sglang/srt/batch_overlap/two_batch_overlap.py index 12589a879..cfd2a54ed 100644 --- a/python/sglang/srt/batch_overlap/two_batch_overlap.py +++ b/python/sglang/srt/batch_overlap/two_batch_overlap.py @@ -440,18 +440,23 @@ class TboDPAttentionPreparer: @staticmethod def _compute_global_forward_mode(forward_modes): - forward_modes_excluding_idle = [ - x for x in forward_modes if x != ForwardMode.IDLE.value + forward_modes_excluding_idle_and_prebuilt = [ + x + for x in forward_modes + if x != ForwardMode.IDLE.value and x != ForwardMode.PREBUILT.value ] - if not forward_modes_excluding_idle: + if not forward_modes_excluding_idle_and_prebuilt: return ForwardMode.IDLE, False forward_mode_agree = TboDPAttentionPreparer._is_all_same( - forward_modes_excluding_idle + forward_modes_excluding_idle_and_prebuilt ) + global_forward_mode = ( - ForwardMode(forward_modes_excluding_idle[0]) if forward_mode_agree else None + ForwardMode(forward_modes_excluding_idle_and_prebuilt[0]) + if forward_mode_agree + else None ) return global_forward_mode, forward_mode_agree