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了,也不需要这个。访问权限密钥推荐设置,这样可以减少不必要的损失

如下图:

image

输入密钥可以成功访问:

image-1680457052091

我的项目地址就不公开了,我是自己使用的,最近gpt貌似开始在封号了,我也是自己新注册的号,额度只有5$

说明

1.数据是存在自己的浏览器里面的,并不会保存数据。数据放在localstorage里面的,你换个浏览器之前的记录就没有,这个项目貌似提供导出导入。

2.nginx代理之后,会等一会或者很久才会有回复,这是因为 Nginx 反向代理,开启了 buffer,则 Nginx 会尝试从后端缓冲一定大小的数据再发送给浏览器。请尝试在反代参数后添加 proxy_buffering off;,然后重载 Nginx。其他 web server 配置同理。

3.如果自己是付费gpt4,将对应的模型改成gpt4即可