内容提要
本文介绍了提升模型能力的简单有效方法,包括搞出好的训练数据、评估数据质量和训练好的模型。这个方法适用于各种场景,但可能会遇到一些难题。通过找帮手可以克服这些困难。
延伸解读
为什么模型在你的场景里不好用?
文章指出,模型输出不理想、跑分高但实际用起来不顺手,本质是模型没见过你的用户场景。因此,评价模型的核心标准只有一个:在你的用户场景里是不是个好模型。这意味着,与其追求通用榜单的高分,不如聚焦于用场景数据来微调模型,让模型“见过”你的具体任务。
用大模型造数据,形成迭代闭环
文章强调“好数据出好模型”,而获取好数据的关键是“左脚踩右脚”——用大模型生成输入和输出数据,再用大模型评估数据质量。具体流程是:先定义“好”的标准或收集用户反馈,写成评价prompt,让打分模型筛选数据;若数据不达标,则根据更清晰的标准重新生成,迭代几次即可获得高质量数据。
自动化流程与“找帮手”思维
文章指出,从写输入数据、输出数据到评价打分,大部分流程都可由大模型自动完成,未来甚至可串联成“提升模型能力的Agent”。但实践会遇到难题,此时应善用“找帮手”的能力——帮手可以是人也可以是AI。这呼应了爷叔的“三个钱包”理论:实际能力、找帮手的能力、别人认为你有多少能力。
Q&A
为什么大模型在公开评测中得分很高,但在我的实际业务场景中效果却不理想?
根本原因是模型没有见过你的特定用户场景,因此无法很好地完成任务。模型的学习方式是“见多识广”,如果训练数据中没有覆盖你的场景,模型的表现就会打折扣。
提升模型能力最简单有效的方法是什么?
核心是三步:搞出好的训练数据、评估数据质量、训练好的模型。具体来说,就是通过提供大量输入输出示例(“举个栗子”)来教育模型,好数据出好模型。
如何获取高质量的训练数据?
训练数据包括输入和输出。输入数据可以从现有应用场景中收集,或通过手写几条后让模型续写,或总结特征写成prompt让模型生成。输出数据可以通过人工手写、使用更好的模型生成、或调整prompt让原模型输出更好结果来获得。
怎样评估训练数据的好坏?
有两种方式:如果能够定义“好”的标准,就根据标准写成评价prompt,用最强的大模型作为打分模型对数据打分;如果无法定义,就把数据交给目标用户获取反馈,再将输入-输出-反馈交给分析模型抽取特征形成评价prompt,然后同样用打分模型评估。
训练好模型后,如何评估模型是否变好了?
从训练数据的输入中拆出一部分作为测试集,用训练前的老模型和训练后的新模型分别生成输出,然后用打分模型对比两者的分数变化,从而判断新模型是否更好。
整个提升模型的流程可以自动化吗?
可以,大部分流程都能由大模型自动完成,包括写输入数据、写输出数据、写评价标准的prompt、根据标准对数据集打分、对新模型打分等。如果再使用一个编排大模型将流程串起来,并接入各种模型和训练接口,就能得到一个提升模型能力的Agent。