自建ChatGPT反向代理服务器
自建ChatGPT反向代理服务器

自建ChatGPT反向代理服务器

为啥需要自建ChatGPT反代服务

OpenAI提供了两种访问方式,一种是直接在ChatGPT网页端使用的Access Token方式,这种方式可以免费使用GPT-3.5模型,只需要登录即可使用。但缺点是不稳定,且无法扩展。另一种是使用API,注册用户可以获得5美元的赠送额度,但使用完之后就需要付费。这种方式相对更稳定,但缺点是赠送额度较少且存在限流,目前是3条/分钟。

因此,对于那些希望免费使用OpenAI GPT-3.5模型的用户来说,选择Access Token方式是比较好的选择。但是需要解决的问题是不稳定以及可能IP被封禁的问题。为了解决这些问题,我们可以自建反向代理服务来提高稳定性,并保护我们的IP地址不被OpenAI封禁。也有一些公共的反向代理服务可以选择使用,但是很不稳定,因为它们是免费共享的。所以自建反向代理服务是一个不错的选择。

项目地址:https://github.com/dqzboy/ChatGPT-Proxy

ChatGPT-Proxy一键部署

如果自己安装觉得麻烦,可以使用提供的一键部署脚本! 脚本目前已实现基础环境安装、所需组件依赖部署、镜像版本自动更新、403|401|429检测邮箱告警(使用QQ邮箱会被Tencent邮箱服务拦截)、uptime-kuma监控等功能!

说明:目前脚本适用于CentOS 7\8\9、RHEL-8\9、Ubuntu、debian以及opencloudos系统;运行脚本需要确保网络环境稳定(确保系统所需组件可以正常下载)。

# CentOS

yum -y install wget

# Ubuntu

apt -y install wget

bash -c "$(wget -q -O- https://raw.githubusercontent.com/dqzboy/ChatGPT-Proxy/main/install/chatgpt-proxy.sh)"

环境说明

一台VPS,规格最低配 1C1G;注意:warp不支持arm架构的机器

VPS可以正常访问 chatgpt;或者国内服务器实现科学上网也可以

cd /data/go-chatgpt-api

运行容器服务

docker-compose up -d

# 检查运行的容器;确保容器状态为UP

docker ps

# 检测容器映射到宿主机的监听端口是否监听

ss -tnlp|grep 8080

检查是否正常

go-chatgpt-api需要初始化启动需要耐心等待

# 查看容器日志是否运行正常

docker logs -f go-chatgpt-api

出现 Service go-chatgpt-api is ready. 则表示服务可正常使用了

容器镜像更新

# 停止

docker-compose down

# 拉取新镜像

docker-compose pull

# 启动

docker-compose up -d

项目接入自建反代

接口更新

  • 原接口: http://go-chatgpt-api:8080/chatgpt/conversation
  • 更新后: http://go-chatgpt-api:8080/chatgpt/backend-api/conversation

项目:Chanzhaoyu/chatgpt-web | Kerwin1202/chatgpt-web

ChatGPTUnofficialProxyAPI(accessToken)

  • 现在我们可以找一个项目,使用access token模式,并使用我们自建的代理地址进行访问;
    • 自建IP的访问地址为http://vps-ip:8080/chatgpt/backend-api/conversation
    • 如果前端项目是直接跑的并且与反代服务同在一台VPS上,则反代地址可写成:http://127.0.0.1:8080/chatgpt/backend-api/conversation
    • 如果你前端项目是容器启的并且与反代服务同在一台VPS上,则反代地址可写成:http://go-chatgpt-api:8080/chatgpt/backend-api/conversation
  • access token获取:https://chat.openai.com/api/auth/session

API_REVERSE_PROXY=http://127.0.0.1:8080/chatgpt/backend-api/conversation

现在我们访问chatgpt-web,查看是否可以正常使用

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Title - Artist
0:00