赛事: 昇腾 Model Agent 模型适配大赛(第二季) 引擎: torch_npu + PFN Transformer 硬件: Ascend 910B 系列(实测 Ascend910B4) 标签:
npuascendpytorchtransformers
| 属性 | 值 |
|---|---|
| 原始模型 | YuchenShen/FoMo-0D |
| 架构 | FoMo-0D(PFN Transformer,Prior-Fitted Network) |
| 参数量 | 4.9M |
| 任务类型 | 零样本表格离群检测(Tabular Outlier Detection) |
| 输入格式 | 参考样本矩阵 [num_train, num_features] + 待检测矩阵 [num_test, num_features] |
| 输出格式 | 每个待检测样本的离群概率 [num_test, 2] |
pip install -r requirements.txt -i https://repo.huaweicloud.com/repository/pypi/simple/⚠️ 本仓库不包含模型权重(交付件仅
inference.py/readme.md/requirements.txt/assets/), 推理前必须先从原始模型仓单独下载权重。inference.py首次运行会自动下载 PFN 依赖代码(pfns/+fomo_hub.py,来自官方 GitHub)并注入 NPU 兼容补丁。
# 1. 下载模型权重(仓库不含权重,必须单独下载)
git clone https://gitcode.com/hf_mirrors/YuchenShen/FoMo-0D.git .
git lfs pull
# 2. 运行 NPU 推理(默认 20 参考样本 + 10 待检测样本,100 维特征)
python3 inference.py --model_path . --device npu:0python3 inference.py --model_path . --device npu:0预期输出:
[Model Agent] ✅ NPU 设备就绪: Ascend910B4
[Model Agent] ✅ 模型加载完成 → npu:0
[Model Agent] 📊 参考样本 20 个, 待检测 10 个, 特征 100 维
[Model Agent] ✅ 推理完成 → 耗时 204 ms
[Model Agent] 📈 离群概率(前5): [0.999, 1.0, 0.997, 1.0, 0.998]
[Model Agent] 📈 离群概率(后2,注入离群): [1.0, 1.0]
[Model Agent] ✅ 结果已保存 → inference_result.json.
├── inference.py # NPU 推理脚本
├── readme.md # 本文件
├── requirements.txt # 依赖清单
└── assets/ # 截图素材本模型由 昇腾 Model Agent 自动完成 NPU 适配。
FoMo-0D(PFN 少样本表格离群检测)迁移至昇腾 NPU:
inference.py 首次运行自动下载官方 pfns/ 依赖与 fomo_hub.py,并注入 NPU 兼容补丁:
fomo_hub.py 兼容 from_pretrained 传入的 config 参数。torch_npu 完成设备初始化,model(train_x, test_x) 输出各样本离群概率。