微调基础
🎯 学习目标
- 区分预训练、SFT、RLHF 与下游微调
- 理解全量微调 vs PEFT 的成本差异
- 判断何时 RAG 不够、需要微调
引言
多数应用不需要微调。当 RAG + Prompt 无法稳定解决特定术语、格式或风格,且你有高质量数据时,再考虑微调。
章节正文
第 1 步:微调类型
| 类型 | 更新参数 | 典型用途 |
|---|---|---|
| 全量微调 | 全部 | 大改模型行为,成本极高 |
| SFT | 部分或全部 | 教指令格式、领域对话 |
| 分类头 | 顶层 | 意图分类、情感分析 |
| LoRA/PEFT | 低秩适配器 | 多任务切换、消费级 GPU |
第 2 步:何时微调
✅ 考虑微调:
- 固定输出 schema 极复杂且 Parser 失败率高
- 领域术语极偏(医疗、法律内部用语)
- 需要统一品牌语气且 Prompt 超长
❌ 先不要微调:
- 知识更新频繁 → 用 RAG
- 数据 < 500 条高质量样本
- 团队无 GPU 与 MLOps
第 3 步:数据格式示例(SFT)
json
{"messages": [
{"role": "system", "content": "你是医疗编码助手"},
{"role": "user", "content": "ICD-10 编码:2型糖尿病伴肾病"},
{"role": "assistant", "content": "E11.21"}
]}动手练习
- 列出你的场景:RAG 能解决吗?若不能,缺的是知识还是风格/格式?
- 写 3 条 SFT 样本 JSONL
本节小结
微调是最后手段;SFT 教格式与领域;LoRA 降成本;数据质量 > 数量。