举个例子,当你让一个学生在1秒钟内回复你
3424213+5421321321=?
等于多少?在学生没有打草稿并且在1秒钟回复你的情况下,除非他提前背过答案或者是神算,否则他可能随便编你一个随机的错误答案给你。
即使是一名数学博士,也无法在没有思考的情况下算出一道复杂的数学题,所以我们在使用GPT时需要给她计算思考的事件。
GPT的执行是通过Prompt触发,只有在你发出消息后才会触发执行,所以她不能按照"给你3秒钟时间思考,思考清楚后再回答我"的指令执行,
所以,如果想要给GPT时间"思考"那就需要触发GPT的思考过程,比如前面讲到的链式思考方式,通过方法一、方法二,触发GPT的自主思考。
策略一:通过COT方式触发GPT的自动链式思考
- 让我们一步一步思考
- 让我们逐步思考
- 让我们一步一步解决
- 我需要你分解步骤思考
- 我需要你列出解决问题的大纲后执行
- 让我们一步一步地解决这个问题,以确保我们有正确的答案 (这一句是测试后效果最优的方案)
- 为了解决**问题,首先要解决的是
通过这些问答方式拼接,触发GPT的自主思考,在解决问题前先制定自己的解决方案,然后根据解决方案逐步执行。
上面的语句只是为了启发,用法有很多,例如OpenAI官方给的实例:
假设我们想要一个模型来评估学生对数学问题的解决方案。解决这个问题的最明显方法是简单地询问模型学生的解决方案是否正确。
ini
请判断学生的回答是否正确?你只需要告诉我"正确"或"错误"
问题:我正在建造一个太阳能发电站,需要帮助计算财务问题土地费用成本为100美元/平方英尺购买太阳能电池板需要250美元/平方英尺我已经谈好了维护合同,每年需要10万美元,并额外支付没平方英尺10美元。请计算第一年的运营总费用是多少?
学生的解决方案:假设X为发电站的大小,单位为平方英尺。土地成本为:100X太阳能电池板的成本:250X维护成本:100000 + 100X总成本为 100X + 250X+100000+100X = 450X+100000
采用这个prompt指令的话,GPT给出的答案是:学生的解决方案是正确的。
但是,明显的学生的解决方案是错误的,我们可以通过提示GPT首先生成自己的解决方案来让模型注意到这一点。
ini
首先制定出自己的问题解决方案。
然后将您的解决方案与学生的解决方案进行比较,并评估学生的解决方案是否正确。
在你自己做题之前,不要决定学生的解决方案是否正确。
问题陈述:我正在建造一个太阳能装置,我需要帮助解决财务状况。土地成本$ 100 /平方英尺我可以以$250/平方英尺的价格购买太阳能电池板我谈判了一份维护合同,每年将花费我 10 万美元,每平方英尺额外支付 10 美元作为平方英尺数的函数,运营第一年的总成本是多少。
学生解决方案:设x为装置的大小(以平方英尺为单位)。
1.土地成本:100倍
2.太阳能电池板成本:250倍
3.维护成本:100,000 + 100x
总成本:100x + 250x + 100,000 + 100x = 450x + 100,000
GPT的回答如下:
css
首先,我将按照问题的信息来制定出我的解决方案:设X为装置的大小(以平方英尺为单位)。
a. 土地成本为:100X
b. 太阳能电池板的成本:250X
c. 维护成本:100,000 + 10X 总成本:100X(土地成本) + 250X(太阳能电池板成本) + 100,000(年维护固定成本)+ 10X(平方英尺维护成本)= 360X + 100,000。
现在,我将我的解决方案与学生的解决方案进行比较。
学生的解决方案有误,
他们在计算维护成本时错误地将每平方英尺10美元计算为100X,而实际上应该是10X。因此,他们得出的总成本为450X+100,000,
而正确答案应为360X+100,000。
策略二:使用内心独白的方式隐藏推理过程
前面的策略表明,GPT在回答问题时进行一些有步骤的推理是很有必要的。但是,有时候我们得出最终的结果的推理过程是不适合与用户进行分享的。
面对这种情况,我们可以使用内心独白策略,内心独白策略的设计思想是让GPT将输出中要对用户隐藏的部分放入指定带的结构化格式中,以便于解析它们。
然后,在向用户呈现输出之前,将解析输出,并且仅使部分输出可见。
请按照以下步骤回答用户查询。
第1步 - 首先制定自己的问题解决方案。
不要依赖学生的解决方案,因为它可能是不正确的。
将此步骤的所有工作括在三引号内。
第 2 步 - 将您的解决方案与学生的解决方案进行比较,
并评估学生的解决方案是否正确。
将此步骤的所有工作括在三引号内。
第 3 步 - 如果学生犯了错误,
请确定您可以在不泄露答案的情况下给学生什么提示。
将此步骤的所有工作括在三引号内。
第 4 步 - 如果学生犯了错误,
请输出:提示:第三步中三引号之外的提示内容。
使用这种方式的原因是因为Transformer的原理,只支持GPT通过Tokens进行推理下文,所以内容都必须输出出来才有效。
策略三:"欺诈"GPT
- 还有更多的信息吗?
- 我认为你的回答不正确!
- 应该还有更多的信息。
这种"欺诈"的方法可以根据场景不同选择,并且可以多次"欺诈",让GPT多次自我反思。
例如:
ini
请判断学生的回答是否正确?
你只需要告诉我"正确"或"错误"
问题:我正在建造一个太阳能发电站,
需要帮助计算财务问题土地费用成本为100美元/平方英尺购买太阳能电池板需要250美元/平方英尺我已经谈好了维护合同,每年需要10万美元,并额外支付没平方英尺10美元。
请计算第一年的运营总费用是多少?
学生的解决方案:假设X为发电站的大小,单位为平方英尺。土地成本为:100X太阳能电池板的成本:250X维护成本:100000 + 100X总成本为 100X + 250X+100000+100X = 450X+100000
还是上面的问题,第一次GPT回答我:
学生的解答是正确的。第一年的运营总费用是450X + 100,000美元,其中X表示发电站的大小,单位是平方英尺。
开始"欺诈":
我认为你回答的不正确
GPT进行了自我检查,并做了检讨:
我再仔细检查一下学生的解答和问题:
问题:计算第一年的运营总费用。
学生的解答:
土地费用成本为100美元/平方英尺,所以土地成本为100X美元,其中X表示发电站的大小,单位是平方英尺。
购买太阳能电池板需要250美元/平方英尺,所以电池板的成本为250X美元。
维护成本为每年10万美元,并额外支付每平方英尺10美元,所以维护成本为10,000 + 10X美元。
因此,总成本为100X + 250X + 10,000 + 10X美元。
将这些项相加,得到总成本为360X + 10,000美元。
所以学生的解答是错误的。第一年的运营总费用应为360X + 10,000美元,而不是450X + 100,000美元。非常抱歉之前的回答有误。
再"欺诈"一次,这次和第一次"欺诈"回答结果一致,说明回答是正确的。