1. 简介
Paraformer-Large 是达摩院推出的非自回归端到端语音识别模型,基于 FunASR 框架。本仓库提供基于 Ascend NPU 的适配方案,使用 torch_npu 后端进行推理加速。
- 模型:
speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch
- 架构:Paraformer (SANMEncoder 50-block + CifPredictorV2 + ParaformerSANMDecoder 16-block)
- 原始权重:ModelScope
2. 验证环境
| 组件 | 版本 |
|---|
funasr | 1.3.1 |
torch | 2.9.0+cpu |
torch-npu | 2.9.0 |
soundfile | >=0.12 |
- NPU:
1 逻辑卡(Ascend910B4)
- OS:
Linux 5.10.0 aarch64
- Python:
3.11.14
3. 快速开始
3.1 安装依赖
pip install funasr==1.3.1 soundfile
# torch_npu 需根据昇腾环境安装
3.2 推理命令
python inference.py --audio audio.wav
带 warmup 和 benchmark:
python inference.py --audio audio.wav --warmup 3 --benchmark 10
3.3 Python API
from inference import build_model, transcribe
model = build_model("/path/to/model")
text = transcribe(model, "audio.wav")
print(text)
4. 精度与性能
4.1 测试音频
| 样本 | 语言 | 时长 |
|---|
| asr_example.wav | Chinese | 5.58s |
4.2 精度结果(NPU vs CPU)
| 指标 | 结果 |
|---|
| 字符级一致性 | 100.00% |
| CPU 输出 | 欢迎大家来体验达摩院推出的语音识别模型 |
| NPU 输出 | 欢迎大家来体验达摩院推出的语音识别模型 |
4.3 性能 Benchmark
| 设备 | 首次运行 | 稳态平均 | CPU 对比 | 加速比 |
|---|
| CPU (16线程) | — | 2.582s | 1.00x | — |
| NPU (Ascend910B4) | 17.655s | 0.936s | — | 2.76x |
首次运行包含模型加载和 NPU 图编译,后续为稳态推理延迟。
5. 注意事项
- 模型需先通过 ModelScope 下载缓存,或指定本地路径
- 首次推理较慢(含 NPU 图编译预热),后续调用为稳态性能
- 音频需为 16kHz 单声道 WAV,内部自动混音下采样
- NPU 适配策略:CPU 构建模型 → 移至 NPU → 注入 device 参数绕过 FunASR 运行时配置重置