我希望 ChatGPT 记住过去的对话并进行一致(有状态)的对话。
我看过ChatGPT Prompt Engineering的几个代码。
有两种设计提示的方法如下所示(伪代码)
的
-
使用单一输入(便宜,如果可能更好)
-
堆叠所有以前的历史(昂贵,令牌限制)
def openai_chat(prompt):
completions = openai.Completion.create(
engine = "text-davinci-003",
prompt = prompt,
max_tokens = 1024,
n = 1,
temperature = 0.8,
)
response = completions.choices[0].text.strip()
return response
# 1. Use a single input
while True:
prompt = input("User: ")
completion = openai_chat(prompt)
# 2. Stack all of previous history (prompt + completion)
prompt = ""
while True:
cur_prompt = input("User: ")
prompt += cur_prompt # pseudo code
completion = openai_chat(prompt)
prompt += completion # pseudo code
是否可以选择第一种方式(便宜的方式)进行一致的对话?
换句话说,即使提示只有当前输入,chatGPT 是否会记住过去的历史记录?
文章讨论了两种在与ChatGPT交互时保持对话历史一致性的方法:单一输入和堆叠历史。第一种方法是将当前输入作为唯一提示,而第二种则是在每次交互后累积历史。尽管第一种方法更便宜,但问题在于ChatGPT是否会仅凭当前输入记住过去对话。

390

被折叠的 条评论
为什么被折叠?



