tiny-random-LlamaForCausalLM 是一个随机初始化的小型 Llama 因果语言模型(约 106 万参数),用于验证 Llama 架构(RMSNorm、RoPE 旋转位置编码、GQA 注意力、SwiGLU FFN)在昇腾 NPU 上的前向传播与自回归生成链路是否完整可用。
LlamaForCausalLM(随机初始化)model.safetensors(2.1MB)| 组件 | 版本 | 说明 |
|---|---|---|
| 昇腾 NPU | Ascend910_9362 ×2(64GB HBM) | 推理硬件 |
| CANN | 8.5.1 | 昇腾计算框架 |
| torch | 2.9.0+cpu | PyTorch |
| torch_npu | 2.9.0.post1 | 昇腾 NPU 插件 |
| transformers | 4.57.6 | 模型加载与生成 |
安装依赖:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simplenpu-smi info # 确认 NPU 健康与显存
python3 -c "import torch, torch_npu; print(torch.npu.device_count())"cd tiny-random-llama-npu-deployment
ASCEND_RT_VISIBLE_DEVICES=0 python3 inference.pypython3 inference.py --prompt "Once upon a time" --max-new-tokens 64python3 inference.py --device npu:0 --warmup 2 --runs 10测试输入:
"The capital of France is"输出结果(昇腾 NPU,Ascend910_9362):
生成结果 (32 个新 token):
The capital of France is Var populated kilometerзда moins합 meer weitiginomer ...
生成耗时: 442.4 ms
性能基准 (warmup=2, runs=10):
平均耗时: 160.43 ms / 次生成验收结论:LlamaForCausalLM 架构(RMSNorm/RoPE/GQA/SwiGLU)在昇腾 NPU 上完整跑通前向传播与自回归生成,无算子回退或崩溃。模型为随机初始化,输出 token 无语义属预期(本任务仅验证架构链路可用性,不做精度优化)。
tiny-random-llama-npu-deployment/
├── inference.py # 推理脚本
├── readme.md # 部署说明
├── requirements.txt # 环境依赖
├── SKILL.md # 技能文档
├── model/ # 模型权重
└── assets/ # 截图素材
├── agent_workflow.png
├── npu_device_call.png
└── model_result.png