From 4a6440acefbd4d977620bdb6dfb7fb325cd9bda7 Mon Sep 17 00:00:00 2001 From: Harry Mellor <19981378+hmellor@users.noreply.github.com> Date: Sat, 11 Jul 2026 08:56:14 +0100 Subject: [PATCH] Bump Transformers version to 5.13.0 (#47867) Signed-off-by: Harry Mellor <19981378+hmellor@users.noreply.github.com> --- requirements/test/cpu.txt | 4 ++-- requirements/test/cuda.in | 2 +- requirements/test/cuda.txt | 4 ++-- requirements/test/nightly-torch.txt | 2 +- requirements/test/rocm.in | 2 +- requirements/test/rocm.txt | 4 ++-- requirements/test/xpu.in | 2 +- requirements/test/xpu.txt | 4 ++-- vllm/model_executor/models/granitemoehybrid.py | 4 ++++ vllm/model_executor/models/hunyuan_vision.py | 14 +++++++++++--- vllm/model_executor/models/olmo3.py | 8 +++----- vllm/transformers_utils/processors/__init__.py | 4 ---- 12 files changed, 30 insertions(+), 24 deletions(-) diff --git a/requirements/test/cpu.txt b/requirements/test/cpu.txt index da2c7b77210..5035523747f 100644 --- a/requirements/test/cpu.txt +++ b/requirements/test/cpu.txt @@ -962,7 +962,7 @@ s3transfer==0.10.3 # via boto3 sacrebleu==2.4.3 # via lm-eval -safetensors==0.7.0 +safetensors==0.8.0 # via # -r requirements/test/../common.txt # accelerate @@ -1159,7 +1159,7 @@ tqdm==4.67.3 # segmentation-models-pytorch # sentence-transformers # transformers -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@bef013c4a2180aeef83355bd200a7383ce1ac7e3 # via # -r requirements/test/../common.txt # -r requirements/test/cuda.in diff --git a/requirements/test/cuda.in b/requirements/test/cuda.in index a0061fbf78c..988b396bf5a 100644 --- a/requirements/test/cuda.in +++ b/requirements/test/cuda.in @@ -39,7 +39,7 @@ open_clip_torch==2.32.0 # Required for nemotron_vl test, Nemotron Parse in test_ datamodel_code_generator # required for minicpm3 test lm-eval[api]>=0.4.12 # required for model evaluation test mteb[bm25s]>=2, <3 # required for mteb test -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@v5.13-release tokenizers==0.22.2 schemathesis>=4.0.0 # Required for openai schema test. # quantization diff --git a/requirements/test/cuda.txt b/requirements/test/cuda.txt index 2f7b942e911..da02d16e802 100644 --- a/requirements/test/cuda.txt +++ b/requirements/test/cuda.txt @@ -1053,7 +1053,7 @@ s3transfer==0.10.3 # via boto3 sacrebleu==2.4.3 # via lm-eval -safetensors==0.7.0 +safetensors==0.8.0 # via # -c requirements/common.txt # -r requirements/test/../common.txt @@ -1261,7 +1261,7 @@ tqdm==4.67.3 # segmentation-models-pytorch # sentence-transformers # transformers -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@bef013c4a2180aeef83355bd200a7383ce1ac7e3 # via # -c requirements/common.txt # -r requirements/test/../common.txt diff --git a/requirements/test/nightly-torch.txt b/requirements/test/nightly-torch.txt index 826473db1b2..8cb7863d12b 100644 --- a/requirements/test/nightly-torch.txt +++ b/requirements/test/nightly-torch.txt @@ -29,7 +29,7 @@ opencv-python-headless >= 4.13.0 # required for video test datamodel_code_generator # required for minicpm3 test lm-eval[api]>=0.4.12 # required for model evaluation test mteb[bm25s]>=2, <3 # required for mteb test -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@v5.13-release tokenizers==0.22.2 schemathesis>=4.0.0 # Required for openai schema test. # quantization diff --git a/requirements/test/rocm.in b/requirements/test/rocm.in index b1c9a473e2f..f8553637fa9 100644 --- a/requirements/test/rocm.in +++ b/requirements/test/rocm.in @@ -35,7 +35,7 @@ open_clip_torch==2.32.0 # Required for nemotron_vl test, Nemotron Parse in test_ datamodel_code_generator # required for minicpm3 test lm-eval[api]>=0.4.12 # required for model evaluation test mteb[bm25s]>=2, <3 # required for mteb test -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@v5.13-release tokenizers==0.22.2 schemathesis>=4.0.0 # Required for openai schema test # quantization diff --git a/requirements/test/rocm.txt b/requirements/test/rocm.txt index 52a0ad88c9c..7e30075184b 100644 --- a/requirements/test/rocm.txt +++ b/requirements/test/rocm.txt @@ -1035,7 +1035,7 @@ s3transfer==0.16.0 # via boto3 sacrebleu==2.6.0 # via lm-eval -safetensors==0.7.0 +safetensors==0.8.0 # via # -c requirements/common.txt # -r requirements/test/../common.txt @@ -1218,7 +1218,7 @@ tqdm==4.67.3 # sentence-transformers # tilelang # transformers -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@bef013c4a2180aeef83355bd200a7383ce1ac7e3 # via # -c requirements/common.txt # -r requirements/test/../common.txt diff --git a/requirements/test/xpu.in b/requirements/test/xpu.in index 1172553c4ac..6d5d6e4ad85 100644 --- a/requirements/test/xpu.in +++ b/requirements/test/xpu.in @@ -17,7 +17,7 @@ accelerate arctic-inference lm_eval[api]>=0.4.12 modelscope<1.38 -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@v5.13-release # --- Audio Processing --- librosa diff --git a/requirements/test/xpu.txt b/requirements/test/xpu.txt index 6335fc90cff..60bf02ab28b 100644 --- a/requirements/test/xpu.txt +++ b/requirements/test/xpu.txt @@ -779,7 +779,7 @@ rpds-py==0.30.0 # referencing sacrebleu==2.6.0 # via lm-eval -safetensors==0.7.0 +safetensors==0.8.0 # via # -c requirements/common.txt # -r requirements/test/../common.txt @@ -940,7 +940,7 @@ tqdm==4.67.3 # pqdm # sentence-transformers # transformers -transformers==5.10.4 +transformers @ git+https://github.com/huggingface/transformers.git@bef013c4a2180aeef83355bd200a7383ce1ac7e3 # via # -c requirements/common.txt # -r requirements/test/../common.txt diff --git a/vllm/model_executor/models/granitemoehybrid.py b/vllm/model_executor/models/granitemoehybrid.py index b50d11e3942..a50a95a302e 100644 --- a/vllm/model_executor/models/granitemoehybrid.py +++ b/vllm/model_executor/models/granitemoehybrid.py @@ -316,8 +316,12 @@ class GraniteMoeHybridAttention(nn.Module): ALL_DECODER_LAYER_TYPES = { + # Transformers < 5.13.0 "attention": GraniteMoeHybridAttentionDecoderLayer, "mamba": GraniteMoeHybridMambaDecoderLayer, + # Transformers >= 5.13.0 + "full_attention": GraniteMoeHybridAttentionDecoderLayer, + "linear_attention": GraniteMoeHybridMambaDecoderLayer, } diff --git a/vllm/model_executor/models/hunyuan_vision.py b/vllm/model_executor/models/hunyuan_vision.py index 87520fe29ee..b980e8ae46a 100644 --- a/vllm/model_executor/models/hunyuan_vision.py +++ b/vllm/model_executor/models/hunyuan_vision.py @@ -73,6 +73,7 @@ from vllm.multimodal.processing import ( BaseProcessingInfo, PromptReplacement, PromptUpdate, + PromptUpdateDetails, ) from vllm.sequence import IntermediateTensors from vllm.transformers_utils.configs.hunyuan_vl import ( @@ -751,8 +752,10 @@ class HunYuanVLMultiModalProcessor(BaseMultiModalProcessor[HunYuanVLProcessingIn hf_processor = self.info.get_hf_processor(**hf_processor_mm_kwargs) image_processor = self.info.get_image_processor(**hf_processor_mm_kwargs) - placeholder = { + token_ids = { "image": hf_processor.image_token_id, + "image_start": hf_processor.image_start_token_id, + "image_end": hf_processor.image_end_token_id, } merge_size = image_processor.merge_size @@ -766,12 +769,17 @@ class HunYuanVLMultiModalProcessor(BaseMultiModalProcessor[HunYuanVLProcessingIn num_tokens = (int(grid_h) // merge_size) * ( int(grid_w) // merge_size + 1 ) + 2 - return [placeholder[modality]] * num_tokens + tokens = ( + [token_ids[f"{modality}_start"]] + + [token_ids[modality]] * num_tokens + + [token_ids[f"{modality}_end"]] + ) + return PromptUpdateDetails.select_token_id(tokens, token_ids[modality]) return [ PromptReplacement( modality=modality, - target=[placeholder[modality]], + target=[token_ids[modality]], replacement=partial(get_replacement_hunyuan_vl, modality=modality), ) for modality in ("image",) diff --git a/vllm/model_executor/models/olmo3.py b/vllm/model_executor/models/olmo3.py index 3c36c059788..922834a8ee6 100644 --- a/vllm/model_executor/models/olmo3.py +++ b/vllm/model_executor/models/olmo3.py @@ -137,11 +137,9 @@ class Olmo3Attention(nn.Module): ) # Rotary embeddings. Rope scaling is only applied on full attention layers. - if sliding_window is None: - rope_parameters = self.config.rope_parameters - else: - rope_theta = self.config.rope_parameters["rope_theta"] - rope_parameters = {"rope_type": "default", "rope_theta": rope_theta} + rope_parameters = self.config.rope_parameters + attn_type = "full_attention" if sliding_window is None else "sliding_attention" + rope_parameters = rope_parameters.get(attn_type, rope_parameters) self.rotary_emb = get_rope( self.head_dim, max_position=self.max_position_embeddings, diff --git a/vllm/transformers_utils/processors/__init__.py b/vllm/transformers_utils/processors/__init__.py index e4ece0a4197..60eb2922fda 100644 --- a/vllm/transformers_utils/processors/__init__.py +++ b/vllm/transformers_utils/processors/__init__.py @@ -21,8 +21,6 @@ __all__ = [ "GLM4VProcessor", "Granite4VisionProcessor", "H2OVLProcessor", - "HunYuanVLProcessor", - "HunYuanVLImageProcessor", "Moondream3Processor", "InternVLProcessor", "IsaacProcessor", @@ -58,8 +56,6 @@ _CLASS_TO_MODULE: dict[str, str] = { "GLM4VProcessor": "vllm.transformers_utils.processors.glm4v", "Granite4VisionProcessor": "vllm.transformers_utils.processors.granite4_vision", "H2OVLProcessor": "vllm.transformers_utils.processors.h2ovl", - "HunYuanVLProcessor": "vllm.transformers_utils.processors.hunyuan_vl", - "HunYuanVLImageProcessor": "vllm.transformers_utils.processors.hunyuan_vl_image", "InternVLProcessor": "vllm.transformers_utils.processors.internvl", "IsaacProcessor": "vllm.transformers_utils.processors.isaac", "KimiAudioProcessor": "vllm.transformers_utils.processors.kimi_audio",