本仓库提供 facebook/opt-125m 在昇腾 NPU 上的真实推理适配。模型为 125M 参数的 OPT 自回归文本生成模型,推理脚本使用 torch_npu 将模型、输入和输出 logits 放在 npu:0 上,并以关闭 KV cache 的贪心解码生成 20 个新 token。
上游模型:facebook/opt-125m。
本次验证使用源仓提交 27dcfa74d334bc871f3234de431e71c6eeba5dd6。真实权重文件为 pytorch_model.bin,大小 250,540,281 字节,SHA-256 为 2d74da6615135c58cf3cf9ad4cb11e7c613ff9e55fe658a47ab83b6c8d1174a9,不是 Git LFS 指针。推理脚本在加载前会严格校验字节数与 SHA-256,不匹配立即报错退出。
脚本内置真实英文输入:
The future of artificial intelligence is也可修改 inference.py 中的 PROMPT。分词后输入包含 input_ids 和 attention_mask,两者在推理前移动到 npu:0。
实测设备为 Ascend910_9362 (npu:0)。实测软件版本:
脚本会断言模型全部参数、input_ids、attention_mask 和输出 logits 的设备类型均为 NPU;任何 CPU 回退都会直接失败。
脚本默认通过 huggingface_hub.snapshot_download 按固定 revision 27dcfa74d334bc871f3234de431e71c6eeba5dd6 下载所需配置 / tokenizer / pytorch_model.bin,加载前严格校验字节数与 SHA-256:
flock -x -w 1800 /tmp/npu-adapt.lock python3 -u inference.py也可用 --model-dir 指向已含真实权重的目录(同样执行严格校验):
flock -x -w 1800 /tmp/npu-adapt.lock python3 -u inference.py --model-dir /path/to/weights昇腾运行环境需预装相互匹配的 torch、torch_npu 和 CANN;应用层依赖见 requirements.txt。
真实昇腾 NPU 推理成功,关键结果如下:
facebook/opt-125m27dcfa74d334bc871f3234de431e71c6eeba5dd6The future of artificial intelligence isThe future of artificial intelligence is in the hands of the people.npu:0torch.float32(1, 26, 50272)200.2235inference.py 的实测 SHA-256 为 d2119c12e14071ee4d4e8521b1bb1e04c7fa741bd1a4e72c0e46b2d2658e5e83。
本适配只验证了单条英文样本、batch size 1、贪心解码和 20 个新 token。结果用于比赛环境中的功能验证,不代表生产吞吐、长文本质量或完整精度评测。脚本禁用 KV cache 以提高当前昇腾环境的兼容性,不包含 CPU 回退。
上游仓库标记为自定义许可证(other);使用模型和权重前请阅读上游仓库中的 LICENSE.md 并遵守其条款。本适配不改变上游模型、checkpoint 或许可证。
以下图片均为人工截取、未经裁剪或编辑的真实比赛环境证据:


