【LLaMa-Factory】监督微调训练方法

命令行

您可以使用以下命令进行微调:

复制代码
llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml

examples/train_lora/llama3_lora_sft.yaml 提供了微调时的配置示例。该配置指定了模型参数、微调方法参数、数据集参数以及评估参数等。您需要根据自身需求自行配置。

复制代码
### examples/train_lora/llama3_lora_sft.yaml
model_name_or_path: meta-llama/Meta-Llama-3-8B-Instruct

stage: sft
do_train: true
finetuning_type: lora
lora_target: all

dataset: identity,alpaca_en_demo
template: llama3
cutoff_len: 1024
max_samples: 1000
overwrite_cache: true
preprocessing_num_workers: 16

output_dir: saves/llama3-8b/lora/sft
logging_steps: 10
save_steps: 500
plot_loss: true
overwrite_output_dir: true

per_device_train_batch_size: 1
gradient_accumulation_steps: 8
learning_rate: 1.0e-4
num_train_epochs: 3.0
lr_scheduler_type: cosine
warmup_ratio: 0.1
bf16: true
ddp_timeout: 180000000

val_size: 0.1
per_device_eval_batch_size: 1
eval_strategy: steps
eval_steps: 500

备注

模型 model_name_or_path 、数据集 dateset 需要存在且与 template 相对应。

名称 描述
model_name_or_path 模型名称或路径
stage 训练阶段,可选: rm(reward modeling), pt(pretrain), sft(Supervised Fine-Tuning), PPO, DPO, KTO, ORPO
do_train true用于训练, false用于评估
finetuning_type 微调方式。可选: freeze, lora, full
lora_target 采取LoRA方法的目标模块,默认值为 all
dataset 使用的数据集,使用","分隔多个数据集
template 数据集模板,请保证数据集模板与模型相对应。
output_dir 输出路径
logging_steps 日志输出步数间隔
save_steps 模型断点保存间隔
overwrite_output_dir 是否允许覆盖输出目录
per_device_train_batch_size 每个设备上训练的批次大小
gradient_accumulation_steps 梯度积累步数
max_grad_norm 梯度裁剪阈值
learning_rate 学习率
lr_scheduler_type 学习率曲线,可选 linear, cosine, polynomial, constant 等。
num_train_epochs 训练周期数
bf16 是否使用 bf16 格式
warmup_ratio 学习率预热比例
warmup_steps 学习率预热步数
push_to_hub 是否推送模型到 Huggingface
[重要训练参数]

摘自SFT 训练 - LLaMA Factory 方面后面查找阅读。

相关推荐
GOTXX3 分钟前
情感神经元的意外发现2
人工智能·深度学习·神经网络·机器学习·卷积神经网络
乘风而来的思绪16 分钟前
【AI编程实战】安装Cursor并3分钟实现Chrome插件(保姆级)
人工智能·机器学习·ai编程
Eric.Lee202120 分钟前
数据集-目标检测系列- 花卉 鸡蛋花 检测数据集 frangipani >> DataBall
人工智能·python·yolo·目标检测·计算机视觉·鸡蛋花检查
Jamence1 小时前
torch.utils.data.dataset 的数据组织形式——python list、dict、tuple内存消耗量
开发语言·人工智能·pytorch·python
全职计算机毕业设计1 小时前
基于机器学习的海洋生物识别系统的设计与实现(Yolov)+文档
人工智能·机器学习
爱学习不掉头发1 小时前
【pytorch-01】:张量的创建、转换和拼接
人工智能·pytorch·python
山海青风2 小时前
自动化生成边界测试和极端情况测试用例
人工智能·python·自动化·测试用例
段传涛2 小时前
LLM( Large Language Models)典型应用介绍 1 -ChatGPT Large language models
人工智能·语言模型·chatgpt
好评笔记2 小时前
机器学习笔记——聚类算法(Kmeans、GMM-使用EM优化)
人工智能·笔记·算法·机器学习
CopyLower2 小时前
AI 赋能电商的未来:购物推荐、会员分类与智能定价的创新实践
人工智能·分类·数据挖掘