华为昇腾 910B 上基于 LLaMA-Factory 微调 Qwen3.5-32B 的 LoRA 实战
在国产算力环境下,利用华为昇腾 910B 配合 LLaMA-Factory 框架对 Qwen3.5-32B 大模型进行 LoRA 微调,已成为许多团队降低训练成本、适配业务场景的主流方案。本文基于 Ubuntu 20.04 + CANN 8.0 + PyTorch NPU 环境,梳理从环境配置、数据准备到多卡分布式训练及推理验证的全流程。
环境准备与依赖安装
硬件要求:建议 Atlas 800/900 服务器,配备 8×Ascend 910B(64GB HBM)。 系统要求:Ubuntu 20.04 LTS,CANN 8.0.RC1 或更高版本驱动已预装。 Python 版本:推荐 3.10.x(如 3.10.16)。
创建虚拟环境
使用 Conda 隔离依赖,避免污染系统环境。
# 若未安装 Miniconda,先执行以下命令
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda3
source ~/.bashrc
# 创建并激活环境
conda create -n llama-factory python=3.10.16 -y
conda activate llama-factory
安装 PyTorch NPU 与 CANN 库
⚠️ 注意:切勿直接使用 pip install torch,必须安装华为官方适配的 PyTorch NPU 包。
# 设置清华镜像加速(可选)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 安装昇腾专用 PyTorch(对应 CANN 8.0 版本)
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 \
--extra-index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 安装 torch_npu(关键依赖)
pip install torch_npu==2.4.0.post1 -f https://pypi.tuna.tsinghua.edu.cn/simple
# 验证 NPU 可见性
python -c "import torch; print(torch.npu.is_available()); print(torch.npu.device_count())"
# 预期输出:True 和 8(根据实际卡数)
安装 LLaMA-Factory
克隆代码仓库并安装昇腾适配版依赖。
git clone https://gitee.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
# 安装依赖,指定 torch-npu 分支
pip install -e ".[torch-npu,metrics]"
# 升级 Pillow 以避免兼容问题
pip install --upgrade pillow
# 验证安装状态
llamafactory-cli env


