https://github.com/Yidadaa/ChatGPT-Next-Web

预览

ChatGPT Next Web

一键免费部署你的私人 ChatGPT 网页应用。

演示 Demo / 反馈 Issues / 加入 Discord / QQ 群 / 打赏开发者 / Donate

Deploy with Vercel

Open in Gitpod

主界面

主要功能

  • 在 1 分钟内使用 Vercel 免费一键部署
  • 精心设计的 UI,响应式设计,支持深色模式
  • 极快的首屏加载速度(~100kb)
  • 海量的内置 prompt 列表,来自中文英文
  • 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话
  • 一键导出聊天记录,完整的 Markdown 支持
  • 拥有自己的域名?好上加好,绑定后即可在任何地方无障碍快速访问

开始使用

  1. 准备好你的 OpenAI API Key;
  2. 点击右侧按钮开始部署:
    Deploy with Vercel,直接使用 Github 账号登录即可,记得在环境变量页填入 API Key 和页面访问密码 CODE;
  3. 部署完毕后,即可开始使用;
  4. (可选)绑定自定义域名:Vercel 分配的域名 DNS 在某些区域被污染了,绑定自定义域名即可直连。

保持更新

如果你按照上述步骤一键部署了自己的项目,可能会发现总是提示“存在更新”的问题,这是由于 Vercel 会默认为你创建一个新项目而不是 fork 本项目,这会导致无法正确地检测更新。
推荐你按照下列步骤重新部署:

  • 删除掉原先的 repo;
  • fork 本项目;
  • 前往 vercel 控制台,删除掉原先的 project,然后新建 project,选择你刚刚 fork 出来的项目重新进行部署即可;
  • 在重新部署的过程中,请手动添加名为 OPENAI_API_KEY 的环境变量,并填入你的 api key 作为值。

本项目会持续更新,当你 Fork 项目之后,默认会每天自动同步上游代码,无需额外操作。

如果你想让手动立即更新,可以查看 Github 的文档 了解如何让 fork 的项目与上游代码同步。

你可以 star/watch 本项目或者 follow 作者来及时获得新功能更新通知。

配置页面访问密码

配置密码后,用户需要在设置页手动填写访问码才可以正常聊天,否则会通过消息提示未授权状态。

警告:请务必将密码的位数设置得足够长,最好 7 位以上,否则会被爆破

本项目提供有限的权限控制功能,请在 Vercel 项目控制面板的环境变量页增加名为 CODE 的环境变量,值为用英文逗号分隔的自定义密码:

code1,code2,code3

增加或修改该环境变量后,请重新部署项目使改动生效。

环境变量

本项目大多数配置项都通过环境变量来设置。

OPENAI_API_KEY (必填项)

OpanAI 密钥,你在 openai 账户页面申请的 api key。

CODE (可选)

访问密码,可选,可以使用逗号隔开多个密码。

警告:如果不填写此项,则任何人都可以直接使用你部署后的网站,可能会导致你的 token 被急速消耗完毕,建议填写此选项。

BASE_URL (可选)

Default: api.openai.com

OpenAI 接口代理 URL,如果你手动配置了 openai 接口代理,请填写此选项。

PROTOCOL (可选)

Default: https

Values: http | https

OpenAI 代理接口协议,如果遇到 ssl 证书问题,请尝试通过此选项设置为 http。

开发

强烈不建议在本地进行开发或者部署,由于一些技术原因,很难在本地配置好 OpenAI API 代理,除非你能保证可以直连 OpenAI 服务器。

点击下方按钮,开始二次开发:

Open in Gitpod

在开始写代码之前,需要在项目根目录新建一个 .env.local 文件,里面填入环境变量:

OPENAI_API_KEY=<your api key here>

本地开发

  1. 安装 nodejs 和 yarn,具体细节请询问 ChatGPT;
  2. 执行 yarn install && yarn dev 即可。

部署

容器部署 (推荐)

注意:docker 版本在大多数时间都会落后最新的版本 1 到 2 天,所以部署后会持续出现“存在更新”的提示,属于正常现象。

docker pull yidadaa/chatgpt-next-web

docker run -d -p 3000:3000 \
   -e OPENAI_API_KEY="sk-xxxx" \
   -e CODE="页面访问密码" \
   yidadaa/chatgpt-next-web

你也可以指定 proxy:

docker run -d -p 3000:3000 \
   -e OPENAI_API_KEY="sk-xxxx" \
   -e CODE="页面访问密码" \
   -e PROXY_URL="http://localhost:7890" \
   yidadaa/chatgpt-next-web

本地部署

在控制台运行下方命令:

bash <(curl -s https://raw.githubusercontent.com/Yidadaa/ChatGPT-Next-Web/main/scripts/setup.sh)

鸣谢

捐赠者

仅列出了部分大额打赏,小额打赏(< 100RMB)人数太多,在此不再列出,敬请谅解。

@mushan0x0
@ClarenceDan
@zhangjia
@hoochanlon

贡献者

见项目贡献者列表

开源协议

反对 996,从我开始。

Anti 996 License

作者:Jeebiz  创建时间:2023-04-09 23:08
最后编辑:Jeebiz  更新时间:2023-12-28 16:43