model.pb 格式权重,配置文件格式与在线版本不同,需额外适配 tokens.json 和 config.yaml| 项目 | 版本 |
|---|---|
| NPU | Ascend910B |
| CANN | 8.5.1 |
| Python | 3.11 |
| torch_npu | 2.6.0 |
| funasr | 1.3.1 |
通过 ModelScope snapshot_download 下载至本地缓存目录,推理时从本地加载。
python inference.pyrAnmscQrE dstGAh nh lA nA dGc GzArW Qn注:该离线模型的 tokens.json 与在线版本存在差异,解码文本显示为 token ID 而非有意义的波斯语文本。模型在 NPU 上可正常运行并产生非空输出,encoder 数值与 CPU 一致。
通过 register_forward_hook 在 model.model.encoder 上捕获 encoder 输出,计算 CPU 与 NPU 之间的数值差异。
| 指标 | 值 |
|---|---|
| max_abs_error | 0.0016 |
| mean_abs_error | 0.0001 |
| relative_error | 0.170% |
| cosine_similarity | 1.00000023 |
| threshold | 1.0% |
| result | PASS |
| 指标 | 值 |
|---|---|
| avg_latency_ms | 1303.58 |
| min_latency_ms | 1215.06 |
| max_latency_ms | 1339.50 |
| p50_latency_ms | 1312.12 |
| p90_latency_ms | 1338.78 |
| p95_latency_ms | 1339.14 |
| audio_duration_sec | 5.95 |
| real_time_factor | 0.2191 |
iic-speech_UniASR_asr_2pass-fa-16k-common-vocab1257-pytorch-offline-NPU/
├── model_utils.py # 模型加载与音频处理工具
├── inference.py # NPU 推理脚本
├── eval_consistency.py # CPU-NPU 数值一致性校验
├── benchmark.py # 性能测试
├── requirements.txt # 依赖
├── .gitignore
├── assets/
│ └── test.wav # 测试音频
├── logs/
│ ├── inference.log
│ ├── consistency.log
│ └── benchmark.log
├── screenshots/
│ └── self_verification.png
└── README.md# 安装依赖
pip install -r requirements.txt
# NPU 推理
python inference.py
# CPU-NPU 一致性校验
python eval_consistency.py
# 性能测试
python benchmark.py#NPU