📑 本页目录(点开跳转)
主线 5 · 怎样把模型变成你的助手
⏱ 10 分钟 | ⭐ 主线第五站:先做选择,再学 LoRA
🎯 一句话
微调不是“把资料塞进模型”的万能按钮。它最适合稳定地改变风格、格式、固定任务习惯;若问题是知识会变、资料很多,优先考虑提示词或 RAG。LoRA 则让这种改造不必重训整台模型。
先选路,不要先开训
LoRA 到底改了什么
全量微调会改动模型里几乎所有权重,显存和训练成本很高。LoRA 的想法是:底座不动,只在少数位置挂上小型“改变量”。 训练时只更新这些小部件;使用时把它们的效果加回原模型。
更准确一点说,原权重是大矩阵 W,全量微调会学习完整的改变量 ΔW;LoRA 不直接存 ΔW,而是学习两个更窄的矩阵 A 和 B,用 BA 近似它。中间窄层的宽度叫 rank(秩)。rank 越大,适配器表达的变化越丰富,也会更占显存和更容易把小数据记得过头。
QLoRA 则进一步把冻结的底座权重量化到较低精度,把训练显存主要留给 LoRA 适配器和必要的训练状态。它解决的是“让更大的底座能在有限显存上微调”,并不意味着训练自动变简单或数据要求降低。
它擅长什么,不擅长什么
| 更适合 LoRA | 通常不该靠 LoRA 硬扛 |
|---|---|
| 固定输出格式、分类、抽取 | 经常更新的大量事实 |
| 品牌语气、客服风格 | 需要引用来源的知识问答 |
| 特定任务的短流程 | 复杂的实时计算、精确检索 |
| 用小模型完成窄任务 | 没有高质量训练样例 |
真正难的不是参数,是数据
先准备一小份真实、干净且可评测的数据:输入像真实用户会问的,输出是你真想让模型学的样子;同一份数据不能既训练又拿来宣布“效果很好”。
最小实践顺序是:先写 20–50 个真实样例与评测题 → 试提示词和 few-shot → 仍不稳定时才做小规模 LoRA → 用留出的题比较前后差异。
一条样例应该教模型什么
| 样例部分 | 它在告诉模型什么 | 常见坑 |
|---|---|---|
| 输入 | 用户真实会怎样表达需求 | 只收集理想、整齐的提问 |
| 上下文 | 哪些条件会改变答案 | 把答案所需资料偷偷省掉 |
| 输出 | 你希望的格式、风格、判断 | 样例之间长短和立场互相打架 |
| 留出评测 | 如何判断真的变好 | 拿训练集测试,得到虚高分数 |
小数据微调最常见的失败不是“rank 少了两个”,而是模型学会了样例表面的口头禅,却没学会任务边界。把容易出错、边缘情况、真实失败案例放进数据和评测,通常比无休止扫超参数更有收益。
微调后变差了,先查什么?
先看留出题而不是训练损失:是否开始复读训练样例、是否丢失通用能力、是否只会一种固定回答、是否把不完整资料当成确定事实。再检查数据是否重复、输出是否自相矛盾、训练轮次是否过多。微调是一种受控实验,必须保留基座模型的对照结果。
✅ 检查点
- 知识问题优先 RAG;稳定行为问题才考虑微调。
- LoRA 冻结大模型,只训练小适配器。
- 微调成败更多取决于样例质量与评测,不是把参数调得多复杂。
点开核对
先判断是知识还是行为:知识用检索,稳定行为才考虑微调。LoRA 的小适配器降低训练和切换成本,但不能替代真实样例与留出评测。
🔗 想再深一层,去哪一套
| 去哪 | 为什么 |
|---|---|
| 08 · RAG 深水区 | ⭐ 这一页说「知识问题优先 RAG」—— 那条路具体怎么走 |
| 数据这一关 13 · 评测集也是数据 | ⭐ 「成败取决于样例质量与评测」的另一半:留出评测该怎么建、怎么防污染 |
| AI 基础设施 18 · 量化 | QLoRA 的 4-bit 是怎么回事:那一章第四节的 bitsandbytes NF4 就是它用的那一档 |
🛑 可以停在这里
你已经走完“模型怎么被造出来”的主线。现代模型为什么训练更稳、怎样筛选信息、怎样扩容,都是后面的可选专题。
⚡ 走神救援
先判断问题是知识还是行为:知识用 RAG,稳定行为才用微调。LoRA 的价值是让微调变得小、便宜、可切换,而不是替你解决数据质量问题。