简短回答: 只要数据质量够好,所需的量远低于多数采购方的预算设想。OpenAI 的文档给出的下限是 10 条样本,并在 50–100 条时出现可见的提升。LIMA 研究用 1,000 条精选样本,就达到了训练量大得多的系统的水平。可以预期:狭窄的格式类任务约 50 条,多数生产级指令任务 1,000–5,000 条,只有通用型助手和偏好训练才需要数万条。
核心要点
- 微调数据没有一个放之四海的数字:微调是在引导一个本就有能力的模型,因此需求量取决于目标行为有多新,而不是任务有多重要。
- 已公开的参照点包括:OpenAI 给出的 10 条样本下限与 50–100 条时的改善、LIMA 的 1,000 条精选样本、生产级监督微调 2,000–5,000 条的从业者最优区间,以及 InstructGPT 背后约 13,000 条示范加 33,000 组偏好比较。
- 多样性与一致性胜过数量:LIMA 的消融实验表明,单纯扩大规模的收益急剧递减,而自相矛盾的样本会让微调后的模型变得更差。
- 按可衡量的步子扩大微调数据集,一旦评测分数不再变化就停下来;合适的规模是被发现的,不是被宣布的。
- 覆盖不足导致的失败,需要在特定缺口上补充数据;而不一致导致的失败,需要更好的标注规范和质量保障——这是再多数量也修不好的。
为什么微调数据没有一个统一的数字?
因为微调不是从零开始训练。基座模型已经掌握了语言、事实和推理模式,所以你需要的数据量,取决于你的任务离模型本来就擅长的事情有多远,而不是取决于这件事对你的业务有多重要。
微调是指在一个更小的、面向特定任务的数据集上对预训练模型继续训练,使它采用特定的格式、语气、规则或领域词汇。 你的数据不是在教模型认识世界。它是在给模型指一个方向:这种格式、这种语气、这套规则、这套领域词汇。
这就是为什么那些听上去小得不可思议的数字,一再被证明是真的。你是在约束一个本就有能力的系统,而不是从头造一个。你这个问题背后,其实是三个问题:
- 这种行为有多新? 只是重新排版输出,所需极少。教会模型一个真正陌生的领域,所需就多得多。
- 你的样本能做到多一致? 自相矛盾的样本——也就是相似的输入却对应不同的期望输出——会实实在在地损害微调效果,因此一个更小但干净的数据集,胜过一个更大却嘈杂的数据集。
- 你怎么知道它奏效了? 没有评测集,任何规模的数据集都谈不上「够」,因为你根本无从判断。OpenAI 的指导意见在先后次序上说得很直白:在投入微调之前,先把评测建起来。
关于数据集规模,研究和厂商指南是怎么说的?
把这些已公开的参照点排在一起,会发现它们相当集中:平台下限 10 条样本、50–100 条时出现改善、1,000 条精选样本带来的标志性成果、2,000–5,000 条的从业者最优区间,以及数万条规模的助手级项目。
平台给出的下限。 OpenAI 的监督微调文档 把下限定在 10 条样本,报告 50–100 条时出现可见的提升,并补充了一条实用的决策规则:如果 50 条好样本带不来任何改善,那就先重新审视任务或提示词,再谈加数据。
小数据的标志性成果。 该 LIMA 研究 (《Less Is More for Alignment》)仅用 1,000 组精心挑选的指令—回复配对,对一个 65 亿参数的模型做了微调,产出的结果足以与训练量大得多的系统相抗衡。其消融实验发现,多样性的作用远大于数量,单纯扩大数据集的收益会急剧递减。
生产规模的参照。 OpenAI 的 InstructGPT 工作大约用了 13,000 条人工撰写的监督微调示范,外加约 33,000 组偏好比较,凭借这些数据,一个 1.3B 的模型在人工评测中胜过了未经调优的 175B GPT-3。斯坦福的 Alpaca 则用了 52,000 条生成样本。这些是支撑通用型助手的数据规模,而不是面向狭窄业务任务的规模。
从业者的区间。 平台方的指导意见,例如 Predibase 的数据集要求 把简单任务定为最低 10–20 条、最优 100–1,000 条,把标准监督微调定为最低 500–1,000 条、最优 2,000–5,000 条,并把 10,000–20,000+ 条留给最困难的场景。它建议团队先从 100–500 条高质量样本的聚焦数据集起步,一边监测一边扩大。
关于微调数据集规模的公开参照点
| 参考资料 | 示例 | 它代表什么 |
|---|---|---|
| OpenAI 文档给出的下限 | 10 | 平台下限,而非推荐值 |
| OpenAI 所称「可见的提升」 | 50–100 | 狭窄的行为与格式类任务 |
| LIMA | 1,000 | 在强基座模型上进行精选且多样的指令微调 |
| 从业者的 SFT 最优区间 | 2,000–5,000 | 典型的生产级指令任务 |
| InstructGPT 的 SFT 阶段 | 约 13,000 条(外加 33,000 组偏好数据) | 采用 RLHF 的通用型助手 |
| 斯坦福 Alpaca | 52,000 | 广泛的指令覆盖,使用生成数据 |
资料来源:OpenAI 开发者文档;经 Oumi 转述的 LIMA(Zhou 等,2023);经 Meta-Intelligence 微调数据综述转述的 InstructGPT 与 Alpaca 数据;Predibase 指南。请把这些区间当作起点,因为你的任务、基座模型和质量标准都会改变它们。
正视这个跨度:从下限到助手级项目之间差了三个数量级。差别不在预算,而在任务的宽度。
你这个具体任务到底需要多少数据?
把你的项目对应到最接近的任务类型,然后从那里起步:风格与格式类 50–300 条,分类任务按每个类别 100–1,000 条的模式,领域指令遵循 1,000–5,000 条,专业领域 5,000–20,000+ 条,偏好数据则需要 10,000+ 组比较。
风格、语气与格式(50–300 条样本)。 让输出遵循你的模板、你的品牌语气、你的 JSON 结构。模型本来就会写;你做的是标准化。OpenAI 所说的「50–100 条时出现改善」,指的就是这一类。
分类与路由(每个类别 100–1,000 条的模式)。 工单分流、意图识别、内容归类。覆盖比数量更重要:每一个类别,以及类别之间容易混淆的边界,都需要有样本代表,包括那些罕见的。
领域指令遵循(1,000–5,000 条)。 为你的产品打造的客服或流程助手、基于既定规则的问答、从你自己的文档类型中做结构化抽取。这是从业者的最优区间,也是大多数商业微调项目的落点。
专业领域行为(5,000–20,000+ 条)。 法律、医疗或金融领域的回复生成,这些场景正确性标准高、出错代价大。这里真正的约束条件通常不是数量,而是专家撰写与审核——这正是我们这篇指南的主题: 构建法律、医疗与金融领域的 SFT 数据集.
偏好与奖励数据(10,000+ 组比较)。 RLHF-式的训练是另一种产品,有它自己的规模逻辑,经典参照是 InstructGPT 的 33,000 组比较。它也有自己特有的质量陷阱,详见我们这篇文章: 在不产生漂移的前提下收集偏好评分.
有两条调整适用于所有任务类型。更小的基座模型,要达到同样的行为需要更多样本。另外,每个数据集都需要留出一部分——通常是 10–20%——永远不参与训练,否则你就是在用模型背下来的题目给它打分。
微调数据加到什么时候就不再有用了?
比预算讨论所设想的要早得多。一旦强基座模型见过了多样且高质量的数据集,再增加类似的样本就收效甚微,而与既有模式相抵触的样本还会让结果更糟。
LIMA 的消融实验是目前最清晰的公开证据。曲线之所以走平,是因为模型已经提取出了模式;重复该模式的新数据是冗余的,而与之相抵触的新数据则是有害的。
在以下三种常见情况下,更多数据反而有害:
- 规模化之后的自相矛盾。 把第二位标注员的成果直接加进来让数据集翻倍,却不先消解两人的分歧,等于在教模型「两个答案都可以」。模型就会来回摇摆。
- 狭隘的重复。 一万条样本却只有同样五种问题形态,那不过是一个 5 条样本的数据集,披着一张金额很大的发票。
- 质量被稀释。 赶着冲条数目标的团队,会在最后阶段放松审核,而最差的那 20% 数据决定了上限。这正是我们在以下文章中所记录问题的多语言版本: 更多数据会让 AI 变差吗?
实用的规则是一步步扩大,而不是一跃而上。用 500 条训练,然后衡量。用 1,500 条训练,再衡量。评测分数不再变化的那一步,就是你的答案——而它通常比原计划里的数字要小。
你怎么知道自己需要的是更多数据,还是更好的数据?
看失败的模式。模型从未见过的案例上出现的失败,是覆盖缺口,需要更有针对性的数据;而在它见过的案例上表现不一致,则指向质量和规范问题——这是再多数量也修不好的。
说明你需要更多数据的迹象: 模型能处理常见情形,却在没见过的变体上崩掉;整类输入成片失败;在覆盖充分与覆盖稀薄的语言、格式或客户群之间,表现差异悬殊。请在缺口所在之处补充有针对性的样本,而不是再加一堆你已经有的东西。我们关于 长尾与边缘案例挖掘 讲的就是如何有意识地把它们找出来。
说明你需要更好数据的迹象: 模型在见过的案例上前后不一致;它很自信地产出一种你的审核人员谁都不会接受的风格;同一条数据交给两个标注员,很可能得到不同结果。这些问题再加量也解决不了;解决它们的是衡量。 黄金集是一组由专家核验过正确标注的参考样本,用来给标注员和数据集打分。 黄金集与标注员间一致性,详见 黄金集、抽样审核与一致性共识,能在你让模型从中学习之前,先看出你的数据集内部是否自洽。
在下任何采购订单之前,都值得先做一个十分钟的测试:从你现有的数据中随机抽 30 条,让两个人各自独立判断每一条是否正确、是否与其余数据一致。如果他们与数据不一致,或者彼此不一致,那你下一笔钱该花在规范上,而不是数量上。
Lifewood 如何为客户确定训练数据集的规模?
在任何标注项目中,Lifewood 都把数据集规模当作第一个要谈的问题,而谈完之后,客户最初的承诺量通常会变小。做法是:从该任务区间的下限开始做试点,对照留出的评测集衡量,然后分步扩大。
确定规模是以下流程的第一步: 企业 LLM 培训数据 项目。试点数据集在一套严格统一的标注规范下构建,从第一批数据起就加入黄金集校验,并对照留出的评测集进行衡量,只有在测量显示覆盖不足时才按步扩大。由于 Lifewood 的交付团队覆盖 100+ 种语言,同样的分步方法也按语言逐一适用。低资源语言往往需要比英语数据集所暗示的更多样本,才能确立同一种行为;而在 500 条样本时发现这一点,远比在 50,000 条时才发现便宜得多。对于正在比较供应商的团队,我们对 面向 LLM 训练的最佳数据标注公司 给出了具体标准。
同样的逻辑贯穿业内较好的那些指导意见:OpenAI 的文档主张先评测再投入,Predibase 的指南主张从 100–500 条起步并随衡量结果扩大,而 LIMA 这条研究脉络不断被复现——精选胜过堆积。如果一份方案在还没人问清模型究竟要做什么之前,就先报出一个数量,那它就值得质疑,不管出自谁手。
在委托制作第一条样本之前,你该做什么?
把目标行为写下来,先建好评测集,从你任务区间的下限开始,并且只在衡量显示有缺口的地方补数据。
- 先把目标行为写下来。 一页纸写清楚:输入是什么、期望输出是什么、错误答案长什么样。如果你写不出来,标注员就标不出来。
- 先建评测集,再建训练集。 100–300 条能代表真实使用场景的留出样本,包括那些棘手的例子。
- 从你任务所在区间的下限开始。 格式类任务 50–100 条,路由分类每个类别几百条,领域指令类工作约 1,000 条。
- 先衡量,再加码。 只在评测显示有缺口的地方补数据,一旦某一步不再推动分数就停下来。
- 守住一致性,而不是数量。 在扩大规模之前先消解标注员之间的分歧;矛盾会累积放大。
- 从第一天起就留出 10–20% 作为测试集 ,并且绝不让它接触训练过程。
- 把预算花在多样性上,而不是重复上。 一千种不同的情境,胜过一万次换句话说。