mirror of
https://github.com/vllm-project/vllm.git
synced 2026-10-28 09:45:26 +08:00
[UX] Remove --hf-overrides necessity for Qwen3-ASR-ForceAligner (#63274)
Signed-off-by: Isotr0py <Isotr0py@outlook.com> Co-authored-by: vllm-agent <claw@inferact.ai>
This commit is contained in:
1 parent
ca8dbccf20
commit
a9b727a612
5 files changed
+15
-14
No files matched your search
@@ -64,11 +64,7 @@ If your model is not in the above list, we will try to automatically convert the
|
||||
|
||||
| Architecture | Models | Inputs | Example HF Models | [LoRA](../../features/lora.md) | [PP](../../serving/parallelism_scaling.md) |
|
||||
| --------------------------------------------- | ------------------- | ----------------- | ------------------------------------------ | ------------------------------ | ------------------------------------------ |
|
||||
| `Qwen3ASRForcedAlignerForTokenClassification` | Qwen3-ForcedAligner | T + A<sup>+</sup> | `Qwen/Qwen3-ForcedAligner-0.6B` (see note) | | ✅︎ |
|
||||
|
||||
!!! note
|
||||
Forced alignment usage requires `--hf-overrides '{"architectures": ["Qwen3ASRForcedAlignerForTokenClassification"]}'`.
|
||||
Please refer to [examples/pooling/token_classify/forced_alignment_offline.py](../../../examples/pooling/token_classify/forced_alignment_offline.py).
|
||||
| `Qwen3ASRForcedAlignerForTokenClassification` | Qwen3-ForcedAligner | T + A<sup>+</sup> | `Qwen/Qwen3-ForcedAligner-0.6B` | | ✅︎ |
|
||||
|
||||
### Reward Models
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ def parse_args():
|
||||
model="Qwen/Qwen3-ForcedAligner-0.6B",
|
||||
runner="pooling",
|
||||
enforce_eager=True,
|
||||
hf_overrides={"architectures": ["Qwen3ASRForcedAlignerForTokenClassification"]},
|
||||
)
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
@@ -35,11 +35,6 @@ def test_qwen3_forced_aligner(
|
||||
dtype=dtype,
|
||||
enforce_eager=True,
|
||||
max_model_len=512,
|
||||
hf_overrides={
|
||||
"architectures": [
|
||||
"Qwen3ASRForcedAlignerForTokenClassification",
|
||||
],
|
||||
},
|
||||
) as vllm_model:
|
||||
outputs = vllm_model.llm.encode(
|
||||
[{"prompt": prompt, "multi_modal_data": {"audio": audio}}],
|
||||
|
||||
@@ -41,9 +41,6 @@ class Qwen3ASRForcedAlignerForTokenClassification(
|
||||
llm = LLM(
|
||||
model="Qwen/Qwen3-ForcedAligner-0.6B",
|
||||
runner="pooling",
|
||||
hf_overrides={
|
||||
"architectures": ["Qwen3ASRForcedAlignerForTokenClassification"]
|
||||
},
|
||||
)
|
||||
outputs = llm.encode(
|
||||
[{"prompt": prompt, "multi_modal_data": {"audio": audio}}],
|
||||
|
||||
@@ -651,6 +651,19 @@ class Qwen3_5ModelArchConfigConvertor(ModelArchConfigConvertorBase):
|
||||
super().__init__(hf_config, hf_text_config, revision)
|
||||
|
||||
|
||||
class Qwen3ASRModelArchConfigConvertor(ModelArchConfigConvertorBase):
|
||||
def __init__(
|
||||
self,
|
||||
hf_config: PreTrainedConfig,
|
||||
hf_text_config: PreTrainedConfig,
|
||||
revision: str | None = None,
|
||||
):
|
||||
thinker_config = getattr(hf_config, "thinker_config", None)
|
||||
if getattr(thinker_config, "model_type", None) == "qwen3_forced_aligner":
|
||||
hf_config.architectures = ["Qwen3ASRForcedAlignerForTokenClassification"]
|
||||
super().__init__(hf_config, hf_text_config, revision)
|
||||
|
||||
|
||||
class Qwen3OmniMoeModelArchConfigConvertor(ModelArchConfigConvertorBase):
|
||||
def __init__(
|
||||
self,
|
||||
@@ -865,6 +878,7 @@ MODEL_ARCH_CONFIG_CONVERTORS = {
|
||||
"pangu_ultra_moe_mtp": PanguUltraMoeMTPModelArchConfigConvertor,
|
||||
"qwen3_5": Qwen3_5ModelArchConfigConvertor,
|
||||
"qwen3_5_mtp": Qwen3_5MTPModelArchConfigConvertor,
|
||||
"qwen3_asr": Qwen3ASRModelArchConfigConvertor,
|
||||
"qwen3_omni_moe": Qwen3OmniMoeModelArchConfigConvertor,
|
||||
"qwen3_next_mtp": Qwen3NextMTPModelArchConfigConvertor,
|
||||
"qwen4_exp_mtp": Qwen4ExpMTPModelArchConfigConvertor,
|
||||
|
||||
Reference in new issue
Block a user