很多人对微调的想象还停在「挑模型、设学习率、跑训练」(工具与超参见站内《LlamaFactory 上手》《一篇读懂 LoRA》《一篇读懂学习率》)。但 2023 年以来一轮轮实验反复验证的是另一件事:微调结果的方差,大头来自数据而不是超参。Meta 的 LIMA 论文用 1000 条精心挑选的 prompt-回答对就把 LLaMA 调出了有竞争力的输出,并给出著名论断——模型的知识几乎都在预训练里学完了,微调教的主要是「表达方式与行为边界」。数据工程因此成了微调真正的护城河。本文拆解四道核心工序。
工序一:配比——领域数据里必须掺通用数据
用纯领域数据微调,最常见的中毒症状是灾难性遗忘:医疗问答模型调完之后连「写一封请假条」都不会了。原因直接:小规模领域数据上过度训练,模型把通用行为模式整个覆盖掉了。
工程上的标准解法是混合(data mixing):领域数据里掺入一定比例的通用指令数据(常见从 1:1 到领域占比更低不等,按任务敏感度调),让梯度更新里始终保留通用能力的锚点。配比没有万能数字,但有实用的校准方法——通用能力集(如一组日常指令)与领域能力集(业务评测集)都要进评测,每轮训练两把尺子一起量:领域分涨了、通用分崩了,就是配比失衡的信号。
另外两条配比常识:多任务混合时各任务数据量差异过大,模型会偏向多数任务(按比例重采样或对少数任务过采样);难度分布要有梯度,数据集里全是简单样本、没有一步到位的复杂推理示例,模型就学不会「跳一跳够得着」的中间形态。
工序二:去重与清洗——重复数据是隐形过拟合
网络抓取或批量爬取来的数据里,近重复样本的比例经常超预期:同一篇「最佳实践」被转载 N 次、模板化回答长得一模一样。重复数据的危害是系统性的——模型对重复样本过拟合,表现为回复腔调固化(什么都往一个格式上靠)、多样性塌缩。
清洗的基本工序:
- 规则过滤:语言一致性(中英混杂的脏数据)、长度异常(超短回答、超长复读)、格式残缺(Markdown 破损、代码块没闭合)、敏感与隐私字段;
- 精确去重:对归一化后的文本(去空白、统一大小写)哈希;
- 近重复去重:MinHash + LSH 是标准组合——把样本切成 shingle、算签名、分桶比对,能在百万级样本里把「改了几个词的转载」捞出来。语义层面的近似(换个说法的同一题)可用 embedding 聚类兜底,但要注意把「同类不同例」误杀会损失多样性,阈值要保守。
工序三:合成——蒸馏是主力,自生成是补充
高质量人工标注贵且慢,合成数据已成 SFT 数据的主力来源,社区的基本共识是:能蒸馏就用蒸馏——从更强的教师模型生成回答,质量普遍高于让人标注(对多数任务)或模型自产自销。三种主流配方:
- Self-Instruct(2022):给模型几个种子指令,让它自我发散出新指令与回答。胜在便宜,弱点是多样性随规模递减、难度天花板低;
- Evol-Instruct(WizardLM 系):对已有指令做「进化」——加约束、增步骤、换场景,系统性拉高复杂度上限,适合把简单数据「升级」成训练难度合适的数据;
- CoT-Self-Instruct(2025):让模型先走一遍思维链再生成指令数据,面向推理型任务的合成质量明显更好。
自生成(模型给自己造数据再训练自己)只适合教师不可得的场景,且要有严格的过滤闸门——自嗨式合成会放大模型自身的偏见与幻觉,训得越多偏得越远。合成数据的版权与合规(蒸馏出的回答是否可用)在商业场景要先过法务。
工序四:过滤与选择——DEITA 式的「少而精」
合成或采集来的候选池动辄几十万条,直接全喂是下策。现代数据选择是两把尺子同时量:
- 质量分:用奖励模型或强模型给每个样本打分(正确性、完整性、格式),按分排序截尾;再加启发式闸门(太短、拒答、复读机式输出直接淘汰);
- 多样性选择:质量分高的样本往往高度同质(全是「写得漂亮的常规题」)。DEITA 一类方法在复杂度与多样性两个维度上做贪心选择,保证留下的数据覆盖任务空间。其实验结论很提气:数千条经过复杂度/多样性双指标精选的数据,效果能超过数量数倍于它的随机选取数据。
「LIMA 式 1000 条」之所以能成立,靠的正是选择——不是随便 1000 条,而是从大池子里按质量与多样性精挑的 1000 条。
闭环:评测先行,bad case 反哺
数据工程不是一次性 preprocessing,而是一个闭环:
定评测集(领域 + 通用两把尺)
→ 造/选数据(配比 → 去重 → 合成 → 过滤)
→ 小规模训练(LoRA 试错,成本可控)
→ 评测 + 人工抽检 bad case
→ 按 bad case 类型定向补数据
→ 回到起点
两个反直觉的实操提醒:先建评测再动数据——没有两把尺子,配比调优全是盲人摸象;bad case 是最好的数据源——模型在「多轮追问答非所问」上翻车,就定向合成多轮追问数据,比泛泛加一万条通用数据有效得多。
结语
微调的竞争力公式在 2026 年已经改写:不是「谁调得多」,而是「谁的数据配比更合理、去重更干净、合成更聪明、过滤更狠」。训练框架与算力都在快速平权,数据工程的差距才是那个复制不走的部分。
参考资料
- LIMA: Less Is More for Alignment — arXiv:2305.11206
- DEITA: Instruction Tuning with GPT-4(复杂度/多样性选择)— arXiv:2312.15685
- Self-Instruct: Aligning Language Models with Self-Generated Instructions — arXiv:2212.10560
- WizardLM: Evol-Instruct — arXiv:2304.12244
- How to Generate and Use Synthetic Data for Finetuning — Eugene Yan
- CoT-Self-Instruct — arXiv (2025)
读者留言
COMMENTS 暂无还没有留言,来说第一句?