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