g
gcw_StsIRaj1/MidnightRunner-Misc-Ascend-NPU
模型介绍
文件和版本
Pull Requests
讨论
分析

MidnightRunner/Misc 昇腾 NPU 适配

  • 官方模型池:Phase 4 / Row 79
  • 参赛微信名称:风云游子
  • 参赛 AtomGit ID:@gcw_StsIRaj1
  • 模型来源:https://huggingface.co/MidnightRunner/Misc
  • 官方可达镜像:https://ai.gitcode.com/hf_mirrors/MidnightRunner/Misc
  • 上游许可证:CreativeML Open RAIL-M (repository metadata; component licenses follow original sources)
  • 推理引擎:official OmniSR architecture via pinned Spandrel + safetensors + torch_npu
  • 验证硬件:Ascend910 / CANN / torch_npu / npu:0

作品结论

本作品在大赛官方远端 Ascend Model Agent 的 Ascend910 上加载真实 checkpoint,并完成 omnisr_x2_super_resolution。CPU fallback 被禁止;模型、输入与输出设备信息、权重加载审计、输出统计、软件版本和耗时均固化在 evidence/result.json。

固定 MidnightRunner/Misc 官方提交 0a9446be 的 1,655,992 字节 OmniSR_X2_DIV2K.safetensors 与官方 LFS SHA-256;由 Spandrel 固定提交 e1f2ea14 自动识别 OmniSR X2 架构并严格加载 784,604 参数,模型参数、10 个 buffers、16×16 RGB 输入与 32×32 超分输出全程位于 npu:0。

适配边界

  1. 保留上游模型结构、参数与任务语义,只增加 NPU 设备迁移、必要的版本兼容和证据采集。
  2. 使用确定性合成输入执行最小可复现实验,避免外部数据集和网络波动影响复核。
  3. 加载失败、张量落回 CPU、输出非有限或形状不符时立即失败,不以随机初始化或 CPU 结果替代。
  4. 本作品验证官方权重的昇腾 NPU 前向推理链路可执行,不声称完成训练,也不把烟测统计解释为业务精度。

应用价值与决策边界

  • 目标场景:低分辨率图像增强、档案修复、边缘视觉预处理与国产算力超分迁移验证
  • 输入语义:1 张 16 × 16 的确定性 RGB 图像张量,像素范围 [0,1]
  • 输出语义:1 张 32 × 32 的有限 RGB X2 超分辨率张量
  • 决策支持:用于验证 OmniSR 超分模型在昇腾 NPU 的完整推理迁移,并为后续真实图像 PSNR/SSIM 与主观质量评测提供工程基线
  • 证据边界:当前证明固定官方 checkpoint 的完整 Ascend NPU 前向、严格加载与有限输出;未声称真实图像集精度、训练结果或生产图像质量收益

运行步骤

远端环境应预先安装版本匹配的 CANN、PyTorch 与 torch_npu,不要用普通 pip install 覆盖官方运行时。

python3 -m pip install -r requirements.txt

python3 inference.py --model /tmp/atomgit/prep_phase4/row79-midnightrunner-misc-omnisr-x2/OmniSR_X2_DIV2K.safetensors --out outputs/result.json
npu-smi info
cat outputs/result.json

实测证据

  • 模型状态设备:npu:0
  • 输入语义:[1,3,16,16]
  • 输出形状:[1,3,32,32]
  • 参数量:784,604
  • 推理耗时:147.892 ms
  • 权重加载:严格加载通过(0 缺失/0 意外)
  • 设备闭环:模型、输入、输出张量均为 npu:0
  • checkpoint SHA-256:79408fc23203bf161faa957c4a602cc40521ed2235a72d976bd9d375e6644611

evidence/result.json 是机器可读事实源;三张证据图分别呈现 Agent 适配流程、NPU 设备闭环和模型输出结果。

复核清单

  • 真实 checkpoint,非随机初始化
  • 禁止 CPU fallback
  • 模型状态位于 npu:0
  • 输入与输出设备逐字段记录
  • 输出形状和有限性门禁
  • 运行时版本与耗时固化
  • 模型许可证和适配边界明确

Agent适配截图

Agent适配全过程截图

Agent 适配流程

NPU设备调用截图

NPU 设备调用

模型适配结果截图

模型适配结果