Appearance
大模型训练与微调
大模型训练不是一个动作,而是一条链路:先让模型学会语言和通用模式,再让它学会按指令完成任务,最后用偏好和安全规则调整行为。
训练链路
| 阶段 | 目标 | 产物 |
|---|---|---|
| 预训练 | 学语言、知识关联、生成能力 | 基础模型 |
| SFT | 学指令、格式、领域任务 | 指令模型 |
| 偏好对齐 | 学更符合人类偏好的回答 | 更可用的助手模型 |
| 评估与回流 | 找失败样例并修正 | 新数据、新规则、新版本 |
预训练
预训练像让模型读大量资料。它不是记住每篇文章,而是在大规模数据中学习语言规律、事实关联、代码模式和推理样式。
预训练决定底座上限,但成本极高。多数团队不会从零预训练大模型,而是选择已有底座模型,再通过 RAG、SFT、LoRA 或工具调用做适配。
SFT
SFT 的目标是让模型按标准样例完成任务。它适合固定口径、固定格式、固定流程的场景。详细说明见 SFT。
SFT 的关键不是训练脚本,而是数据质量:
- 输入是否覆盖真实问法。
- 输出是否稳定一致。
- 异常、拒答、缺信息场景是否覆盖。
- 是否存在互相矛盾的样例。
LoRA
LoRA 是参数高效微调方法。它保留底座模型主体,只训练少量低秩矩阵来影响模型行为。
适合:
- 想低成本适配领域风格。
- 一个底座模型挂多个业务适配。
- 训练资源有限。
不适合:
- 试图补充大量实时变化知识。
- 底座模型本身不会目标任务。
- 数据质量差,只想靠训练“洗干净”。
LoRA 更像给模型加可拆卸适配件,不是重造模型。
QLoRA
QLoRA 在量化模型上训练 LoRA 适配层,能显著降低显存压力。它适合资源有限但希望微调较大模型的场景。
需要注意:量化和微调都会影响精度,训练后必须用独立评估集检查任务效果和回归风险。
RLHF 与 DPO
SFT 教模型“标准答案长什么样”,偏好对齐进一步教模型“两个答案哪个更好”。
- RLHF:用奖励模型和强化学习方式优化偏好。
- DPO:用成对偏好数据直接优化模型。
它们常用于改善回答质量、拒答边界、帮助性和安全性。但偏好数据也会带来取向偏差,需要明确评估标准。
微调还是 RAG
| 目标 | 优先方式 |
|---|---|
| 补充经常变化的知识 | RAG |
| 查询实时状态 | 工具调用 |
| 固定输出格式和语气 | SFT / LoRA |
| 改善任务处理流程 | SFT + 规则样例 |
| 多业务共享底座但风格不同 | LoRA / Adapter |
| 提升通用能力上限 | 换更强底座或继续预训练 |
数据闭环
上线后的失败样例应回流,但不能直接丢进训练集。需要先分类:
- 是知识缺失:放入知识库或工具。
- 是格式不稳定:补 SFT 样例。
- 是边界拒答错误:补偏好或安全样例。
- 是工具结果错误:修工具或数据源。
- 是用户输入不清:改交互和澄清策略。
总结
训练与微调要先判断目标:补知识、改行为、调风格、降成本还是提上限。LoRA 和 QLoRA 适合低成本行为适配,SFT 适合固化任务格式,RAG 适合外部知识,工具调用适合实时动作。训练不是万能修复器,错误目标会把成本花在错误层。
