1. 概述:
LLAMA FACTORY是一个旨在普及LLMs微调的框架。它通过可扩展的模块统一了多种高效微调方法,使得数百种语言模型能够在资源有限的情况下进行高吞吐量的微调。该框架简化了常用的训练方法,如生成式预训练、监督式微调、基于人类反馈的强化学习以及直接偏好优化等。用户可以通过命令行或Web界面,以最小或无需编码的方式自定义和微调他们的语言模型。该演示文档就是基于Web界面进行微调和对话。
2. 准备环境:
1.【开发环境】创建开发环境
-
填入【名称】“llama-factory”选择【队列】及【可用区】。
-
【资源配置】- 【GPU加速型】下拉选择规格“CPU:20核|内存:108GB|GPU:NVIDIA-H800-80G*1” (规格根据实际情况修改 GPU类型可选择A100 H800)
-
【选择框架版本】中点击【社区镜像】,选择LLaMa Factory框架。
2.点击【确认】按钮创建开发机。
3.进入开发环境:
-
【开发环境】刷新状态,等“llama-factory”状态进入运行中后点击右侧操作栏【打开】。
-
点击【打开】跳转到Jupyte开发机
-
在Jupyter启动页【AI Community】下点击"AI Task:LLaMA"跳转到LLaMA Factory页面
3.设置微调参数:
-
进入WebUI后,切换到中文(zh)。首先配置模型,选择“LLaMA3-8B-Chat”模型,微调方法则保持默认值lora
-
数据集使用预置演示的Train,用户可以根据自己的需要修改。
-
设置学习率为1e-4,梯度累积为2,有利于模型拟合。可以更改计算类型为bf16
-
点击LoRA参数设置展开参数列表,设置LoRA+学习率比例为16。在LoRA作用模块中填写all,即将LoRA层挂载到模型的所有线性层上,提高拟合效果
4.启动微调:
-
将输出目录修改为train_llama3_8b,训练后的LoRA权重将会保存在此目录中。点击「预览命令」可展示所有已配置的参数,您如果想通过代码运行微调,可以复制这段命令,在终端命令行运行。
点击「开始」启动模型微调。 -
在Jupyter启动页【其他】下点击"终端"跳转到终端页面
-
终端输入命令 tail -f /var/log/llama-factroy.log 查看微调进度
-
可以看到下载LLaMA3-8B-Chat大约需要20分钟;完成微调大约需要20分钟;显示“训练完毕”代表微调成功,可以在界面观察损失曲线。
5.模型评估:
-
微调完成后,点击【刷新适配器】,然后点击【适配器路径】,点击选择下拉列表中的"train_llama3_8b"选项。
-
选择【Evaluate&Predict】,在数据集下拉列表中选择"eval"评估模型。点击【开始】启动模型评估。
-
大约5分钟后,评估完成后会在界面上显示分数。ROUGE分数越高代表模型学习越好。
6.模型对话:
-
点击【chat】栏,确保适配器路径是train_llama3_8b,点击【加载模型】。
-
在话框输入对话内容,点击【提交】发送消息。大模型会生成相应人物的回答。