一、基本概念
1.什么是大模型微调
2.微调的流程
二、搭建环境
1.准备GPU环境
2.下载预训练模型
Qwen2.5-7B-Instruct 可以通过HuggingFace 下载,也可使用hf-mirror ,官网链接:https://hf-mirror.com/Qwen/Qwen2.5-7B-Instruct
执行如下指令进行模型下载:
cd /root/
git lfs install
git clone https://hf-mirror.com/Qwen/Qwen2.5-7B-Instruct
下载完成后查看文件
cd Qwen2.5-7B-Instruct
rm -rf .git 清除掉.git目录,避免数据盘空间不足
3.上传代码
将微调代码先进行压缩为zip包,通过SFTP进行上传至与Qwen2.5-7B-Instruct同目录下
三、模型微调
1.训练
这里使用lora进行微调训练,命令行终端执行下面的命令,开始训练
cd 微调代码/qwen2/
bash train.sh
训练过程中要保持网络链接,否则会导致前台训练任务被kill 掉而使训练失败
训练过程中会有运行的进度条,整个训练耗时需要45分钟左右
2.训练过程可视化
新建一个终端,使用tensorboard 工具将记录的loss 可视化展示,中断命令行运行如下命令
tensorboard --logdir=output/hotel-qwen2-20240720-16221221 --bind_all
其中,–logdir的内容为训练过程中生成内容,如output/hotel-qwen2-20240720-16221221
tensorboard 有一个服务端可以在网页中进行访问
3.微调后测试
训练完成后,在测试集上进行推理测试,并计算出SLOT和BLEU的指标
在运行测试指令前,需要修改对应的checkpoint 文件所在路径
cd 微调代码/qwen2/
vim eval.sh
在打开的文件中,将对应的文件夹路径调整为自己的checkpoint 文件所在路径
调整完成后,保存退出,然后执行如下指令
bash eval.sh
运行结束后,整个测试耗时需要13分钟左右
4.模型使用
使用提供的web_demo 代码进行模型使用测试,测试前需要修改使用训练后的模型,然后执行如下指令
cd 微调代码/web_demo
vim qwen2_lora.sh
修改如下两处参数
保存退出后执行qwen2_lora.sh