我为 ChatGPT 制作了一个命令行解释器。效果很好。
我唯一的问题是,在打印结果之前,您必须等待 ChatGPT 的响应完全完成。我希望它按照 ChatGPT 的想法打印响应。也许线程可以工作?
以下是我的代码。没什么特别的。
import openai
openai.api_key = "MY_SECRET"
while True:
prompt = input('! ')
result = openai.Completion.create(engine='text-davinci-003', prompt=prompt, max_tokens=2000, n=1, stop=None, temperature=0.5).choices[0].text
print(result)
我看过这篇 StackOverFlow 帖子,它导致了与我相同的问题。
最佳答案
所以事实证明你必须转动stream=True
并迭代抛出它。
import openai
openai.api_key = "MY_SECRET"
while True:
prompt = input('! ')
result = openai.Completion.create(engine='text-davinci-003', prompt=prompt, max_tokens=2000, n=1, stop=None, temperature=0.5, stream=True)
for i in result:
print(i.choices[0].text)
关于python - Python 中的 ChatGPT 包装器作为命令行解释器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75816148/