[MISC] Cleanup deprecated parameters (#53559)

Signed-off-by: Jee Jee Li <jeejeelee@inferact.ai> Signed-off-by: Cyrus Leung <cyrus.tl.leung@gmail.com> Co-authored-by: Cyrus Leung <tlleungac@connect.ust.hk>

Jee Jee Li committed Aug 25, 2026 at 01:19 UTC 4f686e182a3460b28df9b8e26b377a5069d519fa
12 files changed +16 -93
tests/plugins/bge_m3_sparse_plugin/bge_m3_sparse_processor/sparse_embeddings_processor.py
+4 -6
@@ -58,13 +58,11 @@ class BgeM3SparseEmbeddingsProcessor(
58 params.dimensions = self.embed_dimensions
59 return params
60
61 - def parse_request(
62 - self, request_data: object
63 - ) -> SparseEmbeddingCompletionRequestMixin:
61 + def parse_data(self, data: object) -> SparseEmbeddingCompletionRequestMixin:
62 # for vllm.entrypoints.llm.LLM, offline mode, calls `encode` directly.
65 - if isinstance(request_data, dict):
66 - return SparseEmbeddingCompletionRequestMixin(**request_data)
67 - raise TypeError("request_data should be a dictionary")
63 + if isinstance(data, dict):
64 + return SparseEmbeddingCompletionRequestMixin(**data)
65 + raise TypeError("data should be a dictionary")
66
67 def pre_process(
68 self,
vllm/config/attention.py
+1 -1
@@ -119,7 +119,7 @@ class AttentionConfig:
119 if self.use_fp4_indexer_cache is not None:
120 logger.warning(
121 "use_fp4_indexer_cache is deprecated and will be removed in "
122 - "v0.19. Use indexer_kv_dtype instead (True -> 'mxfp4')."
122 + "v0.29. Use indexer_kv_dtype instead (True -> 'mxfp4')."
123 )
124 if self.use_fp4_indexer_cache:
125 if self.indexer_kv_dtype not in ("auto", "mxfp4"):
vllm/entrypoints/pooling/base/io_processor.py
+1 -1
@@ -213,7 +213,7 @@ class PoolingIOProcessor:
213 if param.task is None:
214 param.task = pooling_task
215 elif pooling_task == "plugin":
216 - # `plugin` task uses io_processor.parse_request to verify inputs.
216 + # `plugin` task uses io_processor.parse_data to verify inputs.
217 # We actually allow plugin to overwrite pooling_task.
218 pass
219 elif param.task != pooling_task:
vllm/entrypoints/pooling/offline.py
+1 -1
@@ -173,7 +173,7 @@ class PoolingOfflineMixin(OfflineInferenceMixin):
173 "Try converting the model using `--convert classify`."
174 )
175
176 - # plugin task uses io_processor.parse_request to verify inputs
176 + # plugin task uses io_processor.parse_data to verify inputs
177 if pooling_task != "plugin" and pooling_task != self.pooling_task:
178 if pooling_task not in self.supported_tasks:
179 raise ValueError(
vllm/entrypoints/pooling/pooling/serving.py
+1 -1
@@ -74,7 +74,7 @@ class ServingPooling(PoolingBaseServing):
74 assert request.task is not None
75 pooling_task = request.task
76
77 - # plugin task uses io_processor.parse_request to verify inputs
77 + # plugin task uses io_processor.parse_data to verify inputs
78 if pooling_task != "plugin" and pooling_task != self.pooling_task:
79 if pooling_task not in self.supported_tasks:
80 raise VLLMValidationError(
vllm/envs.py
-19
@@ -91,8 +91,6 @@ if TYPE_CHECKING:
91 VLLM_FLOAT32_MATMUL_PRECISION: Literal["highest", "high", "medium"] = "highest"
92 VLLM_BATCH_INVARIANT: bool = False
93 VLLM_TRITON_USE_TD: bool | None = None
94 - # Deprecated alias of VLLM_TRITON_USE_TD (removed in v0.25).
95 - VLLM_TRITON_ATTN_USE_TD: bool | None = None
94 VLLM_GPU_SYNC_CHECK: Literal["warn", "error"] | None = None
95 MAX_JOBS: str | None = None
96 NVCC_THREADS: str | None = None
@@ -563,19 +561,6 @@ def get_env_or_set_default(
561 logger = logging.getLogger(__name__)
562
563
566 -def _deprecated_triton_attn_use_td() -> None:
567 - """Warn that VLLM_TRITON_ATTN_USE_TD was renamed to VLLM_TRITON_USE_TD.
568 -
569 - The old name is ignored; VLLM_TRITON_USE_TD is the supported variable.
570 - """
571 - if "VLLM_TRITON_ATTN_USE_TD" in os.environ:
572 - logger.warning(
573 - "VLLM_TRITON_ATTN_USE_TD is deprecated and will be removed in "
574 - "v0.25. Use VLLM_TRITON_USE_TD instead."
575 - )
576 - return None
577 -
578 -
564 def _resolve_rust_cli_path() -> str | None:
565 """Resolve the vllm-rs binary path.
566
@@ -651,10 +636,6 @@ environment_variables: dict[str, Callable[[], Any]] = {
636 "VLLM_GPU_SYNC_CHECK": env_with_choices(
637 "VLLM_GPU_SYNC_CHECK", None, ["warn", "error"]
638 ),
654 - # Deprecated: renamed to VLLM_TRITON_USE_TD. Kept registered so it does
655 - # not trip the unknown-env-var check; warns on use and is otherwise
656 - # ignored.
657 - "VLLM_TRITON_ATTN_USE_TD": lambda: _deprecated_triton_attn_use_td(),
639 # Maximum number of compilation jobs to run in parallel.
640 # By default this is the number of CPUs
641 "MAX_JOBS": lambda: os.getenv("MAX_JOBS", None),
vllm/model_executor/models/mistral_large_3.py
+1 -1
@@ -15,7 +15,7 @@ class MistralLarge3ForCausalLM(DeepseekV3ForCausalLM):
15 # (\A...\Z) and after substitution the resulting key always starts with
16 # "model." or "lm_head.", so no later pattern can accidentally match again.
17 hf_to_vllm_mapper = WeightsMapper(
18 - orig_to_new_regex={ # noqa: B950
18 + orig_to_new_regex={
19 regex.compile(
20 r"\Alayers\.(\d+)\.attention_norm\.weight\Z"
21 ): r"model.layers.\1.input_layernorm.weight",
vllm/multimodal/utils.py
-14
@@ -12,7 +12,6 @@ from typing import TYPE_CHECKING, Any
12 import numpy as np
13 import numpy.typing as npt
14 from PIL import Image
15 -from typing_extensions import deprecated
15
16 from vllm.inputs import MultiModalPlaceholders
17 from vllm.utils.import_utils import LazyLoader
@@ -325,19 +324,6 @@ def group_and_batch_mm_kwargs(
324 yield modality, num_items, mm_kwargs_batch
325
326
328 -@deprecated(
329 - "`group_mm_kwargs_by_modality` has been renamed to `group_and_batch_mm_kwargs`. "
330 - "The old name will be removed in v0.19."
331 -)
332 -def group_mm_kwargs_by_modality(
333 - mm_kwargs: list[tuple[str, MultiModalKwargsItem]],
334 - *,
335 - device: torch.types.Device = None,
336 - pin_memory: bool = False,
337 -) -> Generator[tuple[str, int, BatchedTensorInputs], None, None]:
338 - return group_and_batch_mm_kwargs(mm_kwargs, device=device, pin_memory=pin_memory)
339 -
340 -
327 def fetch_audio(
328 audio_url: str,
329 audio_io_kwargs: dict[str, Any] | None = None,
vllm/plugins/io_processors/interface.py
-44
@@ -1,6 +1,5 @@
1 # SPDX-License-Identifier: Apache-2.0
2 # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3 -import warnings
3 from abc import ABC, abstractmethod
4 from collections.abc import AsyncGenerator, Sequence
5 from typing import Generic, TypeVar
@@ -25,61 +24,18 @@ class IOProcessor(ABC, Generic[IOProcessorInput, IOProcessorOutput]):
24 self.vllm_config = vllm_config
25
26 def parse_data(self, data: object) -> IOProcessorInput:
28 - if callable(parse_request := getattr(self, "parse_request", None)):
29 - warnings.warn(
30 - "`parse_request` has been renamed to `parse_data`. "
31 - "Please update your IO Processor Plugin to use the new name. "
32 - "The old name will be removed in v0.19.",
33 - DeprecationWarning,
34 - stacklevel=2,
35 - )
36 -
37 - return parse_request(data) # type: ignore
38 -
27 raise NotImplementedError
28
29 def merge_sampling_params(
30 self,
31 params: SamplingParams | None = None,
32 ) -> SamplingParams:
45 - if callable(
46 - validate_or_generate_params := getattr(
47 - self, "validate_or_generate_params", None
48 - )
49 - ):
50 - warnings.warn(
51 - "`validate_or_generate_params` has been split into "
52 - "`merge_sampling_params` and `merge_pooling_params`."
53 - "Please update your IO Processor Plugin to use the new methods. "
54 - "The old name will be removed in v0.19.",
55 - DeprecationWarning,
56 - stacklevel=2,
57 - )
58 -
59 - return validate_or_generate_params(params) # type: ignore
60 -
33 return params or SamplingParams()
34
35 def merge_pooling_params(
36 self,
37 params: PoolingParams | None = None,
38 ) -> PoolingParams:
67 - if callable(
68 - validate_or_generate_params := getattr(
69 - self, "validate_or_generate_params", None
70 - )
71 - ):
72 - warnings.warn(
73 - "`validate_or_generate_params` has been split into "
74 - "`merge_sampling_params` and `merge_pooling_params`."
75 - "Please update your IO Processor Plugin to use the new methods. "
76 - "The old name will be removed in v0.19.",
77 - DeprecationWarning,
78 - stacklevel=2,
79 - )
80 -
81 - return validate_or_generate_params(params) # type: ignore
82 -
39 return params or PoolingParams(task="plugin")
40
41 @abstractmethod
vllm/pooling_params.py
+1 -1
@@ -88,7 +88,7 @@ class PoolingParams(
88 return deepcopy(self)
89
90 def verify(self, model_config: ModelConfig) -> None:
91 - # plugin task uses io_processor.parse_request to verify inputs,
91 + # plugin task uses io_processor.parse_data to verify inputs,
92 # skipping PoolingParams verify
93 if self.task == "plugin":
94 if self.skip_reading_prefix_cache is None:
vllm/v1/engine/async_llm.py
+3 -2
@@ -339,8 +339,9 @@ class AsyncLLM(EngineClient):
339 if isinstance(prompt, EngineCoreRequest):
340 logger.warning_once(
341 "Passing EngineCoreRequest to AsyncLLM.generate() and .add_requests() "
342 - "is deprecated and will be removed in v0.18. You should instead pass "
343 - "the outputs of Renderer.render_cmpl() or Renderer.render_chat()."
342 + "is deprecated and will be removed in the future. You should "
343 + "instead pass the outputs of Renderer.render_cmpl() or "
344 + "Renderer.render_chat()."
345 )
346
347 request = prompt
vllm/v1/engine/llm_engine.py
+3 -2
@@ -236,8 +236,9 @@ class LLMEngine:
236 if isinstance(prompt, EngineCoreRequest):
237 logger.warning_once(
238 "Passing EngineCoreRequest to LLMEngine.generate() and .add_requests() "
239 - "is deprecated and will be removed in v0.18. You should instead pass "
240 - "the outputs of Renderer.render_cmpl() or Renderer.render_chat()."
239 + "is deprecated and will be removed in the future. You should "
240 + "instead pass the outputs of Renderer.render_cmpl() or "
241 + "Renderer.render_chat()."
242 )
243
244 request = prompt