使用代理 API 接口实现 GPT Chat
发表于更新于
字数总计:310阅读时长:1分钟 深圳
GPTGPT使用代理 API 接口实现 GPT Chat
nixgnauhcuy前言
昨天写的 A Simple GPT Qt Demo,由于使用的是官方的 API 接口,所以国内是无法使用的。基于这点考虑,寻找了替代 OpenAI API代理服务来实现。
不过目前该代理接口只实现了 chat 功能,所以不能用于生成图片等功能。
代理接口支持通过上下文内容进行连续对话,所以刚好拿来玩一玩。
一些使用方法和注意事项,可以前往该链接 https://www.openai-proxy.com/ 查看,我就不多赘述了。
实现
为了直观,简单用了 QT 实现了该功能,具体代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| import sys import openai import requests import json
from Ui_main import Ui_MainWindow from PyQt5.QtWidgets import QApplication, QMainWindow
class MyPyQT_Form(QMainWindow, Ui_MainWindow):
def __init__(self): super().__init__() self.setupUi(self) self.chatPushButton.clicked.connect(self.chatPushButtonEvent)
def chatPushButtonEvent(self): if self.chatLineEdit.text() == "": return url = "https://api.openai-proxy.com/v1/chat/completions" payload = json.dumps({ "apiKey": "xxx", "sessionId": "8d1cb9b0-f535-43a8-b738-4f61b1608572", "content": self.chatLineEdit.text() }) headers = { 'Content-Type': 'application/json' } response = requests.request("POST", url, headers=headers, data=payload).json()
self.chatTextEdit.append("user:\n" + self.chatLineEdit.text() + "\n\n" + "ask:\n" + response['data'] + "\n")
if __name__ == '__main__': app = QApplication(sys.argv) my_pyqt_form = MyPyQT_Form() my_pyqt_form.show() sys.exit(app.exec_())
|
效果