【CANN训练营】Qwen3-8B 推理优化实践食用指南
课程内容
课程资源:cann-learning-hub/tutorials/llm_inference/qwen3_8b · CANN/cann-learning-hub - AtomGit
这个课程用 Qwen3-8B 模型,教你在昇腾 NPU 上做这几件事:
- 用 cann-recipes-infer 框架跑通推理和性能分析,验证 Dense RMSNorm 融合路径的效果
- 用 AMCT 工具做 W8A8 量化,并开发自定义量化matmul算子
- 对比三种执行模式(Eager、GE Graph、NPU Graph EX),并在 GE 图模式下验证 Fused Attention 预取权重的收益
整个流程按 recipes 的标准用法走:先改 models/qwen/config/ 下的 YAML 配置,再用 executor/scripts/infer.sh 启动推理,最后从 res/ 和 prof/ 目录看结果。
主要就是看课程里的readme,一步步跟着notebook的内容运行代码。
大部分内容都可以看qwen3_8b/README.md,里面写的非常详细。这篇文章主要讲一下容易遇到的问题,和实践过程中的笔记内容。
环境启动
主要有两种方式:
1. CANNLab(推荐)
就是云环境,有100小时的免费使用时长,也是比较推荐的,具体配置看下面:
2. 本地部署
这个需要有昇腾 NPU,CANN9.0.0以上。
git clone https://gitcode.com/cann/cann-learning-hub.git
cd cann-learning-hub
创建虚拟环境并安装配置
最好把工作目录放到 qwen3_8b 下。
在实验之前,建议先创建虚拟环境。
# 创建虚拟环境(python要求3.11及以上)
python3 -m venv venv
# 激活虚拟环境
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
requirement.txt补上这几个依赖:
pyarrow==21.0.0
decorator==5.2.1
attrs==25.3.0
psutil==7.0.0
protobuf==6.31.0
由于jupyter notebook需要启用内核,还需要注册notebook内核并切换:
# 查看当前内核
jupyter kernelspec list
# 如果虚拟环境内核未注册,手动注册
python -m ipykernel install --user --name=venv --display-name="Python (venv)"
环境准备就结束了,可以开始实验了。
实验
实验的顺序是01_chapter_intro.ipynb开始,一个个运行下来。
01_chapter_intro.ipynb主要是课程章节介绍,实验内容从02_baseline_inference.ipynb开始。

(来自README.md)
有个需要注意的地方:
%%bash 开头的脚本,最开始要加一行,source <path_to_your_venv_active_file>,启动虚拟环境,例如:

其他
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐


所有评论(0)