基于阿里巴巴 FunASR SenseVoiceSmall 模型微调的客家话方言语音识别 (ASR) 模型,已完成昇腾 Ascend 910 NPU 适配。
本模型基于 iic/SenseVoiceSmall 进行微调,使用 2231 条客家话数据集(梅州客家话、惠州客家话、粤西客家话)训练,能够将客家话语音识别为简体中文文本。
| 组件 | 版本 |
|---|---|
| CANN | 8.5.1 |
| PyTorch | 2.9.0 |
| torch_npu | 2.9.0 |
| FunASR | 1.3.1 |
| Python | 3.11+ |
| soundfile | 0.13+ |
pip install funasr torch_npu soundfile numpypip install modelscope
modelscope download --model lukeewin01/SenseVoiceSmall_Hakkaimport numpy as np
import soundfile as sf
from funasr import AutoModel
# 加载模型到 NPU
model = AutoModel(
model="lukeewin01/SenseVoiceSmall_Hakka",
disable_update=True,
device="npu:0",
ncpu=4,
)
# 加载音频
audio, sr = sf.read("test.wav", dtype="int16")
audio = audio.astype(np.float32) / 32768.0
# 推理
result = model.generate(
input=audio,
batch_size_s=0,
beam_size=5,
use_itn=True,
language="zh",
)
print(result[0]["text"])python inference.py --input test.wav --device npu:0 --language zh
python inference.py --input /path/to/audio_dir/ --device npu:0本模型通过以下方式完成昇腾 NPU 适配:
device 参数直接加载到 npu:0,依赖 torch_npu 提供的 NPU 设备后端soundfile 替代 torchaudio/ffmpeg 进行音频文件加载,规避依赖缺失问题torch_npu 自动将算子调度到 Ascend NPUdevice 参数,可直接指定 npu:0/npu:1| 指标 | CPU | NPU (Ascend 910) |
|---|---|---|
| 平均推理时间 | 1.0895s | 0.1164s |
| RTF (实时率) | 0.1942 | 0.0207 |
| 加速比 | 1.00x | 9.36x |
| 验证项 | 结果 |
|---|---|
| CPU vs NPU 输出一致性 | 100% (完全一致) |
| 字符错误率 (CER) | 0.00% |
| 精度阈值 | < 1% |
| 验证结论 | PASS |
| 文件 | 时长 | NPU 时间 | RTF | 识别结果 |
|---|---|---|---|---|
| 0.wav | 5.6s | 0.157s | 0.028 | 对我做了介绍那么我想说的是呢大家如果对我的研究感兴趣呢。 |
| 1.wav | 5.2s | 0.140s | 0.027 | 重点想谈三个问题。首先呢就是这一轮全球金融动荡的表现。 |
| 2.wav | 4.5s | 0.146s | 0.032 | 深入的分析这一次全球金融动荡背后的根源。 |
| 3.wav | 3.1s | 0.135s | 0.044 | 一个人这个这个人是A。 |
| 4.wav | 6.3s | 0.125s | 0.020 | 写路的老师们必须要在这个班级前面坐着是。 |
| 5.wav | 1.8s | 0.121s | 0.066 | 价格太高了。 |
SenseVoiceSmall_Hakka_NPU/
├── inference.py # NPU 推理脚本
├── eval_benchmark.py # 精度/性能评测脚本
├── eval_results.json # 评测结果 (JSON)
├── benchmark_log.txt # 运行日志
├── README.md # 本文件
└── model/ # 模型文件 (可选软链接)本项目基于 Apache 2.0 许可证发布。原始 SenseVoiceSmall 模型版权归阿里巴巴所有。
@misc{SenseVoiceSmall_Hakka_NPU,
author = {Ascend Model Adaptation},
title = {SenseVoiceSmall_Hakka - Hakka Dialect ASR on Ascend NPU},
year = {2026},
publisher = {ModelScope},
url = {https://modelscope.cn/models/lukeewin01/SenseVoiceSmall_Hakka},
}