@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / d0e186c16f
Fork 0

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 13, 13:15 UTC

[V0 Deprecation] Remove unused `context_len` and `seq_len` from M-RoPE (#28395)

Signed-off-by: DarkLight1337 <tlleungac@connect.ust.hk>

Cyrus Leung committed Nov 11, 2025 at 00:30 UTC d0e186c16f0d62af8c128e2dc7c94cde1387ac02
13 files changed +2 -39
vllm/model_executor/models/ernie45_vl.py
-3
@@ -1435,8 +1435,6 @@ class Ernie4_5_VLMoeForConditionalGeneration(
1435 hf_config: PretrainedConfig,
1436 image_grid_thw: list[list[int]] | torch.Tensor,
1437 video_grid_thw: list[list[int]] | torch.Tensor,
1438 - context_len: int = 0,
1439 - seq_len: int | None = None,
1438 second_per_grid_ts: list[float] | None = None,
1439 audio_feature_lengths: torch.Tensor | None = None,
1440 use_audio_in_video: bool = False,
@@ -1569,7 +1567,6 @@ class Ernie4_5_VLMoeForConditionalGeneration(
1567 llm_pos_ids_list.append(torch.arange(text_len).view(1, -1).expand(3, -1))
1568
1569 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1572 - llm_positions = llm_positions[:, context_len:seq_len]
1570 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1571 return llm_positions, mrope_position_delta
1572
vllm/model_executor/models/glm4_1v.py
-3
@@ -1622,8 +1622,6 @@ class Glm4vForConditionalGeneration(
1622 image_grid_thw: list[list[int]] | torch.Tensor | None,
1623 video_grid_thw: list[list[int]] | torch.Tensor | None,
1624 second_per_grid_ts: list[float] | None = None,
1625 - context_len: int = 0,
1626 - seq_len: int | None = None,
1625 audio_feature_lengths: torch.Tensor | None = None,
1626 use_audio_in_video: bool = False,
1627 ) -> tuple[torch.Tensor, int]:
@@ -1754,7 +1752,6 @@ class Glm4vForConditionalGeneration(
1752 llm_pos_ids_list.append(torch.arange(text_len).view(1, -1).expand(3, -1))
1753
1754 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1757 - llm_positions = llm_positions[:, context_len:seq_len]
1755 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1756 return llm_positions, mrope_position_delta
1757
vllm/model_executor/models/glm4v.py
-3
@@ -625,8 +625,6 @@ class GLM4VForCausalLM(
625 hf_config: PretrainedConfig,
626 image_grid_thw: list[list[int]] | torch.Tensor,
627 video_grid_thw: list[list[int]] | torch.Tensor,
628 - context_len: int = 0,
629 - seq_len: int | None = None,
628 second_per_grid_ts: list[float] | None = None,
629 audio_feature_lengths: torch.Tensor | None = None,
630 use_audio_in_video: bool = False,
@@ -758,7 +756,6 @@ class GLM4VForCausalLM(
756 llm_pos_ids_list.append(torch.arange(text_len).view(1, -1).expand(3, -1))
757
758 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
761 - llm_positions = llm_positions[:, context_len:seq_len]
759 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
760 return llm_positions, mrope_position_delta
761
vllm/model_executor/models/interfaces.py
-4
@@ -995,8 +995,6 @@ class SupportsMRoPE(Protocol):
995 image_grid_thw: list[list[int]] | torch.Tensor | None,
996 video_grid_thw: list[list[int]] | torch.Tensor | None,
997 second_per_grid_ts: list[float] | None = None,
998 - context_len: int = 0,
999 - seq_len: int | None = None,
998 audio_feature_lengths: torch.Tensor | None = None,
999 use_audio_in_video: bool = False,
1000 ) -> tuple[torch.Tensor, int]:
@@ -1012,8 +1010,6 @@ class SupportsMRoPE(Protocol):
1010 image_grid_thw: Image grid dimensions (t, h, w)
1011 video_grid_thw: Video grid dimensions (t, h, w)
1012 second_per_grid_ts: Seconds per grid timestep for videos
1015 - context_len: Context length
1016 - seq_len: Sequence length
1013 audio_feature_lengths: Audio feature lengths for multimodal models
1014 use_audio_in_video: Whether to use audio in video for interleaving
1015
vllm/model_executor/models/keye.py
-3
@@ -1630,8 +1630,6 @@ class KeyeForConditionalGeneration(
1630 hf_config: PretrainedConfig,
1631 image_grid_thw: list[list[int]] | torch.Tensor,
1632 video_grid_thw: list[list[int]] | torch.Tensor,
1633 - context_len: int = 0,
1634 - seq_len: int | None = None,
1633 second_per_grid_ts: list[float] | None = None,
1634 audio_feature_lengths: torch.Tensor | None = None,
1635 use_audio_in_video: bool = False,
@@ -1759,6 +1757,5 @@ class KeyeForConditionalGeneration(
1757
1758 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1759 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1762 - llm_positions = llm_positions[:, context_len:seq_len]
1760
1761 return llm_positions, mrope_position_delta
vllm/model_executor/models/keye_vl1_5.py
-3
@@ -600,8 +600,6 @@ class KeyeVL1_5ForConditionalGeneration(
600 hf_config: PretrainedConfig,
601 image_grid_thw: list[list[int]] | torch.Tensor,
602 video_grid_thw: list[list[int]] | torch.Tensor,
603 - context_len: int = 0,
604 - seq_len: int | None = None,
603 second_per_grid_ts: list[float] | None = None,
604 audio_feature_lengths: torch.Tensor | None = None,
605 use_audio_in_video: bool = False,
@@ -729,6 +727,5 @@ class KeyeVL1_5ForConditionalGeneration(
727
728 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
729 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
732 - llm_positions = llm_positions[:, context_len:seq_len]
730
731 return llm_positions, mrope_position_delta
vllm/model_executor/models/paddleocr_vl.py
-3
@@ -1179,8 +1179,6 @@ class PaddleOCRVLForConditionalGeneration(nn.Module, SupportsMultiModal, Support
1179 image_grid_thw: list[list[int]] | torch.Tensor,
1180 video_grid_thw: list[list[int]] | torch.Tensor,
1181 second_per_grid_ts: list[float],
1182 - context_len: int = 0,
1183 - seq_len: int | None = None,
1182 audio_feature_lengths: torch.Tensor | None = None,
1183 use_audio_in_video: bool = False,
1184 ) -> tuple[torch.Tensor, int]:
@@ -1293,7 +1291,6 @@ class PaddleOCRVLForConditionalGeneration(nn.Module, SupportsMultiModal, Support
1291
1292 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1293 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1296 - llm_positions = llm_positions[:, context_len:seq_len]
1294
1295 return llm_positions, mrope_position_delta
1296
vllm/model_executor/models/qwen2_5_omni_thinker.py
-3
@@ -927,8 +927,6 @@ class Qwen2_5OmniThinkerForConditionalGeneration(
927 image_grid_thw: list[list[int]] | torch.Tensor,
928 video_grid_thw: list[list[int]] | torch.Tensor,
929 second_per_grid_ts: list[float] | None = None,
930 - context_len: int = 0,
931 - seq_len: int | None = None,
930 audio_feature_lengths: torch.Tensor | None = None,
931 use_audio_in_video: bool = False,
932 ) -> tuple[torch.Tensor, int]:
@@ -1125,7 +1123,6 @@ class Qwen2_5OmniThinkerForConditionalGeneration(
1123 mrope_position_delta = (
1124 torch.cat(llm_pos_ids_list, dim=1).max() + 1 - len(src_item)
1125 )
1128 - llm_positions = llm_positions[:, context_len:seq_len]
1126
1127 return llm_positions, mrope_position_delta
1128
vllm/model_executor/models/qwen2_5_vl.py
-3
@@ -1118,8 +1118,6 @@ class Qwen2_5_VLForConditionalGeneration(
1118 image_grid_thw: list[list[int]] | torch.Tensor,
1119 video_grid_thw: list[list[int]] | torch.Tensor,
1120 second_per_grid_ts: list[float],
1121 - context_len: int = 0,
1122 - seq_len: int | None = None,
1121 audio_feature_lengths: torch.Tensor | None = None,
1122 use_audio_in_video: bool = False,
1123 ) -> tuple[torch.Tensor, int]:
@@ -1232,7 +1230,6 @@ class Qwen2_5_VLForConditionalGeneration(
1230
1231 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1232 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1235 - llm_positions = llm_positions[:, context_len:seq_len]
1233
1234 return llm_positions, mrope_position_delta
1235
vllm/model_executor/models/qwen2_vl.py
-3
@@ -1240,8 +1240,6 @@ class Qwen2VLForConditionalGeneration(
1240 image_grid_thw: list[list[int]] | torch.Tensor | None,
1241 video_grid_thw: list[list[int]] | torch.Tensor | None,
1242 second_per_grid_ts: list[float] | None = None,
1243 - context_len: int = 0,
1244 - seq_len: int | None = None,
1243 audio_feature_lengths: torch.Tensor | None = None,
1244 use_audio_in_video: bool = False,
1245 ) -> tuple[torch.Tensor, int]:
@@ -1360,7 +1358,6 @@ class Qwen2VLForConditionalGeneration(
1358
1359 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1360 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1363 - llm_positions = llm_positions[:, context_len:seq_len]
1361
1362 return llm_positions, mrope_position_delta
1363
vllm/model_executor/models/qwen3_omni_moe_thinker.py
-2
@@ -1417,8 +1417,6 @@ class Qwen3OmniMoeThinkerForConditionalGeneration(
1417 image_grid_thw: list[list[int]] | torch.Tensor | None,
1418 video_grid_thw: list[list[int]] | torch.Tensor | None,
1419 second_per_grid_ts: list[float] | None = None,
1420 - context_len: int = 0,
1421 - seq_len: int | None = None,
1420 audio_feature_lengths: torch.Tensor | None = None,
1421 use_audio_in_video: bool = False,
1422 ) -> tuple[torch.Tensor, int]:
vllm/model_executor/models/qwen3_vl.py
+1 -3
@@ -1419,8 +1419,6 @@ class Qwen3VLForConditionalGeneration(
1419 hf_config: PretrainedConfig,
1420 image_grid_thw: list[list[int]] | torch.Tensor,
1421 video_grid_thw: list[list[int]] | torch.Tensor,
1422 - context_len: int = 0,
1423 - seq_len: int | None = None,
1422 second_per_grid_ts: list[float] | None = None,
1423 audio_feature_lengths: torch.Tensor | None = None,
1424 use_audio_in_video: bool = False,
@@ -1519,7 +1517,7 @@ class Qwen3VLForConditionalGeneration(
1517
1518 llm_positions = torch.cat(llm_pos_ids_list, dim=1).reshape(3, -1)
1519 mrope_position_delta = (llm_positions.max() + 1 - len(input_tokens)).item()
1522 - llm_positions = llm_positions[:, context_len:seq_len]
1520 +
1521 return llm_positions, mrope_position_delta
1522
1523 def get_language_model(self) -> torch.nn.Module:
vllm/model_executor/models/transformers/multimodal.py
+1 -3
@@ -371,8 +371,6 @@ class MultiModalMixin(SupportsMultiModal, SupportsMRoPE):
371 image_grid_thw: list[list[int]] | torch.Tensor | None,
372 video_grid_thw: list[list[int]] | torch.Tensor | None,
373 second_per_grid_ts: list[float] | None = None,
374 - context_len: int = 0,
375 - seq_len: int | None = None,
374 audio_feature_lengths: torch.Tensor | None = None,
375 use_audio_in_video: bool = False,
376 ) -> tuple[torch.Tensor, int]:
@@ -390,7 +388,7 @@ class MultiModalMixin(SupportsMultiModal, SupportsMRoPE):
388 video_grid_thw=video_grid_thw,
389 )
390
393 - mrope_positions = mrope_positions[:, 0, context_len:seq_len]
391 + mrope_positions = mrope_positions[:, 0]
392 mrope_position_delta = mrope_position_delta[0].item()
393
394 return mrope_positions, mrope_position_delta