微调
让模型适应你的任务与风格
9.1 为什么需要微调?
大语言模型(LLM)的能力来自"预训练(Pre-training)",但能否变成真正可用的产品,取决于是否经过"微调(Fine-Tuning)"。
微调是让模型从"通用助手"变成"特定领域专家"的核心技术。
如果把预训练比作打造一位博学多闻的通才,那么微调就是让他成为你团队里的专业工程师。
微调解决的核心问题
| 问题 | 说明 |
|---|---|
| 领域知识缺失 | 预训练模型不知道你的业务知识(如银行风控规则、医疗影像分析流程、公司内部 SOP、Kubernetes 平台运维规范等) |
| 风格统一需求 | 模型风格需要统一(如公司客服回复风格、博客写作语气、产品技术文档规范等) |
| 任务迁移困难 | 预训练模型不能主动"迁移"到你的任务(如分类/标注、信息抽取、结构化输出、多轮对话上下文记忆、专家推理任务等) |
一句话总结
预训练让模型变"强",微调让模型变"专"且"像你"。
9.2 微调的主流方法
不同任务需要不同的微调方式。
常见微调方法
| 方法 | 说明 | 适用场景 |
|---|---|---|
| Prompt Engineering(无训练) | 无需训练,通过提示词让模型学会任务格式 | Demo、快速原型、灵活度高、变化频繁的场景 |
| In-Context Learning(Few-shot) | 把示例直接放进 Prompt 里 | 小样本任务、模仿风格写作、小型辅助推理 |
| LoRA / QLoRA(轻量微调) | 不修改原模型权重,只训练"低秩矩阵" | 技术文档生成、代码生成补充、知识注入、风格统一、产品级落地 |
| Full Fine-Tuning(全量微调) | 直接训练模型所有权重 | 医疗、司法等高风险场景、新语言、新推理能力、企业级模型自研 |
方法对比
| 方法 | 优点 | 缺点 |
|---|---|---|
| Prompt Engineering | 最省钱、最快速 | 效果有限、不稳定 |
| Few-shot | 无需训练、灵活 | 上下文过长成本高、模型不会长期记住 |
| LoRA / QLoRA | 效率高、显存低、效果好 | 需要训练资源 |
| Full Fine-Tuning | 效果最好、能力最强 | 成本高、训练慢、有风险(可能破坏原模型能力) |
9.3 微调到底改变了模型的什么?
预训练模型结构
输入 → Embedding → Transformer Layers → 输出
↓
权重 W(冻结)LoRA 微调结构
输入 → Embedding → Transformer Layers → 输出
↓ ↓
权重 W 权重 W + ΔW(LoRA)
↓ ↓
(冻结) (可训练)LoRA 的本质是:只训练极小的 ΔW,而不是 W,本质上极大降低了训练成本,但依然能有效改变模型行为。
9.4 微调方法选择建议
针对不同任务,工程师可以参考下表快速决策:
| 任务 | 推荐方式 | 原因 |
|---|---|---|
| FAQ、基本知识 | RAG + Prompt | 最省钱,不需要微调 |
| 产品知识、技术文档 | LoRA | 注入内部知识最稳定 |
| 生成风格统一 | LoRA | 效果最佳、成本低 |
| 高精度信息抽取(IE) | LoRA / Full | 需要高控制性 |
| 小样本分类 | LoRA | 快准轻 |
| 代码生成优化 | LoRA | 常见企业实践 |
| 新语言、新思维方式 | Full | 必须重新训练 |
9.5 微调训练数据如何准备?
高质量的数据往往比模型本身更重要。
微调数据通常包含三部分
| 部分 | 说明 | 示例 |
|---|---|---|
| 指令(Instruction) | 告诉模型"你应该做什么" | "解释 Kubernetes 的 Pod 与 Deployment 区别" |
| 输入(Input) | 用户提供的内容 | (可选) |
| 理想输出(Output) | 你希望模型说什么 | "Pod 是最小调度单位,而 Deployment 提供副本控制..." |
SFT 数据格式示例
json
{
"instruction": "解释 Kubernetes 的 Pod 与 Deployment 区别",
"input": "",
"output": "Pod 是最小调度单位,而 Deployment 提供副本控制、滚动更新、声明式管理。"
}高质量数据的原则
| 原则 | 说明 |
|---|---|
| 真实 | 来自实际场景的真实对话 |
| 不要太长 | 模型容易遗忘 |
| 多样性 | 覆盖多种问题 |
| 风格统一 | 形成品牌语气 |
9.6 微调后的模型能做什么?
经过微调后的模型,能够更好地适应你的业务需求:
微调后的能力
| 能力 | 说明 |
|---|---|
| 像你的写作风格 | 你的语气、用词习惯、中文 Markdown 模板等 |
| 具备内部知识 | 如云原生社区积累的资料 |
| 深度理解你的流程 | 如运维操作 SOP、研发提交流程、Kubernetes 平台故障排查方法等 |
| 配合 RAG 消除幻觉 | 让模型"不乱猜" |
9.7 微调与 RAG、SFT、RLHF 的关系
大模型能力演进流程
预训练 → SFT → 微调 (LoRA/Full) → RAG 检索增强 → RLHF 对齐各阶段的分工
| 阶段 | 作用 |
|---|---|
| 预训练 | 知识基础 |
| SFT | 基础"会回答" |
| 微调 | 任务能力与风格 |
| RAG | 可靠事实 |
| RLHF | 安全和人类偏好 |
最终目标
构建一个:
- ✅ 稳定
- ✅ 安全
- ✅ 符合你领域知识
- ✅ 符合你写作风格
- ✅ 能落地产品的大模型系统
9.8 微调的最终总结
| 概念 | 说明 |
|---|---|
| 预训练 | 通用知识 |
| SFT | 教基础行为 |
| 微调 | 任务 + 风格 + 能力提升 |
| LoRA | 最具性价比微调方式 |
| Full | 重武器(慎用) |
一句话总结
微调是把大模型变成"你的模型"的唯一途径。
总结
微调是大语言模型真正适应你业务需求的关键环节。
核心要点
| 要点 | 说明 |
|---|---|
| 预训练让模型变强 | 通用能力 |
| 微调让模型变专 | 领域专用 |
| LoRA 是最具性价比的方式 | 推荐首选 |
| 高质量数据比模型更重要 | 数据决定上限 |
| 配合 RAG、RLHF 构建完整系统 | 综合方案 |
通过选择合适的微调方法、准备高质量的数据,并结合 RAG、SFT、RLHF 等技术手段,你可以打造出既懂知识、又懂你的专属智能体。
最后更新:2026-03-23
