S
Solis_caser/malinois
模型介绍
文件和版本
Pull Requests
讨论
分析

multimolecule/malinois 昇腾 NPU 适配

模型介绍

Malinois 根据 DNA 序列预测三个细胞系相关的调控信号。本仓库保留固定上游模型的推理脚本,并在 Ascend NPU 上完成真实前向适配,禁止 CPU fallback。

上游模型

上游模型:multimolecule/malinois。

  • 固定 revision:0c670497e829ec4db586900ff35e89cf3666aa3e
  • checkpoint:model.safetensors,16,472,276 bytes
  • checkpoint SHA-256:15aed27e2398f61cc53094e795043a264930f129f58b8e889d8d0b7bfbbed641
  • 模型类:MalinoisForSequencePrediction

输入格式

输入为一条可复现的 600 bp FASTA DNA 序列(A/C/G/T);DnaTokenizer 产生 input_ids,shape 为 [1,600]、dtype 为 int64。三个输出通道对应 K562、HepG2 和 SK-N-SH。

NPU 环境

实测设备为 npu:0(Ascend910_9362)。实测软件为 torch 2.9.0+cpu、torch_npu 2.9.0.post1+gitee7ba04、CANN 8.5.1;底层栈由平台环境提供,不在 requirements.txt 中安装或升级。

运行命令

flock -x -w 1800 /tmp/ascend-model-agent-npu-v1.lock \
  python3 inference.py --checkpoint-dir /path/to/malinois-checkpoint \
  --input-fasta /path/to/600bp.fa

其中 checkpoint 目录必须包含已核验的固定文件;本仓库不上传权重。

实际结果

真实 NPU 前向退出码为 0:输入 [1,600] int64 位于 npu:0,输出 logits 为 [1,3]、float32、device=npu:0,观测值为 [-0.09717, 0.00412, 0.18268]。重复运行结果一致,未使用 CPU fallback。

限制

结果绑定固定 revision、checkpoint 字节数/SHA-256、600 bp 输入和当前 Ascend 软件栈;不支持更换权重、改变输入长度、升级底层 torch/torch_npu/CANN 或用 CPU 代替 NPU。权重文件不包含在最终仓库中。

许可证

运行时代码依赖 multimolecule==0.2.1,其发行元数据核实为 GNU AGPL v3(许可证文本)。上游 checkpoint 仍受其上游发布条款约束,本仓库不重新授权该权重。

截图证据

Model Agent 工作流

昇腾 NPU 设备调用

模型真实推理结果