模型微调使用LLaMA-Factory教程

如果你正在处理 XXX 数据集,LLaMA-Factory 几乎是目前最推荐的配套工具。它是一个集成了模型训练、微调、评估和推理的一站式开源框架,支持几乎所有主流的开源大模型(如 LLaMA, Qwen, ChatGLM, Baichuan 等)。

简单来说,如果你有数据集但不知道怎么写训练代码,LLaMA-Factory 让你通过可视化界面简单的命令就能完成微调。


一、 LLaMA-Factory 是什么?

LLaMA-Factory 的核心优势在于:

  • 零代码/低代码:提供 WebUI 界面(一步步点选参数)。
  • 全集成:支持预训练、指令微调(SFT)、奖励模型训练(RM)、PPO/DPO 强化学习。
  • 高性能优化:原生支持 LoRA、QLoRA、DeepSpeed、FlashAttention-2 等加速技术。
  • 丰富的数据格式 :完美支持你下载的 DISC-Law-SFT 这种 Alpaca 格式的数据。

二、 如何下载与安装

由于你使用的是 Conda 环境,建议按照以下步骤操作:

1. 克隆仓库

bash 复制代码
git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git
cd LLaMA-Factory

2. 安装依赖

建议先进入你的 Conda 环境,然后执行安装:

bash 复制代码
conda activate your_env_name
pip install -e ".[torch,metrics]"

注意-e 表示以可编辑模式安装,这样你修改框架代码会立即生效。[torch,metrics] 会安装必要的深度学习库和评估工具。

3. 验证安装

执行以下命令,如果不报错并显示版本号,则安装成功:

bash 复制代码
llamafactory-cli version

三、 结合 DISC-Law-SFT 的实操流程

下载完 LLaMA-Factory 后,你可以按照以下步骤接入你的法律数据集:

1. 注册数据集

你需要告诉 LLaMA-Factory 你的数据集在哪。打开 data/dataset_info.json,添加一条记录:

json 复制代码
"disc_law_sft": {
  "file_name": "/你的路径/DISC-Law-SFT/disc_law_sft.json",
  "columns": {
    "prompt": "instruction",
    "query": "input",
    "response": "output"
  }
}

2. 启动可视化界面 (WebUI)

这是对新手最友好的方式,直接在浏览器操作:

bash 复制代码
export GRADIO_SERVER_PORT=7860  # 设置端口
llamafactory-cli webui

然后在浏览器访问 服务器IP:7860,在界面里选择 disc_law_sft 数据集即可开始微调。


四、 常用命令总结

操作 命令
启动 WebUI llamafactory-cli webui
单卡训练 (SFT) llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml
模型推理 (Chat) llamafactory-cli chat examples/inference/llama3_lora_sft.yaml
模型导出 (Merge) llamafactory-cli export examples/merge_lora/llama3_lora_sft.yaml

避坑指南:

  • 显存不足 :如果你的显卡显存小于 24G,训练时务必开启 QLoRA (4-bit) 模式。
  • 镜像加速 :在微调开始时,框架可能会去 Hugging Face 下载基础模型(如 LLaMA3),记得保持 export HF_ENDPOINT=https://hf-mirror.com 处于开启状态。
相关推荐
大鱼>6 天前
大语言模型+物联网:LLM理解物理世界
物联网·struts·语言模型·多模态·aiot
AndrewHZ6 天前
【LLM技术全景】大模型能力探秘:In-Context Learning与思维链(CoT)
人工智能·语言模型·大模型·llm·cot·思维链·icl
生成论实验室6 天前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
Data-Miner6 天前
大语言模型+智能体AI,122页PPT详解落地应用培训!
人工智能·microsoft·语言模型
AI小百科6 天前
llama.cpp vs vLLM:深度解析与选型指南
llama·vllm
枫叶林FYL6 天前
BRIDGE:多模态查询的强化学习对齐与文本检索重构
人工智能·语言模型
小小工匠6 天前
拆解大语言模型:从词向量到注意力机制的内部运行原理
人工智能·语言模型·自然语言处理
暮云星影6 天前
瑞芯微rk3588利用Rockchip NPU运行大语言模型(LLM)
arm开发·人工智能·语言模型·自然语言处理
生成论实验室6 天前
自动驾驶:一个自主运动的系统
人工智能·算法·机器学习·语言模型·机器人·自动驾驶·安全架构
searchforAI6 天前
啥是LLM?大语言模型从原理到选型的完整科普
人工智能·科技·深度学习·ai·语言模型·知识图谱·agent