admin管理员组

文章数量:1632051

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

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

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

实现代码如下:

import time
import requests

OPENAI_API_KEY = ""
proxy = "127.0.0.1:7890"                # 你需要添加你的代理,懂得都懂了,不方便多说了


ENDPOINT = "https://api.openai/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_text

messages=[{"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
  • 你需要有懂的都懂,只要你有懂得都懂,可以通过以下作为代理:

本文标签: 上下文chatGPTAPI