g
gyccc/iic-speech_paraformer-large-vad-punc-spk_asr_nat-zh-cn-NPU
模型介绍文件和版本Pull Requests讨论分析
下载使用量0

Paraformer-large-vad-punc-spk on Ascend NPU

1. 简介

speech_paraformer-large-vad-punc-spk 是阿里云 iic 团队推出的端到端语音识别模型,基于 BiCifParaformer 架构(SANMEncoder + ParaformerSANMDecoder),支持 VAD + 标点 + 说话人识别 + 语言模型的完整 ASR 管线。

本项目将该模型适配到单卡昇腾 NPU(Ascend910)上运行,使用 ModelScope snapshot_download 下载权重,通过 FunASR AutoModel 框架加载,包含推理验证、CPU-NPU 精度一致性检查和性能基准测试。

2. 验证环境

项目配置
硬件单卡 Ascend910_9362
CANN8.5.1
Python3.11.14
PyTorch2.9.0+cpu
torch_npu2.9.0.post1
FunASR1.3.1
模型架构BiCifParaformer (SANMEncoder)

3. 推理运行

pip install -r requirements.txt
python inference.py

推理结果(NPU):

NPU transcription: 正是因为存在绝对正义所以我们接受现实的相对正义但是不要因为现实的相对正义我们就认为这个世界没有正义因为如果你认为这个世界没有正义
NPU inference time: 4.6960s

音频时长 13.05 秒,RTF=0.330。

4. 精度验证

对单张测试音频进行 CPU 与 NPU 一致性验证(encoder 输出层):

指标数值
max_abs_error0.000139
mean_abs_error0.000003
relative_error0.0598%
cosine_similarity1.000000
threshold1.0%
结果PASS
  • CPU Top-1: 正是因为存在绝对正义...
  • NPU Top-1: 正是因为存在绝对正义...
  • Top-1 match: True

5. 性能参考

20 次迭代基准测试(13.05s 音频):

指标数值
avg_latency644.11 ms
min_latency629.02 ms
max_latency657.80 ms
p50_latency643.79 ms
p90_latency651.16 ms
p95_latency654.20 ms
RTF0.0493

6. 精度评测说明

本项目包含单图 smoke consistency 验证,非官方完整验证集评测。详细指标见第 4 节。

7. 自验证截图

详见 screenshots/self_verification.png。

8. 日志文件

  • logs/inference.log — NPU 推理日志
  • logs/eval_consistency.log — CPU-NPU 精度一致性检查
  • logs/benchmark.log — 性能基准测试
  • logs/env_check.log — 环境检查

9. 注意事项

  • 无 ffmpeg 环境,通过 monkey-patch load_audio_text_image_video 支持 numpy 数组输入
  • 精度一致性通过 encoder 层 hook 比较,relative_error 远低于 1.0% 阈值
  • 模型为流水线架构(VAD + Punc + ASR + Spk),本项目仅适配核心 ASR 部分

10. 标签 #NPU

#NPU #Ascend #ASR #Paraformer #FunASR