m0_74196153/speech_paraformer-large-vad-punc-spk_asr_nat-zh-cn
模型介绍文件和版本Pull Requests讨论分析

Paraformer ASR + VAD + Punc + Speaker Diarization on Ascend NPU

1. 简介

本模型在 Paraformer ASR 基础上集成了 VAD(语音活动检测)、标点恢复 和 说话人日志(Speaker Diarization),支持完整的语音识别与说话人分割流水线。本仓库提供基于 Ascend NPU 的适配方案。

  • 模型:speech_paraformer-large-vad-punc-spk_asr_nat-zh-cn
  • 架构:BiCifParaformer + FSMN-VAD + CT-Transformer + CAM++ Speaker Embedding
  • 原始权重:ModelScope

2. 验证环境

组件版本
funasr1.3.1
torch2.9.0+cpu
torch-npu2.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

禁用说话人日志:

python inference.py --audio audio.wav --no-spk

3.3 Python API

from inference import build_model, transcribe

model = build_model("/path/to/model")
result = transcribe(model, "audio.wav")
print(result.get("text", ""))
# 含说话人信息
for seg in result.get("sentence_info", []):
    print(f"[{seg['spk']}] {seg['text']}")

4. 精度与性能

4.1 测试音频

样本语言时长
asr_example.wavChinese5.58s

4.2 精度结果(NPU vs CPU)

指标结果
字符级一致性100.00%
CPU 输出欢迎大家来体验达摩院推出的语音识别模型。
NPU 输出欢迎大家来体验达摩院推出的语音识别模型。

4.3 性能 Benchmark

设备首次运行稳态平均CPU 对比加速比
CPU (16线程)—4.121s1.00x—
NPU (Ascend910B4)1.945s1.936s—2.13x

VAD/Punc/SPK 模型运行在 CPU,仅 ASR 主模型移至 NPU。当前测试音频为单人短语音,说话人日志增量开销有限。

5. 注意事项

  • VAD、标点、说话人模型运行在 CPU(基于音频/文本特征设计,轻量级)
  • ASR 主模型移至 NPU 加速
  • CAM++ Speaker 模型在多人对话场景下提供说话人分割功能
  • 子模型首次运行会自动从 ModelScope 下载缓存
  • NPU 适配策略:CPU 构建所有模型 → ASR 移至 NPU → patch ASR inference 注入 device 参数
下载使用量0