赞
踩
chatgpt相信大家已经耳熟能详,但如果想要使用正版的chatgpt,需要科学上网,在openai的官网中使用,一些魔法速度慢,延迟高,所以在使用chatgpt时有很多不便,
若是想使用功能更全面的gpt4.0更是要支付每个月20美刀的费用。下面我来教大家如何部署一个自己的chatgpt网站,在国内也可以直连使用,采用调用api来使用gpt的方法。
首先搭建一个自定义接口,所用到的项目为"free-gpt3.5-2api",通过调用这个接口来实现回答我们问题的效果,在后续操作需要填入到部署的gpt网站中,从而使网站可以调用这个接口进行回答。接下来用到的项目为"new api",这个项目用来管理我们的接口,生成密钥,来防止我们的接口被随意调用。最后,搭建一个chatgpt网站,作为示例,我使用的是github上"ChatGPT-Next-Web"这个项目,在搭建网站后,需要填写你的自定义接口和key来正常使用gpt。
1.一台云服务器(下面演示过程中使用的系统为ubuntu)
2.域名(可有可无,若没有,则通过ip+端口来访问)
3.在dashboard.render.com上注册一个账号(容器托管平台)
因为docker部署较为简单,后续三个项目部署均使用docker部署,所以第一步首先要安装docker在你的云服务器上。
ubtuntu系统安装docker命令如下
1.更新 apt 软件包索引:
sudo apt update
2.安装依赖软件包,以允许 apt 通过 HTTPS 使用存储库:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
3.添加 Docker 官方的 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
`4.设置 Docker 的稳定版存储库:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
5.再次更新 apt 软件包索引:
sudo apt update
6.安装 Docker:
sudo apt install docker-ce
7.验证 Docker 是否正确安装,运行一个简单的容器:
sudo docker run hello-world
官方chatgpt工作原理,前端用户在提问后,提问的内容以及key会发送到接口,此处key是用来验证授权和身份的,如果key正确,接口将提问的内容发送到后端gpt,则后端响应这个问题并给出回答,通过接口返回给前端。
此项目gpt工作原理,通过逆向工程得到一个和openai接口相仿的自定义接口,通过new api这个项目生成密钥,从而防止接口被随意调用,只有拥有正确密钥,经过授权的人才可以调用接口。其它和官方chatgpt工作原理相同,也就是把官方的接口替换为了自己的自定义接口。
接下来进入正题,正式的项目部署
因为自定义接口容易被封ip,所以不建议部署到服务器上,所以此处部署到render容器上
1.进入先前注册的dashboard.render.com中
2.点击web服务,选择第一个
3.在公共Git存储库中填入:https://github.com/aurorax-neo/free-gpt3.5-2api,点击继续
4.Runtime改为go,选择Free,然后创建项目
5.等待按钮变绿,复制左上角的网址,这个为你的接口地址
至此,接口搭建完成
在云服务器运行这行命令,直接部署
docker run --name new-api -d --restart always -p 4000:4000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/new-api:/data calciumion/new-api:latest
之后可以通过ip+端口来访问你所部署的gpt网站,此处端口为4000
搭建完成了,如何去使用这个网站管理接口呢?
1.登录账号
默认管理员账号为root,密码123456
2.渠道
添加渠道,密钥先随便填写,代理填你第一步中搭建的接口地址,之后提交
3.令牌
到令牌处添加密钥,复制密钥即可
此时这个网站的ip+端口就是你新的接口地址(你第一步搭建的接口仍然可以使用),在调用这个接口的时候,它需要你提供正确的key来授权,才可以调用,这样就防止别人随意调用你的接口。
1.拉取 Docker Hub 上的镜像 yidadaa/chatgpt-next-web
docker pull yidadaa/chatgpt-next-web
2.在docker中运行yidadaa/chatgpt-next-web容器
docker run -d -p 3000:3000 \ /*将容器3000端口映射到云服务器3000端口上*/
-e BASE_URL="此处输入你的接口地址"
-e OPENAI_API_KEY="此处输入你的接口秘钥" \ /*环境变量*/
-e CODE="为gpt网站设置密码" \
yidadaa/chatgpt-next-web
搭建完成!
之后可以通过ip+端口来访问你所部署的gpt网站,此处端口为3000
其它人想要使用你的gpt网站,需要输入你设置的CODE密码来登录,或提供接口地址和key才可以使用。
**注:**这个网站可以对接任何的自定义接口,可以在设置中修改接口地址,但有的接口地址必须需要key授权才可以调用。
示例网站:chat.elkl.top,此网站仅供演示
该项目中可以添加其它大模型相关的环境变量,此处不一一展示,感兴趣的可以去看一下这个项目的官方文档
以上为gpt自用网站的所有搭建过程,上面搭建的接口不仅仅可以用于第三步中搭建的网站,很多可以修改接口地址的gpt网站与项目中均可以使用,但该接口为逆向的产物,所以性能与速度可能略有不足。如果不想通过ip+端口访问,可以解析域名到服务器上,通过反向代理来用域名代替ip+端口访问项目。
所用到的三个项目均来自github,大家想更详细的了解,可以去查看官方文档:
https://github.com/aurorax-neo/free-gpt3.5-2api
https://github.com/Calcium-Ion/new-api
https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web
本帖内容仅供学习交流,请勿用于非法途径!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。