tiansz/uer_windows 是基于 UER-py 框架的文本分类模型,主干模型为 RoBERTa-wwm-base(12层Transformer、768隐藏维度、12注意力头)。该模型在昇腾 Ascend910 NPU 上完成了适配和验证。
| 组件 | 版本 |
|---|---|
| NPU | Ascend910 |
| PyTorch | 2.9.0+cpu |
| torch_npu | 2.9.0.post1+gitee7ba04 |
| transformers | 4.40.0 |
| Python | 3.11.14 |
该模型为非标准 transformers 模型,使用 UER-py 框架加载。推理脚本示例:
python3 /opt/atomgit/model_adapt/1_tiansz_uer_windows/infer_npu.py推理脚本会自动检测 NPU 设备并将模型迁移到 npu:0。
运行推理脚本后,预期输出:
NPU available: True
NPU device count: 2
NPU device name: Ascend910_9362
Config loaded from: .../base_config.json
Model loaded from: .../roberta_wwm_base.bin
Model moved to: npu:0
===== Running Inference on NPU =====
Text: 这部电影非常好看,演员演技出色,剧情引人入胜。
Prediction: 1
Probabilities: [0.4246, 0.5754]
Text: 这部电影很无聊,剧情拖沓,不推荐观看。
Prediction: 1
Probabilities: [0.4236, 0.5764]| 指标 | 数值 |
|---|---|
| 硬件 | Ascend910 |
| 推理框架 | UER-py / PyTorch |
| 迭代次数 | 100 |
| 总耗时 | 0.9243 秒 |
| 平均延迟 | 9.24 ms |
| 吞吐量 | 108.19 次/秒 |
使用相同权重在 CPU 和 NPU 分别运行 5 组测试文本,对比 softmax 输出概率。
| 指标 | 数值 |
|---|---|
| 最大误差 | 0.000000 |
| 要求 | < 1% |
| 结论 | 通过 |
strict=False