Views
No views yet
| ASR | CER | vs Whisper baseline |
|---|---|---|
| Qwen3-ASR-1.7B + this adapter | 0.0334 | -59.8% |
| Whisper-v3-turbo + LoRA | 0.0431 | -48.0% |
| Whisper-v3-turbo (baseline) | 0.0829 | — |
| Qwen3-ASR-1.7B (baseline) | 0.0870 | +4.9% |
| cs_style | Baseline | This adapter |
|---|---|---|
none (pure Korean) | 0.046 | 0.018 |
phonetic_kr (음차) | 0.078 | 0.022 |
mixed (KR+EN) | 0.140 | 0.067 |
english | 0.473 | 0.276 |
pip install qwen-asr peft1import torch
2from peft import PeftModel
3from qwen_asr.core.transformers_backend.modeling_qwen3_asr import Qwen3ASRForConditionalGeneration
4from transformers import AutoProcessor
5
6base = "Qwen/Qwen3-ASR-1.7B"
7adapter = "vitaldb/qwen3-asr-1.7b-kor-or-lora"
8
9processor = AutoProcessor.from_pretrained(base, trust_remote_code=True)
10model = Qwen3ASRForConditionalGeneration.from_pretrained(base, dtype=torch.bfloat16)
11model.thinker = PeftModel.from_pretrained(model.thinker, adapter)
12model.to("cuda").eval()
13
14import librosa
15y, _ = librosa.load("clip.wav", sr=16000, mono=True)
16
17msgs = [{"role":"system","content":""}, {"role":"user","content":[{"type":"audio","audio":""}]}]
18prompt = processor.apply_chat_template(msgs, add_generation_prompt=True, tokenize=False)
19prompt += "language Korean<asr_text>"
20
21inputs = processor(text=[prompt], audio=[y], return_tensors="pt", padding=True)
22inputs = {k: v.to("cuda") for k, v in inputs.items()}
23inputs["input_features"] = inputs["input_features"].to(torch.bfloat16)
24
25with torch.no_grad():
26 gen = model.generate(**inputs, max_new_tokens=128)
27new_tokens = gen.sequences[:, inputs["input_ids"].shape[1]:]
28text = processor.tokenizer.batch_decode(new_tokens, skip_special_tokens=True)[0].strip()
29print(text)q_proj, k_proj, v_proj, o_proj (text decoder; audio encoder frozen)chul — cloned voice of an SNUH anesthesiologist (male, written consent)sohee — preset Korean female (warm)ethan — preset multilingual male, intent-conditioned prosodymaia — preset multilingual female, intent-conditioned prosody1@misc{kor_or_qwen3_asr_lora_2026,
2 title = {Qwen3-ASR-1.7B Korean OR Speech LoRA Adapter},
3 author = {VitalDB / Seoul National University Hospital, Department of Anesthesiology and Pain Medicine},
4 year = {2026},
5 publisher = {Hugging Face},
6 url = {https://huggingface.co/vitaldb/qwen3-asr-1.7b-kor-or-lora}
7}
8
9@dataset{synthetic_kor_speech_audio_v1_2026,
10 title = {Synthetic K-OR Speech Audio v1},
11 author = {VitalDB / Seoul National University Hospital, Department of Anesthesiology and Pain Medicine},
12 year = {2026},
13 publisher = {KHDP}
14}