本项目将 timm/eva02_small_patch14_336.mim_in22k_ft_in1k 图片分类模型适配到华为昇腾 NPU (Ascend910B)。
timm.create_model(pretrained=False) + 本地权重加载timm.data.resolve_model_data_config 自动生成pip install -r requirements.txt
python inference.py推理输出 Top-5 预测结果,日志写入 logs/inference.log。
以下为 NPU 真实推理输出(python inference.py),验证模型在 Ascend NPU 上可正常执行前向推理并产出预测结果。
timm/eva02_small_patch14_336.mim_in22k_ft_in1knpu:0 (Ascend910)$ python inference.py
Loading model: timm/eva02_small_patch14_336.mim_in22k_ft_in1k
Model loaded on device: npu:0
NPU Top-5 Predictions:
1. goldfish (class_1) — 0.10%
2. doormat (class_539) — 0.10%
3. borzoi (class_169) — 0.10%
4. Bloodhound (class_163) — 0.10%
5. schooner (class_780) — 0.10%CPU Top-5 Predictions:
1. goldfish (class_1) — 0.10%
2. doormat (class_539) — 0.10%
3. borzoi (class_169) — 0.10%
4. Bloodhound (class_163) — 0.10%
5. schooner (class_780) — 0.10%| 指标 | 结果 |
|---|---|
| Top-1 类别一致 | True |
| Top-5 类别一致 | True |
| NPU 推理状态 | 正常运行 |
以上输出为真实 NPU 推理结果(随机权重 smoke test),证明模型在 Ascend NPU 上可正常完成前向推理。
对单张测试图片进行 CPU 与 NPU 一致性验证:
| 指标 | 数值 |
|---|---|
| max_abs_error | 0.004520 |
| mean_abs_error | 0.000518 |
| relative_error | 0.0669% |
| cosine_similarity | 1.000000 |
| threshold | 1.0% |
| 结果 | PASS |
| 指标 | 数值 |
|---|---|
| Avg latency | 12.10 ms |
| Min latency | 9.34 ms |
| Max latency | 33.77 ms |
| P50 latency | 9.75 ms |
| P90 latency | 12.36 ms |
| P95 latency | 23.06 ms |
| Throughput | 82.62 images/sec |
本项目包含单图 smoke consistency 验证,非官方 ImageNet 完整验证集评测。详细指标见第 4 节。
见 screenshots/self_verification.png 和 screenshots/self_verification.txt。
logs/inference.log — 推理结果logs/accuracy.log — 精度一致性检查logs/benchmark.log — 性能基准测试logs/env_check.log — 环境检查timm.data.resolve_model_data_config 自动获取,无需手动配置#NPU