模型微调使用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 处于开启状态。
相关推荐
zhangfeng11334 小时前
大语言模型 Greedy Decoding,贪心解码 / 贪心搜索
人工智能·语言模型·自然语言处理
郝学胜-神的一滴7 小时前
AI 编程智能体 16:从零基础搭建到精细化优化
人工智能·python·算法·语言模型·langchain·pip
iiiiii117 小时前
大模型批量生成中的左填充 (left padding)与右填充 (right padding):从生成正确性到 GRPO 的混合策略
人工智能·机器学习·语言模型·大模型·llm·attention·注意力
凯凯姜9 小时前
Ollama 本地部署大语言模型笔记
人工智能·笔记·语言模型
Dawson Zhu10 小时前
【AI编译器入门②】TVM架构拆解:Relay、Relax、TIR与Runtime四层结构
人工智能·语言模型·架构·aigc·agi
mjhcsp10 小时前
DeepSeek V4.1 Flash 快速上手与实战指南
ai·语言模型·ai编程
Dawson Zhu11 小时前
【AI编译器入门③】编译前端:ONNX、TorchScript与动态shape处理
人工智能·语言模型·架构·aigc·agi
街头便衣11 小时前
OpenRouter周榜复算:164万亿token,输出2.55%,DeepSeek账单占1.4%
android·java·开发语言·人工智能·语言模型·开源
长不大的杨瑞杰1 天前
OpenCode v2 MCP 与插件体系实战:把数据库、工单和内部 API 安全接入 Agent
人工智能·安全·语言模型·软件工程·1024程序员节
还卿一钵无情泪1 天前
PEFT-Transformers、Unsloth、LLaMA-Factory 微调框架 横向对比
深度学习·大模型·llama·ollama