来源:互联网 更新时间:2026-08-13 14:09
如果只需要自备一份任务相关的数据,就能通过图形界面轻松完成微调——是不是比想象中要省心得多?
在今年的ACL2024上,来自北航和北大的一篇论文《LLAMAFACTORY: Unified Efficient Fine-Tuning of 100+ Language Models》就给出了这个答案。LLaMA-Factory集成了一套高效训练方法,允许用户灵活自定义100多个大模型的微调,而不用写一行代码。论文被接收前,项目在GitHub上就已经收获了13000颗星和1600个fork,影响力可见一斑。
微调界面(LLaMA Board)
通过webui方式启动后,你会看到一个LLaMA Board。在上面选择数据、调整参数,然后通过“预览命令-保存训练参数-载入训练参数-开始”几步操作,就能开始高效训练。而且,在界面中可以实时观察训练损失的变化,方便随时调整策略。

第1步 clone LLaMA-Factory:git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
第2步 进入目录:cd LLaMA-Factory
第3步 创建基础环境:conda create -n <你的环境名称> python=3.10
第4步 进入conda环境:conda activate <你的环境名称>
第5步 安装依赖:pip install -e .[metrics] -i https://pypi.tuna.tsinghua.edu.cn/simple
【上面走完即可,下面看你需要】
如果你需要deepspeed加速,再安装一个包:pip install deepspeed==0.14.3
假设数据格式是这样的(一份user和assistant的对话数据)。
[
{
"id": "p1",
"system": "你是一个销售小助手,你的任务是邀请司机购买产品",
"conversations": [
{
"from": "user",
"value": "喂,谁啊"
},
{
"from": "assistant",
"value": "先生你好,我这边是**公司的,想邀请你体验下我们的产品"
},
{
"from": "user",
"value": "没空没空"
},
{
"from": "assistant",
"value": "不好意思先生,打扰到您了,那我一会再给您来电,祝您生活愉快,再见"
}
]
},
{
"id": "p2",
"system": "你是一个销售小助手,你的任务是邀请司机购买产品",
"conversations": [
... ...
]
},
... ...
]
第1步 进入目录,找到dataset_info.json
cd LLaMa-Factory/data/dataset_info.json
第2步 在dict中添加自己的数据信息
"my_task": {
"file_name": finetune_data.json # 你自己数据的路径,这里直接存放在LLaMa-Factory/data/finetune_data.json目录下,所以直接写数据名
"formatting": sharegpt
"columns": {
"messages": "conversations",
"tools": "id"
},
"tags": {
"role_tag": "from",
"content_tag": "value",
"user_tag": "user",
"assistant_tag": "assistant"
}
}
【至此】完成了数据配置,但还是有必要提醒以下一些细节
每种数据的构造形式都有差异,具体取决于你是做微调还是DPO等。建议仔细阅读下面这个文档,里面有各种任务对应的数据格式和配置方法:
https://github.com/hiyouga/LLaMA-Factory/blob/main/data/README_zh.md
另外,如果你用的是上面提到的微调数据,请务必注意:conversations里user对应的内容永远应该在奇数位置,否则训练后模型可能会输出一堆不合格式的提醒。同时,训练过程只会筛选符合要求的数据,这会导致实际训练的有效数据量减少。
第一种:CUDA_VISIBLE_DEVICES=0,1,2,3 llamafactory-cli webui
这种方式会启动LLaMA Board,通过前端界面选参训练,操作友好、体验感好。
第二种:export CUDA_VISIBLE_DEVICES=0,1,2,3
llamafactory-cli train ./sft_yaml/my_finetune.yaml (启动目录在LLaMa-Factory下)
这种方式是纯后台运行。
my_finetune.yaml的设置示例:
### model
model_name_or_path: meta-llama/Meta-Llama-3-8B-Instruct
### method
stage: sft
do_train: true
finetuning_type: full
deepspeed: examples/deepspeed/ds_z3_config.json (当显存不够时,可使用ds_z3_offload_config.json)
### dataset
dataset: identity,alpaca_en_demo
template: llama3
cutoff_len: 1024 (最长截断,数据长度超过的部分不会参与训练)
max_samples: 1000
overwrite_cache: true
preprocessing_num_workers: 16
### output
output_dir: sa ves/llama3-8b/full/sft
logging_steps: 10
sa ve_steps: 500
plot_loss: true
overwrite_output_dir: true
### train
per_device_train_batch_size: 1
gradient_accumulation_steps: 2
learning_rate: 1.0e-4
num_train_epochs: 3.0
lr_scheduler_type: cosine
warmup_ratio: 0.1
fp16: true
ddp_timeout: 180000000
### eval
val_size: 0.1
per_device_eval_batch_size: 1
eval_strategy: steps
eval_steps: 500
训练结束后,到保存的output_dir中就可以查看训练日志,包括训练损失和验证损失。
更新适配器,选择模型即可。如果不使用这种方式,训练好的模型与其他大模型的调用方式是一样的。
黄金价格不断创新高!黄金稳定币XAU、PAXG市值达11亿美元
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
CC币价格预测(2026-2035):Canton币今日价格走势+长期价格预测
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
腾讯ima怎么把微信内容一键导入知识库?
腾讯ima怎么创建共享知识库?
今日比特币暴涨分析:Metaplanet的比特币BTC投资推动股价上涨17%
蚂蚁庄园今日答案7月21日(今日已更新) 蚂蚁庄园今天正确答案是什么呢
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
2026热门直线加速赛车手游推荐:高人气、爽快加速体验的精品榜单
Intel喜讯连连:18A工艺良率提升到85%、CPU将涨价15%
Windy卫星云图怎么看?云层变化识别技巧
kimi提示词专家使用方法新手指南
原神霜月三处月灵龛具体位置汇总
《幻兽帕鲁》不触发通缉捕捉传说商人方法
短剧《史上最强洪荒修为》剧情介绍
Aptos(APT)币是什么?APT代币经济学、价格预测及投资前景
9条破亿视频,新号涨粉百万,过去半年谁在制造AI爆款?
如何修复Edge浏览器无法通过微软账号进行身份验证?
为什么推特KOL都在BRC20赚钱 我一冲就亏?
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc