首页 > Ai资讯 > Ai知识库 > 小学生都能看懂的 Prompt 高级技巧: Few-Shots 、 COT 、 SC、 TOT 、 Step-Back

小学生都能看懂的 Prompt 高级技巧: Few-Shots 、 COT 、 SC、 TOT 、 Step-Back

发布时间:2024年06月06日

IMG_256

上周,Google  发布了 Gemini  大模型。他号称在多项任务上超过了
GPT-4
。细心的朋友可能发现,在每个对比指标的边上有一个小字,有的是 COT,有的是 3-shots。这些词是什么意思?为什么他不同的指标写了不同的小字。

先不说 Google 为什么在不同的指标写了不同的小字,这个问题在文章结尾回答。

我们先来说说,这些小字是什么意思。

其实,他们主要是表明了得到这些评测指标的时候,所采用的 Prompt  模式。今天,我们就来讲讲这些 Prompt  模式都是什么意思。

为了方便对比,我将采用相同的任务不同的
Prompt  
作为示例来讲清楚他们之间的区别。这个任务就是英文翻译成中文。

CRISPE框架

IMG_257

如图所示。所谓CRISPE框架,指的是:

CRCapacity and Role(能力与角色)。你希望 ChatGPT 扮演怎样的角色。

IInsight(洞察),背景信息和上下文。

S:(陈述),你希望 ChatGPT 做什么。

PPersonality(个性),你希望
ChatGPT
以什么风格或方式回答你。

EExperiment(实验),要求
ChatGPT
为你提供多个答案。

如果我们要定义一个翻译诗词的 GPT 。我们可以这么写:

CR

你是一个擅长中文和英文的AI 工程师和数据科学家,擅长中文和英文相关的 AI 技术文章编写和翻译。

I

需要翻译的英文段落:

Spending lots of time thinking about different possible
future scenarios and their probabilities might be captivating, but I suggest
an absolutely different approach

to try to build your prototype yourself. First, it
s
rather challenging and fun. Second, it will help us to look at our work in a
more structured way. Third, it will give us an opportunity to try in practice
one of the most cutting-edge approaches
LLM agents.

S

请将下面的英文翻译成中文,

P

要求语言生动活泼,简洁优雅。

E

给我三个结果。

Zero-shot

只是使用CRISPE,不增加示例样本,就是 zero-shot

下面是这个任务的 zero-shot
prompt



请输出翻译后的结果:

ChatGPT 3.5 输出:

1 花费大量时间思考不同可能的未来情景及其概率可能会吸引人,但我建议采取完全不同的方法——尝试自己建立原型。首先,这是相当具有挑战性和有趣的。其次,它将有助于我们以更有结构的方式审视我们的工作。第三,它将给我们一个机会实践最先进的方法之一——LLM代理。

2 花费大量时间思考不同可能的未来情景及其概率可能会引人入胜,但我建议采取一种完全不同的方法——尝试自己构建原型。首先,这是相当具有挑战性和有趣的。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供一个实践最尖端方法的机会——LLM代理。

3 花费大量时间思考不同可能的未来情景及其概率可能会令人着迷,但我建议尝试完全不同的方法——自己构建原型。首先,这非常具有挑战性和有趣。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供实践最先进方法之一——LLM代理的机会。

1.

Few_shot

有的时候,我们如果给他一个示范,可能会有更好的效果。将示例加入 Prompt 的做法,就是 few-shotsfew  可以是 1,2,3,4,5 。比如,我提供一个样本,就是 1-shot



ChatGPT 3.5 输出:

1.花费大量时间思考不同可能的未来情景和它们的概率可能会吸引人,但我建议一个完全不同的方法——尝试自己建立原型。首先,这是相当具有挑战性和有趣的。其次,它将帮助我们以更有结构的方式看待我们的工作。第三,它将给我们一个机会实践最前沿的方法之一——LLM代理。

2.对未来情景进行大量思考,以及它们的概率,可能会吸引人,但是我建议采取完全不同的方法——尝试自己建立原型。首先,这是相当具有挑战性和有趣的。其次,这将帮助我们以更有结构的方式审视我们的工作。第三,这将为我们提供一个实践最尖端方法之一的机会——LLM代理。

3.花费大量时间思考不同可能的未来情景及其概率可能会引人入胜,但我建议采取完全不同的方法——尝试自己构建原型。首先,这相当具有挑战性和有趣。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供一个实践最尖端方法之一的机会——LLM代理。

COT

效果似乎有所提升。我们再试试 COT,也就是思维链。他是将要执行的任务拆解为多个步骤,按步骤执行。

我们更新后的 Prompt  是:



ChatGPT 3.5 输出的结果是:

步骤1翻译结果:

花费大量时间思考不同可能的未来场景及其概率可能会令人着迷,但我建议采取完全不同的方法——尝试自己构建原型。首先,这相当具有挑战性和趣味性。其次,它将有助于我们以更有结构性的方式审视我们的工作。第三,它将为我们提供一个实践最先进方法之一——LLM代理的机会。

步骤2翻译结果:

摒弃“花费大量时间思考不同未来场景和概率”的想法,来试着亲自构建原型吧!这不仅具有挑战性和趣味性,还能使我们更有条理地审视工作。同时,这也是尝试最先进方法——LLM代理的机会。

可以看到,现在这个结果明显更好了。

COT+SC

COT 通过分步骤加大了 LLM 的深度。SC  则是在增加深度的基础上再增加宽度。

IMG_259

我们用 COT+ SC 的方法再来写一个Prompt

ChatGPT
3.5
输出结果:

步骤 1 结果:
1.
花费大量时间思考不同可能的未来情景及其概率可能是迷人的,但我建议采取完全不同的方法——尝试亲自建立你的原型。首先,这相当具有挑战性和有趣。第二,它将帮助我们以更有结构的方式看待我们的工作。第三,它将给我们一个机会来实践最前沿的方法——LLM代理。2. 投入大量的时间思考不同可能的未来情景及其概率可能会十分吸引人,但我建议采取完全不同的方法——尝试亲自建立你的原型。首先,这是相当具有挑战性和有趣的。第二,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供一个实践最尖端方法之一——LLM代理的机会。3. 投入大量时间思考不同可能的未来情景及其概率可能会引人入胜,但我建议采取完全不同的方法——尝试亲自建立你的原型。首先,这是相当具有挑战性和有趣的。第二,它将帮助我们以更有结构的方式审视我们的工作。第三,它将给我们一个机会来实践最前沿的方法之一——LLM代理。

步骤 2 结果:
1.
虽然沉浸于思考各种可能出现的未来情景及其概率是令人着迷的,但我建议采取绝然不同的方式——亲自尝试建立你的原型。首先,这样做既具有挑战性又有趣。其次,它能够以更有结构的方式审视我们的工作。第三,它让我们有机会实践最尖端的方法之一——LLM代理。2. 虽然沉浸于思考各种可能出现的未来情景及其概率是令人着迷的,但我建议采取绝然不同的方式——亲自尝试建立你的原型。首先,这样做既具有挑战性又有趣。其次,它能够以更有结构的方式审视我们的工作。第三,它给我们提供了实践最尖端方法之一——LLM代理的机会。3. 虽然沉浸于思考各种可能出现的未来情景及其概率是引人入胜的,但我建议采取绝然不同的方式——亲自尝试建立你的原型。首先,这样做既具有挑战性又有趣。其次,它能够以更有结构的方式审视我们的工作。最后,它让我们有机会实践最尖端的方法之一——LLM代理。
步骤 3 结果:

1. 虽然沉浸于思考各种可能出现的未来情景及其概率是引人入胜的,但我建议采取绝然不同的方式——亲自尝试建立你的原型。首先,这样做既具有挑战性又有趣。其次,它能够以更有结构的方式审视我们的工作。最后,它让我们有机会实践最尖端的方法之一——LLM代理。

TOT

TOT   COT+SC  类似,也是先分步骤,然后每个步骤多个结果,不同的是,COT+SC  是并列输出多个结果。而 TOT 是在每一步的多个结果中进行选择,然后再进行下一步,输出多个结果。

我们继续修改 Prompt

步骤 1 3 个结果:

1.花费大量时间思考各种可能的未来情景和它们的概率可能是令人着迷的,但我建议采取完全不同的方法——尝试亲自建立你的原型。首先,这是相当具有挑战性和有趣的。第二,它将帮助我们以更有结构的方式看待我们的工作。第三,它将给我们一个机会在实践中尝试最前沿的方法之一——LLM代理。

2.花费大量时间思考不同可能的未来情景及其概率可能是引人入胜的,但我建议采取完全不同的方法——尝试自己构建原型。首先,这非常具有挑战性和有趣。其次,这将帮助我们更有条理地看待我们的工作。第三,这将为我们提供一个实践的机会,尝试最尖端的方法之一——LLM代理。

3.花费大量时间思考各种可能的未来情景及其概率可能是吸引人的,但我建议采取完全不同的方法——尝试自己建立原型。首先,这是相当具有挑战性和有趣的。其次,这将帮助我们以更有结构的方式看待我们的工作。第三,这将为我们提供一个实践的机会,尝试最前沿的方法之一——LLM代理。

步骤 2 1 个结果:

花费大量时间思考各种可能的未来情景及其概率可能是吸引人的,但我建议采取完全不同的方法——尝试自己建立原型。这不仅具有挑战性和有趣,还能以更有结构的方式审视我们的工作,并实践尝试最前沿的方法之一——LLM代理。

步骤 3 3 个结果:

1.花费大量时间思考各种可能的未来情景及其概率可能很吸引人,但我建议采取一种截然不同的方法——尝试亲自建立原型。首先,这既具有挑战性又有趣。其次,它将帮助我们以更有条理的方式审视我们的工作。第三,它将给我们提供一个实践的机会,尝试最尖端的方法之一——LLM代理。

2.花费大量时间思考各种可能的未来情景及其概率可能很吸引人,但我建议采取完全不同的方法——尝试亲自建立原型。首先,这非常具有挑战性和有趣。其次,它将帮助我们以更有结构的方式看待我们的工作。第三,它将给我们一个实践的机会,尝试最前沿的方法之一——LLM代理。

3.花费大量时间思考各种可能的未来情景及其概率可能很吸引人,但我建议采取完全不同的方法——尝试亲自构建你的原型。首先,这非常具有挑战性和有趣。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将给我们一个实践的机会,尝试最尖端的方法之一——LLM代理。

步骤 4 的最终结果:

花费大量时间思考各种可能的未来情景及其概率可能很吸引人,但我建议采取完全不同的方法——尝试亲自建立原型。这不仅具有挑战性和有趣,还能以更有结构的方式审视我们的工作,并实践尝试最前沿的方法之一——LLM代理。

Step-Back

通俗的讲,Step-Back 就是在写 Prompt 的时候,往后退一步,想想在回答这个问题之前需要先回答什么问题。网上很多
Step-Back
都是通过变成的方法把问题拆成多个 Chain  来做的。但我试了一下,用一条纯粹的 Prompt  也是可以实现的。

还是相同的任务,我们写这样一条 Prompt

ChatGPT 3.5 结果:

总结

我用一个英文翻译的例子,来讲解了 Prompt 编写过程中的一些技巧,包括:

CRISPE框架

Zero-Shot

Few-Shots

COT

SC

TOT

Step-Back

下面我们对同一个输出在相同的模型 ChatGPT
3.5 Turbo
上的翻译结果:

Prompt  模式

结果

主观评分

Zero-Shot

花费大量时间思考不同可能的未来情景及其概率可能会令人着迷,但我建议尝试完全不同的方法——自己构建原型。首先,这非常具有挑战性和有趣。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供实践最先进方法之一——LLM代理的机会。

3.5

Few-Shots

花费大量时间思考不同可能的未来情景及其概率可能会引人入胜,但我建议采取完全不同的方法——尝试自己构建原型。首先,这相当具有挑战性和有趣。其次,它将帮助我们以更有结构的方式审视我们的工作。第三,它将为我们提供一个实践最尖端方法之一的机会——LLM代理。

3.5

COT

摒弃“花费大量时间思考不同未来场景和概率”的想法,来试着亲自构建原型吧!这不仅具有挑战性和趣味性,还能使我们更有条理地审视工作。同时,这也是尝试最先进方法——LLM代理的机会。

5

COT+SC

虽然沉浸于思考各种可能出现的未来情景及其概率是引人入胜的,但我建议采取绝然不同的方式——亲自尝试建立你的原型。首先,这样做既具有挑战性又有趣。其次,它能够以更有结构的方式审视我们的工作。最后,它让我们有机会实践最尖端的方法之一——LLM代理。

4

TOT

花费大量时间思考各种可能的未来情景及其概率可能很吸引人,但我建议采取完全不同的方法——尝试亲自建立原型。这不仅具有挑战性和有趣,还能以更有结构的方式审视我们的工作,并实践尝试最前沿的方法之一——LLM代理。

4.5

Step-Back

花费大量时间思考不同可能的未来场景及其概率可能会引人入胜,但我建议采用完全不同的方法——尝试自己建立原型。首先,这是相当具有挑战性和有趣的。其次,这将帮助我们以更有结构的方式看待我们的工作。第三,它将为我们提供尝试最前沿方法之一——LLM智能体的实践机会。

3. 75

总结来说:

对于同样的模型,同样的任务,使用不同的
Prompt
,输出的结果也有不小的差异

一般来说,使用Prompt技巧的结果
回比不使用任何技巧要好

对于简单的任务并不是叠加所有的技巧就会更好,到达一定结果后。再叠加技巧不会提升效果

这是一个让大家理解 Prompt  编写技巧的小教程,所以采用了同一个任务方便对比,但是有些复杂技巧适合与更难的任务,只有在更难的任务上才能看出差异

回到文章开头的问题,为什么 Google
在不同的指标上写了不同的小字呢?因为他是通过不同的 Prompt  模式才“打败”GPT-4的。如果所有指标都采用相同的 Prompt模式,Google 应该是 没有信心“打败”对手的。

出自:https://mp.weixin.qq.com/s/Wer9Wmyk0VJ25sSrvvKVlQ