原文链接:提示工程指南 | Prompt Engineering Guide https://www.promptingguide.ai/zh
本文为提示工程指南中,关于其中提示技术的总结。由于提示学习本身比较好理解,我笔记的目标是尽量通过一句话把这个提示技术清晰的表达出来,这样也方便自己的日后使用。
零样本提示
一句话总结:直接利用LLM的能力输出。
少样本提示
一句话总结:提供演示(即举例子)
提示:
“whatpu”是坦桑尼亚的一种小型毛茸茸的动物。
一个使用whatpu这个词的句子的例子是:我们在非洲旅行时看到了这些非常可爱的whatpus。
“farduddle”是指快速跳上跳下。一个使用farduddle这个词的句子的例子是:
输出:
当我们赢得比赛时,我们都开始庆祝跳跃。
技术细节:
- 相比于标签是偶正确,演示的格式更重要。
- 再复杂推理任务中往往具有局限性。
链式思考提示(COT)
一句话总结:少样本基础上,针对推理任务,在演示中增加中间过程。、
提示:
这组数中的奇数加起来是偶数:4、8、9、15、12、2、1。
A:将所有奇数相加(9、15、1)得到25。答案为False。
这组数中的奇数加起来是偶数:17、10、19、4、8、12、24。
A:将所有奇数相加(17、19)得到36。答案为True。
这组数中的奇数加起来是偶数:15、32、5、13、82、7、1。
A:
输出:
将所有奇数相加(15、5、13、7、1)得到41。答案为False。
零样本CoT: 在演示中加入:“让我们逐步思考”(Let’s think step by step)
自我一致性
一句话总结:在少样本CoT的基础上采样(topk)多个思考过程,继而选择大多数过程中所指向的答案。
提示:
Q:林中有15棵树。林业工人今天将在林中种树。完成后,将有21棵树。林业工人今天种了多少棵树?
A:我们从15棵树开始。后来我们有21棵树。差异必须是他们种树的数量。因此,他们必须种了21-15 = 6棵树。答案是6。
Q:停车场有3辆汽车,又来了2辆汽车,停车场有多少辆汽车?
A:停车场已经有3辆汽车。又来了2辆。现在有3 + 2 = 5辆汽车。答案是5。
...
Q:Leah有32块巧克力,她的姐姐有42块。如果他们吃了35块,他们总共还剩多少块?
A:Leah有32块巧克力,Leah的姐姐有42块。这意味着最初有32 + 42 = 74块巧克力。已经吃了35块。因此,他们总共还剩74-35 = 39块巧克力。答案是39。
输出1:
当我6岁时,我的妹妹是我的一半年龄,也就是3岁。现在我70岁了,所以她是70-3 = 67岁。答案是67。
输出2:
当叙述者6岁时,他的妹妹是他年龄的一半,也就是3岁。现在叙述者70岁了,他的妹妹应该是70-3 = 67岁。答案是67。
输出3:
当我6岁时,我的妹妹是我的一半年龄,也就是3岁。现在我70岁了,所以她是70/2 = 35岁。答案是35。
输出1和输出2的答案是67,输出3的答案是35。显然,大部分输出倾向于67。
最终结果:
答案是67。
局限性:只针对最终答案在有限范围内选择的情况,不针对闲聊等场景。
生成知识提示
一句话总结:先生成一些背景知识作为提示的一部分,将知识与提示分别拼接后生成多个结果,选择置信度最高的结果。
文章来源:https://arxiv.org/pdf/2110.08387.pdf
技术细节:
- 置信度的计算方法:通过自回归生成过程中的概率计算获得的,总体思想是选择过程中概率高的序列。具体方法可以看原论文。
- 生成的知识回避使用模板构建的知识效果好(可能更自然)
- 生成的知识和使用搜索方法构建的知识旗鼓相当。
自动提示工程
一句话总结:通过各种方法自动的生成提示,还有继续探索的空间。
...