在 本地 LLM 部署 解决「模型能跑」之后,微调(fine-tuning)回答的是「模型能不能按你的任务说话」。本目录按推荐阅读顺序编号:01 数据 → 02 PEFT → 03 工具 → 04 评估 → 05 路线 → 06 对齐工具 → 07 工程 → 08 验收。
段末注释:后训练(post-training)指预训练基座发布后的继续训练阶段,含继续预训练、监督微调与偏好对齐;PEFT(Parameter-Efficient Fine-Tuning,参数高效微调)只更新少量附加参数以降低显存与算力成本。

一、本系列要解决什么问题
- 阶段混乱:CPT、SFT、DPO 该做哪几步、顺序如何?
- 方法过载:LoRA、QLoRA、DPO、GRPO 各自适用什么场景?
- 指标脱节:loss 降了但任务 F1 不涨——训练路线与验收如何对齐?
编号与零基础上手阅读顺序一致;数学推导链到 Math-04、Math-05 RLHF、Math-03 LoRA。
二、后训练流水线
1 | 预训练基座 → [CPT] → SFT(+LoRA) → [DPO/GRPO] → 04 评估 → 部署 |
窄任务常只需 LoRA + SFT;对话质量、推理能力再叠加对齐。
三、一级模块索引(= 阅读顺序)
| 序号 | 模块 | 入口 |
|---|---|---|
| 00 | 系列导读 | 本文 |
| 01 | 数据工程 | 01-01 Chat Template |
| 02 | PEFT | 02-01 LoRA |
| 03 | 微调工具 | 03-00 框架对比 |
| 04 | 评估指标 | 评估指标导读 |
| 05 | 技术路线 | 05-01 对齐选型 |
| 06 | 对齐工具 | DPOTrainer · GRPOTrainer |
| 07 | 训练工程 | 显存优化 |
| 08 | 验收迭代 | 基线评估 |
四、01 数据工程
| 文档 | 主题 | 状态 |
|---|---|---|
| 01-01 数据格式与 Chat Template | messages、prompt-completion | 已发布 |
| 01-02 数据清洗与质量控制 | 去重、长度、标签规范 | 已发布 |
| 01-03 偏好数据构造 | chosen/rejected、拒绝采样 | 已发布 |
| 01-04 数据混合与课程学习 | 多任务比例、防遗忘 | 已发布 |
五、02 PEFT
| 文档 | 主题 | 状态 |
|---|---|---|
| 02-01 LoRA 原理与工程配置 | rank、alpha、target_modules | 已发布 |
| 02-02 QLoRA 与量化微调 | 4bit、bitsandbytes、ROCm | 已发布 |
| 02-03 PEFT 方法横向对比 | AdaLoRA、DoRA、IA³ | 已发布 |
| 02-04 Adapter 合并与续训 | merge、多 LoRA、SFT→DPO | 已发布 |
实操:AMD ROCm LoRA 实战。
六、03 微调工具
| 文档 | 主题 | 状态 |
|---|---|---|
| 03-00 微调框架横向对比 | SFTTrainer / Factory / swift / Axolotl / Unsloth | 已发布 |
| 03-01 SFTTrainer 详解 | TRL 编程向默认 | 已发布 |
| 03-02 LLaMA-Factory | YAML + WebUI | 已发布 |
| 03-03 ms-swift | 魔搭 / Qwen 生态 | 已发布 |
| 03-04 Axolotl | YAML + DeepSpeed 多卡 | 已发布 |
| 03-05 Unsloth | LoRA/QLoRA 加速 | 已发布 |
七、05 技术路线
| 文档 | 主题 | 状态 |
|---|---|---|
| 05-01 偏好对齐路线选型 | DPO / GRPO / RLHF | 已发布 |
| 05-02 继续预训练 CPT | 领域语料、与 SFT 顺序 | 已发布 |
| 05-03 SFT 与指令微调 | 概念、loss 掩码 | 已发布 |
| 05-04 全参微调与 PEFT 选型 | 成本、效果决策 | 已发布 |
八、06 / 07 / 08
| 文档 | 主题 | 状态 |
|---|---|---|
| 06-01 DPOTrainer 详解 | TRL DPO 配置与 ref model | 已发布 |
| 06-02 GRPOTrainer 详解 | 可验证 reward、组相对优化 | 已发布 |
| 07-01 显存优化栈 | checkpointing、调参顺序 | 已发布 |
| 07-02 分布式微调 | DDP、ZeRO、FSDP | 已发布 |
| 07-03 训练加速 Unsloth/Liger | Triton 内核加速 | 已发布 |
| 08-01 微调前后基线评估 | 固定 test/decode/parse | 已发布 |
| 08-02 灾难性遗忘与版本管理 | KL mix、checkpoint 策略 | 已发布 |
九、推荐阅读顺序
9.1 零基础上手(单卡 LoRA SFT)
| 步 | 文档 |
|---|---|
| 1 | 本文 |
| 2 | 01-01 → 01-02 清洗 |
| 3 | 02-01 LoRA(OOM 则 02-02 QLoRA) |
| 4 | 03-00 选型 → 03-01 SFTTrainer(或 Factory/swift) |
| 5 | 08-01 基线评估 + AMD 实战 |
| 6 | 04 评估指标 |
9.2 偏好对齐
| 步 | 文档 |
|---|---|
| 1 | 05-01 对齐选型 |
| 2 | 对话偏好:01-03 偏好数据 → 06-01 DPOTrainer |
| 3 | 代码/数学:06-02 GRPOTrainer |
| 4 | 08-02 遗忘与版本管理 |
9.3 领域模型
| 步 | 文档 |
|---|---|
| 1 | 05-02 CPT |
| 2 | 01→02→03 SFT 链路 |
| 3 | 酶改造 ML 最佳实践 |
十、路线选型速查
| 目标 | 推荐路线 |
|---|---|
| 补领域知识 | CPT → LoRA SFT |
| 任务格式/指令 | LoRA SFT |
| 对话质量 | SFT → DPO |
| 推理/代码 | SFT → GRPO |
| 显存极少 | QLoRA SFT |
| 多任务 | LoRA + 01-04 混合 |
十一、共性原则
十二、小结
目录编号 = 阅读顺序。01–08 模块正文已全部发布(共 34 篇含 04 评估子系列);零基础上手从 01-01 开始,对齐链路见 §8.2,上线前必读 08-01 + 08-02。