ChatGpt个人部署任何地点可访问
1.准备工作:
(1)准备一台可以访问chatgpt的服务器:ping 一下这个就行openai.com,gpt也是他们公司的,他能通就行了。
现在香港服务器可以访问,这样你的访问端就不需要代理了。
总结:准备一台香港服务器
2.项目地址:方便的话,去给开发者点个星星
https://github.com/Chanzhaoyu/chatgpt-web,
我是采用的docker部署,然后用Nginx 转发,
官方yml文件:可以跳过直接看我的
version: '3'
services:
app:
image: chenzhaoyu94/chatgpt-web # 总是使用 latest ,更新时重新 pull 该 tag 镜像即可
ports:
- 127.0.0.1:3002:3002
environment:
# 二选一
OPENAI_API_KEY: sk-xxx
# 二选一
OPENAI_ACCESS_TOKEN: xxx
# API接口地址,可选,设置 OPENAI_API_KEY 时可用
OPENAI_API_BASE_URL: xxx
# API模型,可选,设置 OPENAI_API_KEY 时可用,https://platform.openai.com/docs/models
# gpt-4, gpt-4-0314, gpt-4-32k, gpt-4-32k-0314, gpt-3.5-turbo, gpt-3.5-turbo-0301, text-davinci-003, text-davinci-002, code-davinci-002
OPENAI_API_MODEL: xxx
# 反向代理,可选
API_REVERSE_PROXY: xxx
# 访问权限密钥,可选
AUTH_SECRET_KEY: xxx
# 每小时最大请求次数,可选,默认无限
MAX_REQUEST_PER_HOUR: 0
# 超时,单位毫秒,可选
TIMEOUT_MS: 60000
# Socks代理,可选,和 SOCKS_PROXY_PORT 一起时生效
SOCKS_PROXY_HOST: xxx
# Socks代理端口,可选,和 SOCKS_PROXY_HOST 一起时生效
SOCKS_PROXY_PORT: xxx
# HTTPS 代理,可选,支持 http,https,socks5
HTTPS_PROXY: http://xxx:7890
我的yml文件:
version: '3'
services:
app:
image: chenzhaoyu94/chatgpt-web # 总是使用 latest ,更新时重新 pull 该 tag 镜像即可
ports:
- 3002:3002
environment:
# 二选一 这里填上你自己的api_key即可
OPENAI_API_KEY: sk-xxxxxxxxx
# 二选一
# OPENAI_ACCESS_TOKEN: xxx
# API接口地址,可选,设置 OPENAI_API_KEY 时可用
# OPENAI_API_BASE_URL: xxx
# API模型,可选,设置 OPENAI_API_KEY 时可用,https://platform.openai.com/docs/models
# gpt-4, gpt-4-0314, gpt-4-32k, gpt-4-32k-0314, gpt-3.5-turbo, gpt-3.5-turbo-0301, text-davinci-003, text-davinci-002, code-davinci-002
OPENAI_API_MODEL: gpt-3.5-turbo
# 反向代理,可选
# API_REVERSE_PROXY: xxx
# 访问权限密钥,可选 推荐设置,这样就只有你自己和知道你的密钥的人可以访问这个服务,可以减少不必要的损失
AUTH_SECRET_KEY: xxx
# 每小时最大请求次数,可选,默认无限
MAX_REQUEST_PER_HOUR: 0
# 超时,单位毫秒,可选
TIMEOUT_MS: 60000
# Socks代理,可选,和 SOCKS_PROXY_PORT 一起时生效
# SOCKS_PROXY_HOST: xxx
# Socks代理端口,可选,和 SOCKS_PROXY_HOST 一起时生效
# SOCKS_PROXY_PORT: xxx
# HTTPS 代理,可选,支持 http,https,socks5
# HTTPS_PROXY: http://xxx:7890
使用docker-compose up -d 执行命令将创建容器即可
总结:除了apikey以及端口、模型等必要参数,其他我都注释了,因为下面的代理参数我并不清楚是做什么的,https我自己采用了nginx+ssl了,也不需要这个。访问权限密钥推荐设置,这样可以减少不必要的损失
如下图:
输入密钥可以成功访问:
我的项目地址就不公开了,我是自己使用的,最近gpt貌似开始在封号了,我也是自己新注册的号,额度只有5$
说明
1.数据是存在自己的浏览器里面的,并不会保存数据。数据放在localstorage里面的,你换个浏览器之前的记录就没有,这个项目貌似提供导出导入。
2.nginx代理之后,会等一会或者很久才会有回复,这是因为 Nginx 反向代理,开启了 buffer,则 Nginx 会尝试从后端缓冲一定大小的数据再发送给浏览器。请尝试在反代参数后添加 proxy_buffering off;
,然后重载 Nginx。其他 web server 配置同理。
3.如果自己是付费gpt4,将对应的模型改成gpt4即可