【GPT入门】第5课 思维链的提出与案例
1. 思维链的提出

2.思维链的应用
针对复杂场景,AI回直接给出答案,可能是错误的
例如,题:
**题一:**我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个。我还剩下多少苹果?
**题二:**我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个。我还剩下多少苹果?"
prompt = "我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个, 又买了5个,吃掉3个。我还剩下多少苹果?"
但,在题后面,给出,请一步步思考的提示,AI又会做正确。
自己试试,不同模型给的答案可能不一样。
3.思维链代码
c
from openai import OpenAI
# 加载 .env 文件到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())
client = OpenAI()
# prompt = "我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个。我还剩下多少苹果?"
prompt = "我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个, 又买了5个,吃掉3个。我还剩下多少苹果?"
def get_completion(prompt, model='gpt-3.5-turbo'):
messages = [{"role":"user","content":prompt}]
response = client.chat.completions.create(
model=model,
messages=messages
)
return response.choices[0].message.content
print(get_completion(prompt))
它的回答:
我剩下 10 - 2 - 2 - 5 + 1 - 5 + 3 = 0 个苹果。我已经吃完了所有买来的苹果。
4. 增加请一步步思考的思维链提示
prompt = "我去市场买了 10 个苹果。我给了邻居 2 个苹果和修理工 2 个苹果。然后我去买了 5 个苹果并吃了 1 个, 又买了5个,吃掉3个。我还剩下多少苹果? 请一步步思考"
它的答案竟然就对了。openAI给的回答如下:
c
1. 一开始我买了10个苹果。
2. 给邻居和修理工各2个苹果后,我剩下了10 - 2 - 2 = 6个苹果。
3. 我又买了5个苹果,剩下的苹果数量为6 + 5 = 11个。
4. 在这11个苹果中,我吃了1个,剩下10个。
5. 我又买了5个苹果,剩下的苹果数量为10 + 5 = 15个。
6. 在这15个苹果中,我又吃了3个,剩下的苹果数量为15 - 3 = 12个。