本项目完成了 GLM-ASR-Nano-2512(智谱AI开源的 1.5B 参数语音识别模型)在华为昇腾 NPU 上的适配与验证工作,包含推理脚本、性能基准测试与完整适配文档。
GLM-ASR-Nano-2512 是一款鲁棒的开源语音识别模型:
| 项目 | 结果 |
|---|---|
| 模型加载 | 通过 |
| NPU 推理 | 通过 |
| 中文语音识别 | 输出与官方预期一致 |
| 实时率 (RTF) | 0.015(5秒音频推理仅需 78ms) |
| NPU 加速比 | ~1628x(相比 CPU) |
| NPU 内存占用 | 约 4.2 GB |
# 安装 transformers 源码(模型要求 5.x)
pip install git+https://github.com/huggingface/transformers
# 安装依赖
pip install -r requirements.txtpython -c "
from modelscope import snapshot_download
snapshot_download('ZhipuAI/GLM-ASR-Nano-2512', cache_dir='./models')
"# NPU 推理
python scripts/adapt_npu.py --device npu --audio examples/test_zh.wav
# CPU 推理(对比)
python scripts/adapt_npu.py --device cpu --audio examples/test_zh.wavpython scripts/benchmark_npu.py --device npu --batch-sizes 1 2 4.
├── README.md # 项目说明
├── requirements.txt # 依赖清单
├── docs/
│ └── ascend-adaptation.md # 详细适配验证报告
├── scripts/
│ ├── adapt_npu.py # NPU 推理脚本
│ └── benchmark_npu.py # 性能基准测试脚本
├── examples/
│ └── test_zh.wav # 测试音频(中文)
├── models/
│ └── ZhipuAI/GLM-ASR-Nano-2512/ # 模型权重(下载后)
└── benchmark_results.json # 性能测试报告(生成)| 适配项 | GPU 方式 | 昇腾 NPU 方式 |
|---|---|---|
| 设备 | device="cuda" | device="npu" |
| device_map | device_map="auto" | 手动 model.to("npu") |
| 数据类型 | torch.bfloat16 | torch.bfloat16(原生支持) |
| 同步 | torch.cuda.synchronize() | torch.npu.synchronize() |
本项目适配代码遵循 MIT 许可证。模型权重与原始代码遵循其各自的许可证。