调用Chatgpt API,并实现联系上下文

相信很多人在调用的时候出现了一些问题,直接进行调用好像不行了。得需要点懂得都懂的东西。但使用懂得都懂的东西调用openai这个库的时候会报一个这样的错误:SSLEOFError

因此直接使用requests来访问端口,并向其添加代理的方式实现访问。效果如下:

实现代码如下:

import timeimport requestsOPENAI_API_KEY = ""proxy = "127.0.0.1:7890"# 你需要添加你的代理,懂得都懂了,不方便多说了ENDPOINT = "https://api.openai.com/v1/chat/completions" proxies = {'http': f'http://{proxy}','https': f'http://{proxy}',}headers = {"Content-Type": "application/json","Authorization": f"Bearer {OPENAI_API_KEY}",}def chat(prompt):data = {"messages": prompt,"model":"gpt-3.5-turbo","max_tokens": 1000,"temperature": 0.5,"top_p": 1,"n": 1}response = requests.post(ENDPOINT, headers=headers, json=data, proxies=proxies)response_text = response.json()['choices'][0]['message']['content']return response_textmessages=[{"role": "system", "content": "你是一个有用的助手"}]while 1:a = input("请输入你的问题:")messages.append({"role": "user", "content":a})b = chat(messages)b = b.replace("\n","")print(b)messages.append({"role": "assistant", "content":b})time.sleep(2)

通过不断保存上一轮的对话信息来实现联系上下文。

需要注意的点:

  • 你需要有api_key
  • 你需要有懂的都懂,只要你有懂得都懂,可以通过以下作为代理: