- 此程序实现了ChatGPT API的二次开发
- 与微信小程序平台关联,添加了认证功能
- 可自定义ChatGPT API代理
- 轮询多个key
- 支持回答流式输出
- /api/login/creatToken
创建token, 在请求头中填入"js_code"参数,此参数由下面代码产生
wx.login({
success (res) {
if (res.code) {
//发起网络请求
console.log(res.code)
} else {
// console.log('登录失败!' + res.errMsg)
}
}
})返回数据格式,取出data作为请求下一个接口/api/v1/chat的请求头
{
"code": 200,
"success": true,
"data": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaW5mbyI6eyJzZXNzaW9uX2tleSI6IkVaTXZiVTc5TU42RXMxZldCQTVNSGc9PSIsIm9wZW5pZCI6Im9rQmM3NHhKM1g2MGRUX3BJbU1NOHZhV1R0NWcifSwiaWF0IjoxNjgyOTE1NDEzLCJleHAiOjE2ODI5MTcyMTN9.cARM2BU1tcVqtCHqgo9SEOQ7TnFDqH1KiSdH00rsr78"
}- /api/v1/chat
使用上一个接口产生的token作为请求头"authorization"的值
请求格式
{
"messages": [
{
"role": "user",
"content": "hi"
},
{
"role":"assistant",
"content":"你好,有什么可以帮助你的吗?"
},
{
"role": "user",
"content": "你是谁"
}
]
}- 拉取项目
git clone https://github.com/Ais-Danny/ChatGPT_API.git- 进入目录下载依赖
npm i- 修改配置文件
appId,appSecret查阅微信开发者平台获取
{
"文件名必须修改为config.json才能生效":"",
"port":3000,
"chat": {
"OpenAi密钥": "",
"keys": [
"可填写多个key"
],
"最大tokens限制": "",
"max_tokens": 512,
"token过期时间": "",
"token_live_time": "30min"
},
"对称密钥": "保持所有节点一致即可,密钥泄漏会导致伪造token进行会话,请妥善保管",
"private_key": "gpt_good",
"代理服务器": "//默认https://api.openai.com",
"proxy": "https://api.openai.com",
"appId": "",
"appSecret": ""
}- 启动项目
npm run startnpm run ssl 可启动https加密,需要在scr/ssl中添加server.crt,server.key证书(命名必需一样)