PROMPT 提示词

少样本给几个够:三个起步,注意顺序

示例堆到十几个,效果会掉。挑得准的五个,胜过随手贴的十五个,后者还把上下文挤满。

少样本给几个够:三个起步,注意顺序
题图 / Unsplash

数量:三到五个

一条示例,它只能看出个大概。两条,能对比出共性。三条,开始能分辨变量在哪。

超过五条,收益明显下降,因为示例占的上下文越来越长,要处理的内容被挤压。

书本和字母积木摆在桌面
场景配图 / Unsplash

有个例外:分类任务类别多的时候,每类至少一条。五类任务只给三条示例,剩下两类它只能猜。

判断够不够的办法:拿一条没见过的输入试,对了就够,错了看它错在哪一类,补那一类的示例。

顺序:最后一个影响最大

示例的排列位置会带偏输出。放在最后的那个,风格最容易被延续。

所以别把最长最啰嗦的那条排在末尾,除非你就想要长输出。也别把特例排在末尾,它会把特例当通则。

一个实用排法:从普通到特殊,最后一条放你最想要的那种。这样它既知道常规,也被最后一条拉向你偏好的风格。

类别要均衡

五条示例里四条是正面评价,一条是负面,它就会倾向于把新样本判成正面。

它在按比例学,跟笨不笨无关。你给的分布,就是它学到的先验。

贴满黄色便利贴的墙面
场景配图 / Unsplash

如果实际数据里负面只占一成,你还是要在示例里给到四六或者三七,因为目标是让它学会分辨,不是学会预测比例。比例可以让它在输出时自己调。

补一条:某一类特别重要时,宁可给两条表述不同的同类示例,也别为了均衡把它稀释掉。

示例数适合风险
1 条格式演示学不到变量
3 条大多数任务类别覆盖可能不全
5 条分类、改写占上下文
10 条以上固定格式抽取挤压正文,收益低

示例之间要能分开

把五条示例连着写,它分不清哪段是输入哪段是输出。用固定标记隔开,比如三条横线,或者“示例一 / 输出一”。

标记本身别用正文里会出现的符号。正文里有三个引号,你再用三个引号分隔,边界就断了。

终端窗口的代码特写
场景配图 / Unsplash

最后一条示例之后,明确写“现在处理下面的内容”,再贴真实输入。这句话是分界线,少了它,它可能把你的真实输入当成第六条示例。

贴真实输入之前,从头把示例块读一遍:五条是不是同一个人写的口吻、分隔符有没有混用、「输入」「输出」的标签是否统一。示例块自己乱了,它就默认格式可以随意,真实输出跟着随意。

常见问题

示例能不能自动生成?

可以,但要用你自己确认过的输出当示例。让模型生成示例再让它学,等于让它自己给自己定标准,错误会被放大。

示例里的格式它总是照抄怎么办?

说明你要学的是结构不是内容。或者换一组内容差异更大的示例,逼它抽象。

零样本能不能行?

简单任务可以。涉及风格、边界判断、固定字段的任务,零样本的稳定性通常不够。