在上面这段代码中,需要增加一个功能,即用户输入问题,ai返回回答,请修改上面的代码
时间: 2024-10-09 09:16:08 浏览: 31
为了实现用户输入问题,AI返回回答的功能,你需要在代码中添加一个循环,让用户持续输入问题,然后将每个问题加入到`messages`列表中。下面是修改后的代码示例:
```python
import requests
import json
Baseurl = "https://api.aikeji.vip"
Skey = "sk-bsQpz1wEJcRVunof9ldc8K7w6QLgQTR1igGZnx5HjgZdxx0A"
while True:
user_input = input("请输入一个问题:") # 用户输入
if user_input.lower() == "退出": # 检查用户是否想要结束对话
break
payload = json.dumps({
"model": "claude-3-5-sonnet-20240620",
"messages": [
{
"role": "system",
"content": "你有一个问题:"
},
{
"role": "user",
"content": user_input
}
]
})
url = Baseurl + "/v1/chat/completions"
headers = {
'Accept': 'application/json',
'Authorization': f'Bearer {Skey}',
'User-Agent': 'Apifox/1.0.0 (https://apifox.com)',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
# 解析 JSON 数据为 Python 字典
data = response.json()
ai_response = data['choices'][0]['text'] # 提取AI的回答
print(f"AI的回答是:{ai_response}")
```
在这个版本中,我们使用了一个无限循环等待用户的输入,直到用户输入"退出"为止。每次用户输入问题后,我们将其添加到`messages`列表中,并通过API获取AI的回答。这样就实现了用户提问和AI回复的交互。
阅读全文