大模型微调要多少数据

模型与算力

讲清不同微调任务各需要多少条数据、质量门槛怎么定,以及数据不够时该先补数据还是换路子。

准备做微调时最容易卡在第一步:手里只有几百条真实业务记录,不知道够不够,也不知道该攒到多少条才动手。网上说法从几十条到几万条都有,但大多没说清任务类型和评价标准。这篇按任务类型把数据量级、质量红线和不适用情况拆开讲,顺带给一套先小样试跑再决定加量的做法。

准备做微调时最容易卡在第一步:手里只有几百条真实业务记录,不知道够不够,也不知道该攒到多少条才动手。网上说法从几十条到几万条都有,但大多没说清任务类型和评价标准。这篇按任务类型把数据量级、质量红线和不适用情况拆开讲,顺带给一套先小样试跑再决定加量的做法。

先给个结论方向:数据量没有标准答案,但有判断顺序。先定任务档位,再卡质量门槛,然后用小样试跑看曲线,最后才决定是补数据还是换路子。这个顺序反了,标了几千条才发现方向不对,返工成本很高。

先看任务类型,再谈条数

条数的意义在于覆盖输入分布的多样性。同一种问法复制一百遍,效果约等于十条。所以先别问「要多少条」,先问「我的输入有多少种真实形态」,把这句话想清楚,条数区间自然会浮出来。

任务档位典型场景数据量级感觉覆盖面要求
格式与风格对齐固定输出格式、统一语气、填模板几百条往往能起步输入形态少,重点是输出一致性
固定字段抽取与分类从文本里抽字段、意图分类、打标签通常要上千条每个类别和字段都要有足够正负例
新知识或专业判断业务规则问答、内部知识推理量级明显更高要覆盖边界情况和反例,靠条数堆不够

怎么判断自己属于哪一档:把线上真实输入随机抽二十条,看模型现在错在哪。错在格式,多半第一档;错在漏字段或分类漂移,多半第二档;错在不懂业务、答得似是而非,第三档。这一步做完再动手,能省掉一半无效标注。

  • 抽二十条线上真实输入,逐条记录模型当前输出和期望输出的差异类型
  • 按差异归到上面三档,别凭感觉猜
  • 同一档内再按业务子场景分组,找出哪些子场景样本特别少
  • 先给最少的那个子场景补样本,而不是给整体加量

比数量更早卡住你的是质量门槛

数据质量不过关,条数再多也只是把错误放大。四条基本门槛建议在标注启动前就写成一页纸的规范:输入来自真实分布而非自己编、输出唯一且无歧义、标注口径前后一致、训练集与验证集不重复。

真实分布
样本来自实际用户输入或工单,不是坐在工位上想出来的句子
输出唯一
同一条输入,两个标注人给出的答案应该基本一致,否则说明任务定义不清楚
口径一致
边界怎么写、字段怎么截,规范里要有例子,不靠口头约定
语义去重
改几个字、换个同义词不算新样本,要按意图去重

一致性抽查是最省钱的一步:让两个人各标一批,算一下分歧率。分歧大的类别先统一口径再谈扩量,否则扩出来的都是噪音。什么情况下不适用:任务本身主观,比如文案风格偏好,一致性门槛要放宽,改用人工评审来验证效果。

别攒够了再训,先跑一轮小样

  1. 切分小样从已标数据里分出一小批做训练集、一小批做验证集,验证集必须单独留出,不能和训练集混
  2. 跑第一轮记录验证集上的表现,按错误类型分类,是格式错、字段错还是知识错
  3. 加量再跑补充同一分布的新样本,再跑一轮,对比验证表现有没有变化
  4. 看曲线决定方向表现还在涨就继续加数据;基本平了就停下,回头改数据分布或换方法

曲线怎么看:加数据后验证表现还在涨,说明当前瓶颈是量;平了之后加数据收益很小,该回头改数据分布,或者干脆承认这个任务不该用微调。参照站内微调与提示词、RAG 分界那篇的经验,先排除掉根本不该微调的任务,再谈数据量。

数据不够时的几条替代路

数据不够不等于做不了。先扩输入的多样性而不是扩条数:同一意图换不同说法、不同长度、不同口语化程度,比复制同一句更有价值。多样性上来之后,常常你会发现模型表现比预期好。

  • 同一意图换表达方式、长度和口语化程度,优先补边界输入
  • 用模型生成合成样本做冷启动,但必须人工过一遍
  • 合成数据占比过高会让输出变得不像业务语气,控制在补充位置
  • 把稳定不变的规则类需求交给提示词或检索,不要硬塞进微调数据集

什么情况下不适用:涉及合规、医疗、法律判断的任务,合成数据只能做补充,不能替代人工标注的权威样本。这类任务的数据量要求本身也更高,宁可少做几个场景,也要先把最关键的场景标扎实。

最后补一句关于数字的:不同任务到底要多少条,行业里没有统一答案,站内各篇文章给的也只是区间感觉。具体到某家服务商对数据量的建议、以及当时的价格与额度,到 /price-watch 和 /sites 核对当时的数字更靠谱,别拿半年前的说法当标准。

下一步拿二十条线上真实输入做一次错误分类,定出自己属于哪一档,再去挑对应的服务商和工具。

常见问题

几百条数据能微调出效果吗?

看任务。只改输出格式或语气,几百条通常够用;要模型学会它原本不懂的专业知识或判断标准,几百条往往不够,而且加数据前得先确认标注口径统一。稳妥做法是先拿一小批跑一轮,把验证集表现作为要不要继续加量的依据,而不是先定一个条数目标。

数据量是不是越多越好?

不是。加数据的收益会先涨后平,平了之后继续堆只会增加标注成本,甚至因为引入噪声让效果变差。判断方法是分几次加量观察验证集表现,涨势停了就说明当前数据分布已经够用,该转去改分布、改标注口径或换方法,而不是继续凑数。

训练集和验证集怎么分?

按真实分布的相似度分,不要随机切分后就完事。同一类问法的样本如果被切到两边,验证结果会虚高。更稳的做法是按业务场景或来源分组切分,保证验证集里的场景在训练集里也出现过不同样本,这样测出来的数字才接近上线后的表现。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。