微调 LLaMA-Factory
LLaMA-Factory = 一站式的大模型微调框架。它把「准备数据 → 微调 → 试用 → 合并导出」全流程做成了几条命令,还配了个网页界面,100+ 种模型都能微调。
前置:大语言模型 LLM(知道模型和训练大概是什么)、推理服务 vLLM(第 6 章要用它部署)。 基线:LLaMA-Factory 0.9.5(PyPI 包名
llamafactory,Python ≥3.11)· PyTorch 2.6.0 · transformers 4.50.0 · peft 0.15.1
为什么需要微调
| 需求 | 靠提示词能解决吗 | 靠微调呢 |
|---|---|---|
| 让模型懂你的业务术语 | 勉强,提示词越来越长 | ✅ 喂几十条示例就会了 |
| 让模型输出固定格式 | 能,但不稳 | ✅ 训练后格式很稳 |
| 让模型学特定的表达风格 | 提示词勉强 | ✅ 效果好且省 token |
| 注入模型完全不知道的知识 | 不行(提示词塞不下) | ✅ 靠训练数据 |
一句话:提示词是「临时交代任务」,微调是「把能力刻进模型」。
LLaMA-Factory 强在哪
| 能力 | 说明 |
|---|---|
| 零代码 | llamafactory-cli webui 一个网页界面全搞定 |
| 方法齐全 | SFT、奖励建模、PPO、DPO、KTO、ORPO、SimPO |
| 省显存 | LoRA / QLoRA(2~8 bit 量化)、冻结训练、FSDP |
| 模型全 | LLaMA、Qwen、DeepSeek、Gemma、GLM、Mistral、Phi…… 100+ |
| 多模态 | LLaVA、Qwen-VL 等视觉模型也支持 |
| 接得上 | 训练完可直接用 vLLM / SGLang 提供 OpenAI 兼容 API |
一条命令的微调流程
llamafactory-cli train examples/train_lora/qwen3_lora_sft.yaml # 训练
llamafactory-cli chat examples/inference/qwen3_lora_sft.yaml # 试用
llamafactory-cli export examples/merge_lora/qwen3_lora_sft.yaml # 合并导出
train → chat → export,三条命令就是全流程。
学习目标
- 理解微调在做什么、什么时候该用
- 会算清楚「我这个模型要多少显存」
- 会准备符合格式的数据并注册进框架
- 会用 LoRA 做一次真实的 SFT
- 知道 DPO 是干嘛的、什么时候要上
- 会把微调结果合并导出、交给 vLLM 上线
技术路线
| 章节 | 核心内容 |
|---|---|
| 1. 微调是什么 | 原理、与其他技术的关系、该不该微调 |
| 2. 环境搭建 | 安装、版本、显存账与硬件要求 |
| 3. 数据准备 | Alpaca / ShareGPT 格式与 dataset_info.json |
| 4. SFT 实战 | 配置文件逐项拆解,跑通一次 LoRA 微调 |
| 5. 偏好对齐 | DPO、KTO、ORPO 的区别与用法 |
| 6. 导出与部署 | 合并权重、用 vLLM 提供 API |
⚠️ 硬件门槛:微调需要 NVIDIA 显卡。官方给的显存估算——7B 模型用 QLoRA 4bit 约需 6GB 显存,消费级显卡就够;但全参数微调 7B 要 60GB 起,是另一回事。没有显卡也能读完第 1、3 章,把数据和流程看懂。
从 1. 微调是什么 开始吧!