03 · 给例子:Few-shot 比形容词管用
Few-shot 就是在提示词里附上几组"输入 → 输出"的示例。当你发现自己怎么形容都说不清想要什么,停止形容,给两个例子——这是提示词技巧里性价比最高的一招。
为什么例子比描述有效
试着用文字描述你们公司周报里"本周完成"那一条该怎么写。你大概会说:简洁、写结果不写过程、能量化就量化、不要套话。
四个形容词。模型对"简洁"的理解和你的理解,差着十万八千里。
现在换成给例子:
"本周完成"每条按这个风格写:
❌ 持续推进小程序改版项目,与客户进行了多轮沟通
✅ 小程序改版方案已交付客户,刘总监确认后进入设计阶段
❌ 优化了数据报表相关功能
✅ 报表权限改为按门店隔离,已上线,覆盖 12 家门店
❌ 参加了若干次会议
✅ (这类不写)四个形容词说不清的东西,三组对照三十秒就说清了。而且这个标准是可复现的——下次你同事拿这条提示词,理解的是同一件事。
几个例子合适
| 例子数 | 叫法 | 什么时候用 |
|---|---|---|
| 0 个 | Zero-shot | 任务常见、格式简单。先试这个,能不给就不给 |
| 1 个 | One-shot | 只是想固定一下格式 |
| 2 ~ 5 个 | Few-shot | 大多数需要"风格对味"的场景,最常用 |
| 更多 | —— | 通常说明该做成 Skill 了,或者该微调了 |
先从零个开始,不行再加。例子占 Token,也会把它的思路框死——例子给多了,它会过度模仿,反而失去判断。
给例子的四条规矩
一、例子要覆盖边界,不要都是标准情况
三个都是"完美输入 → 完美输出"的例子,等于没教它怎么处理意外。至少留一个例子演示"材料里缺东西时该怎么办":
示例 3(材料信息不全的情况):
输入:把报表权限分一下,不同门店只能看自己的
输出:| 报表权限按门店隔离 | 待确认 | 待确认 |
说明:原文没提负责人和时间,一律写「待确认」,不要猜。这一条例子比前面两条都值钱,因为它教的是判断,不是格式。
二、正例反例配对给,效果翻倍
只给正例,它知道"这样是对的";给一对,它才知道"边界在哪"。
上面周报那个例子就是配对给的。注意反例要写得像模像样——写一个明显离谱的反例没有教学价值,要写那种"看起来还行但其实不合格"的。
三、例子的格式必须和你要的输出格式完全一致
如果你要的是表格,例子就写成表格;要的是 JSON,例子就写成合法的 JSON。它模仿的是形,不是意。例子里多一个空行,输出里就可能多一个空行。
四、例子里别放真实敏感信息
例子会被原样发给模型,还可能被同事拿去复用。客户名、金额、人名,都替换成占位的。
顺带一个好处:用假名反而能测出它会不会瞎编——如果它在输出里把"客户 A"改成了某个真实公司名,你就抓到一次幻觉。
一个完整的 Few-shot 提示词
你是数据整理助理。把下面每条零散的工作记录,改写成周报里的一条"本周完成"。
改写规则看这几个示例:
输入:这周一直在跟进小程序改版的方案,跟客户开了两次会,方案基本定了
输出:小程序改版方案已交付客户,刘总监确认后进入设计阶段
输入:优化了一下报表那块的权限
输出:报表权限改为按门店隔离,已上线,覆盖 12 家门店
输入:参加了部门周会和项目复盘会
输出:(不输出,这类内容跳过)
输入:帮小王看了下他那个接口的问题,聊了半天
输出:协助排查订单接口超时问题,已定位到支付回调(详情待补充)
规则总结:写结果不写过程;能量化就量化;纯参会不写;
信息不全的地方写「(详情待补充)」,不要编数字。
现在处理下面的记录:
"""
【粘贴你的流水】
"""注意最后那句"规则总结"——例子给完再用一两句话把规律点破,比只给例子稳定。它会同时用上模仿和理解两条路。
什么时候例子会帮倒忙
三种情况别给例子
任务本身很开放的时候。 让它头脑风暴二十个活动名,你给三个例子,剩下十七个都会像那三个。这种时候要的是发散,例子是反作用。
例子里有隐含模式而你没注意。 三个例子的输入碰巧都是三句话,它可能以为"输入必须三句话"。给例子时刻意让长度、类型有差异。
例子和规则打架的时候。 你写着"不超过 20 字",例子却有 35 字——它信例子。给完例子自己对照检查一遍。
下一步
04 · 让它先想再答 —— 例子解决"长什么样",这一章解决"怎么想才不出错"。