调用OpenAI的多轮对话API,通常使用`chatgpt`相关的接口,比如`gpt-3.5-turbo`。以下是一个简单的Python示例,使用`openai`库来实现多轮对话:
- import openai
- openai.api_key = 'your-api-key'
- # 初始化对话历史
- conversation = [{"role": "system", "content": "You are a helpful assistant."}]
- def chat(prompt):
- # 将用户输入添加到对话历史
- conversation.append({"role": "user", "content": prompt})
-
- # 调用API
- response = openai.ChatCompletion.create(
- model="gpt-3.5-turbo",
- messages=conversation
- )
-
- # 获取助手的回复
- answer = response['choices'][0]['message']['content'].strip()
-
- # 将助手的回复添加到对话历史
- conversation.append({"role": "assistant", "content": answer})
-
- return answer
- # 示例对话
- user_input = "Hello, who won the world cup in 2018?"
- print(chat(user_input))
- user_input = "And who was the top scorer?"
- print(chat(user_input))
复制代码
在这个示例中,我们:
1. 初始化一个对话历史记录。
2. 在调用API时,将用户和助手的发言记录到`conversation`。
3. 每次用户输入后,更新对话历史并取得新的回复。
记得替换`your-api-key`为你自己的OpenAI API密钥。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。