Qwen3-ASR-0.6B 是通义千问推出的多语言语音识别模型系列中的 0.6B 参数版本。该模型支持 30 种语言和 22 种中文方言的语音识别与语种识别,支持离线推理和流式推理,具有高精度、低延时的特点。
本仓库提供基于 Ascend NPU 的适配方案,支持在华为昇腾设备上使用 torch_npu + transformers 后端进行推理。
| 组件 | 版本 |
|---|---|
vllm-ascend | 0.18.0rc1 |
vllm | 0.18.0+empty |
transformers | 4.57.6 |
torch-npu | 2.9.0.post1+gitee7ba04 |
qwen-asr | 0.0.6 |
1 逻辑卡(Atlas 800 A2)Linux 5.10.0 aarch643.11.14pip install qwen-asr
# 如使用 vLLM 后端需额外安装
# pip install qwen-asr[vllm]Qwen3-ASR 的 model_type="qwen3_asr" 未被 transformers 原生支持,加载前需注册自定义模型类:
from qwen_asr.core.transformers_backend.configuration_qwen3_asr import Qwen3ASRConfig
from qwen_asr.core.transformers_backend.modeling_qwen3_asr import Qwen3ASRForConditionalGeneration
from qwen_asr.core.transformers_backend.processing_qwen3_asr import Qwen3ASRProcessor
from transformers import AutoConfig, AutoModel, AutoProcessor
AutoConfig.register("qwen3_asr", Qwen3ASRConfig)
AutoModel.register(Qwen3ASRConfig, Qwen3ASRForConditionalGeneration)
AutoProcessor.register(Qwen3ASRConfig, Qwen3ASRProcessor)使用 Qwen3ASRModel 封装类(自动处理音频分块):
import torch
import torch_npu
from qwen_asr import Qwen3ASRModel
model = Qwen3ASRModel.from_pretrained(
"/path/to/Qwen3-ASR-0.6B",
dtype=torch.bfloat16,
attn_implementation="eager",
device_map=None,
max_inference_batch_size=32,
max_new_tokens=512,
)
# 手动移到 NPU(device_map="npu:0" 不被 transformers 支持)
model.model = model.model.to("npu:0")
results = model.transcribe(
audio="audio.wav",
language="Chinese", # 可选,设置为 None 则自动检测
)
print(results[0].language, results[0].text)python inference.py --audio test_audio_zh.wav
python inference.py --audio test_audio_en.wav --language English| 样本 | 语言 | 时长 | 参考文本 |
|---|---|---|---|
| test_audio_zh.wav | 中文 | 4.20秒 | 甚至出现交易几乎停滞的情况。 |
| test_audio_en.wav | 英文 | 15.05秒 | Hmm. Oh yeah, yeah. He wasn't even that big when I started listening to him... |
| 语言 | 字符错误率(CER) | 词错误率(WER) | 转录结果 |
|---|---|---|---|
| 中文 | 0.00% | 0.00% | 甚至出现交易几乎停滞的情况。 |
| 英文 | 0.00% | 0.00% | Hmm. Oh yeah, yeah. He wasn't even that big when I started listening to him... |
CER/WER 均为 0%,NPU 推理结果与参考文本完全一致,精度满足要求。
| 语言 | 音频时长 | 平均延迟 | P50 | P95 | 吞吐量 |
|---|---|---|---|---|---|
| 中文 | 4.20秒 | 0.558秒 | 0.557秒 | 0.562秒 | 1.79 样本/秒 |
| 英文 | 15.05秒 | 3.041秒 | 3.038秒 | 3.062秒 | 0.33 样本/秒 |
中文、英文、粤语、阿拉伯语、德语、法语、西班牙语、葡萄牙语、印尼语、意大利语、韩语、俄语、泰语、越南语、日语、土耳其语、印地语、马来语、荷兰语、瑞典语、丹麦语、芬兰语、波兰语、捷克语、菲律宾语、波斯语、希腊语、罗马尼亚语、匈牙利语、马其顿语