基于昇腾NPU部署llamafactory单机多卡微调Qwen3教程

1. 进入华为云

华为云首页

点击右上角控制台

2.进入ModelArts

点击搜索框->搜索"ModelArts"->选择AI开发平台ModelArts->进入平台后点击开发者空间

3.创建Notebook

3.1在开发者空间中点击Notebook->在西南贵阳一下点击创建Notebook

3.2进入创建Notebook页面选择公共资源池中第2页的pytorch_2.1.0-cann_8.0.rc1-py_3.9-euler_2.10.7-aarch64-snt9b

3.3选择NPU与创建Notebook

4.打开服务器

等待创建完成后,单击后面的"打开"按钮将服务器打开。

5.安装Python

创建"python"版本的型号,点击上方的"+",在展开的下拉菜单中选择"Notebook"

将以下代码放在Notebook中执行
conda create -n llamafactory python==3.10 -y

6.安装openMind Hub Client和openMind Library

切换到终端窗口,点击上方的"+",在展开的下拉菜单中选择"Termianl"

在终端执行命令,激活或者启动昇腾资源服务。
source /usr/local/Ascend/ascend-toolkit/set_env.sh

查看创建的环境
conda env list

进入新建的python环境
conda activate llamafactory

安装"openMind Hub Client"(可能出现以下的错误,不影响下面的操作)
pip install openmind_hub

安装"openMind Library",并安装"PyTorch"框架及其依赖(可能出现以下的错误,不影响下面的操作)
pip install openmind[pt]

安装和下载"LLaMa Factory"工具(报错没关系)
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory
pip install -e ".[torch-npu,metrics]"
pip install numpy==1.23.5

7.安装符合Qwen3要求的transformers

请注意,这一点很重要,如果没安装,后面会报错没有qwen3模板

pip install --upgrade transformers==4.51.0

8.模型下载Qwen3

登录魔搭下载模型
魔搭官网

安装安装ModelScope
pip install modelscope

复制官网链接下载Qwen3模型,模型会下载在/home/ma-user/.cache/modelscope/hub/models/Qwen/Qwen3-8B下,可以使用mv命令移动到指定文件夹下
modelscope download --model Qwen/Qwen3-8B

进入模型下载路径
cd /home/ma-user/.cache/modelscope/hub/models/Qwen/Qwen3-8B

查看当前路径获取路径地址
pwd

/home/ma-user/.cache/modelscope/hub/models/Qwen/Qwen3-8B

使用mv命令移动到/home/ma-user/work/Model下,因为/home/ma-user/work下是进来显示的界面,是永久存储的(一开始选的100G云硬盘)
mv /home/ma-user/.cache/modelscope/hub/models/Qwen/Qwen3-8B /home/ma-user/work/Model

9.构造数据集,注册数据集,使用命令微调Qwen3

具体可以看llamafactory官网教程
llamafactory官网
llamafactory官网数据处理详解

在LLaMA-Factory/data 目录下的daraset_info.json中注册数据集,上传数据集到指定的位置

上传可以在要上传的文件夹下点击右上角上传,上传本地文件,如果文件过大,在弹出的提示中选择obs桶就行,默认就可以

10.使用命令微调Qwen3

查看npu,便于观察

npu-smi info

这是我的微调命令,根据自己的需求更改,其中NPU序列号是从0开始的,不用看别的,有几张卡都从0开始。

ASCEND_RT_VISIBLE_DEVICES=0,1 llamafactory-cli train

--stage sft

--do_train True

--model_name_or_path /home/ma-user/work/Model/Qwen3-8B

--preprocessing_num_workers $(nproc)

--finetuning_type lora

--template qwen3

--flash_attn auto

--dataset_dir data

--dataset Multimodal_stock_train_cot

--cutoff_len 3072

--learning_rate 5e-5

--num_train_epochs 3.0

--max_samples 100000

--per_device_train_batch_size 6

--gradient_accumulation_steps 4

--lr_scheduler_type cosine

--max_grad_norm 1.0

--logging_steps 5

--save_steps 100

--warmup_steps 0

--packing False

--enable_thinking True

--report_to none

--output_dir /home/ma-user/work/out/Qwen3-8B-text

--bf16 True

--plot_loss True

--trust_remote_code True

--ddp_timeout 180000000

--include_num_input_tokens_seen True

--optim adamw_torch

--lora_rank 8

--lora_alpha 16

--lora_dropout 0

--lora_target all

成功微调~

11.保存镜像

由于环境是创建在cache下的,关闭后是不会被保存的,能够保存的只有云硬盘,所以要保留环境要创建自己的镜像,具体操作是在运行状态下点击更多->保存镜像

评估推理以及合并都是llamafactory官方一样,就不说明了~

之后每次按照上述打开步骤打开平台就可以训练模型了,

按照以上步骤就能部署好NPU的平台了,其他的错误可能就是依赖冲突问题,升级合适的版本即可

相关推荐
Yeliang Wu10 天前
LLaMA-Factory 训练方法原理及实践(Ubuntu 22.04)
微调·分布式训练·量化·llamafactory
Yeliang Wu10 天前
LLaMA-Factory 分布式训练实践
大模型·微调·分布式训练·llamafactory·调优算法
Yeliang Wu10 天前
从原理到部署:LLaMA Factory 量化实战(Ubuntu 22.04)——PTQ/GPTQ/AWQ 等 9 种方法
大模型·微调·分布式训练·llamafactory·调优算法
Yeliang Wu10 天前
LLaMA-Factory 加速技术全解析:FlashAttention/Unsloth/Liger Kernel 原理与 Ubuntu22.04 实践指南
微调·分布式训练·llamafactory·调优算法
Yeliang Wu10 天前
LLaMA-Factory 主流调优算法详解
llamafactory·调优算法
Yeliang Wu11 天前
LLaMA-Factory 模型评估理论与实战:基于 Ubuntu 22.04 的系统化指南
linux·ubuntu·llama·评估·llamafactory
Yeliang Wu11 天前
基于FSDP的LLaMA-Factory大模型高效训练指南
fsdp·llamafactory
Yeliang Wu11 天前
Ubuntu 22.04 上的 LLaMA Factory 量化实践:bitsandbytes、GPTQ与AWQ详解
量化·llamafactory
Yeliang Wu11 天前
Ubuntu 22.04 上运用LLaMA Factory与DeepSpeed进行高效模型训练
微调·llamafactory·deepseed
Yeliang Wu11 天前
LLaMA Factory DDP并行训练全解析:从核心原理到Ubuntu 22.04实践
微调·ddp·llamafactory