From 1e49f74ed71cce69180cd2ff577fca89a37642f9 Mon Sep 17 00:00:00 2001 From: Dan250124 <416947747@qq.com> Date: Tue, 26 May 2026 22:33:43 +0800 Subject: [PATCH 1/2] [BugFix] Fix Qwen3-TTS Code2Wav compatibility with transformers >= 5.9.0 Adapt to breaking API changes in transformers masking_utils.create_causal_mask: - input_embeds renamed to inputs_embeds - cache_position parameter removed Use runtime signature introspection to pass correct kwargs across versions. Signed-off-by: Dan250124 <416947747@qq.com> --- .../tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py b/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py index 87acb600262..98ed510b6f1 100644 --- a/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py +++ b/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py @@ -17,7 +17,7 @@ from collections.abc import Callable from dataclasses import dataclass from typing import Any - +import inspect import numpy as np import torch from torch import nn @@ -565,12 +565,17 @@ def forward( # Prepare mask arguments mask_kwargs = { "config": self.config, - "input_embeds": inputs_embeds, "attention_mask": attention_mask, - "cache_position": cache_position, "past_key_values": past_key_values, "position_ids": position_ids, } + # Handle API changes across transformers versions + sig = inspect.signature(create_causal_mask) + if "input_embeds" in sig.parameters: + mask_kwargs["input_embeds"] = inputs_embeds + mask_kwargs["cache_position"] = cache_position + else: + mask_kwargs["inputs_embeds"] = inputs_embeds # Create the masks causal_mask_mapping = { "full_attention": create_causal_mask(**mask_kwargs), From 5c43fb451a19215279009cd4cdccaa0e3fd4e4f7 Mon Sep 17 00:00:00 2001 From: Dan250124 <416947747@qq.com> Date: Tue, 26 May 2026 22:38:45 +0800 Subject: [PATCH 2/2] [Lint] Fix import ordering for ruff compliance Move 'import inspect' to correct alphabetical position. Signed-off-by: Dan250124 <416947747@qq.com> --- .../tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py b/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py index 98ed510b6f1..99b26ea1e84 100644 --- a/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py +++ b/vllm_omni/model_executor/models/qwen3_tts/tokenizer_12hz/modeling_qwen3_tts_tokenizer_v2.py @@ -13,11 +13,12 @@ # limitations under the License. """PyTorch Qwen3TTSTokenizerV2 model.""" +import inspect import math from collections.abc import Callable from dataclasses import dataclass from typing import Any -import inspect + import numpy as np import torch from torch import nn