1. 简介
本模型在 Paraformer-Large ASR 基础上集成了 VAD(语音活动检测) 和 标点恢复 功能,支持端到端的语音识别流水线。本仓库提供基于 Ascend NPU 的适配方案。
- 模型:
speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch
- 架构:BiCifParaformer (CifPredictorV3) + FSMN-VAD + CT-Transformer
- 原始权重:ModelScope
2. 验证环境
| 组件 | 版本 |
|---|
funasr | 1.3.1 |
torch | 2.9.0+cpu |
torch-npu | 2.9.0 |
soundfile | >=0.12 |
jieba | >=0.42 |
- NPU:
1 逻辑卡(Ascend910B4)
- OS:
Linux 5.10.0 aarch64
- Python:
3.11.14
3. 快速开始
3.1 安装依赖
pip install funasr==1.3.1 soundfile jieba
3.2 推理命令
python inference.py --audio audio.wav
带 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线程) | — | 4.973s | 1.00x | — |
| NPU (Ascend910B4) | 4.002s | 2.781s | — | 1.79x |
VAD/Punc 模型运行在 CPU(轻量级),仅 ASR 部分移至 NPU,整体加速比受 CPU 子模型制约。
5. 注意事项
- VAD、标点模型在 CPU 上运行(基于音频特征/文本特征,轻量级)
- ASR 主模型移至 NPU 加速
- 子模型首次运行会自动从 ModelScope 下载缓存
- NPU 适配策略:CPU 构建所有模型 → ASR 移至 NPU → patch ASR inference 注入 device 参数