1 Star 2 Fork 2

颛顼 / ChatGPT-Next-Web

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT
预览

NextChat

一键免费部署你的私人 ChatGPT 网页应用,支持 GPT3, GPT4 & Gemini Pro 模型。

演示 Demo / 反馈 Issues / 加入 Discord

Deploy with Vercel

Deploy on Zeabur

Open in Gitpod

主界面

开始使用

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

保持更新

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

  • 删除掉原先的仓库;
  • 使用页面右上角的 fork 按钮,fork 本项目;
  • 在 Vercel 重新选择并部署,请查看详细教程

打开自动更新

如果你遇到了 Upstream Sync 执行错误,请手动 Sync Fork 一次!

当你 fork 项目之后,由于 Github 的限制,需要手动去你 fork 后的项目的 Actions 页面启用 Workflows,并启用 Upstream Sync Action,启用之后即可开启每小时定时自动更新:

自动更新

启用自动更新

手动更新代码

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

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

配置页面访问密码

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

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

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

code1,code2,code3

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

环境变量

本项目大多数配置项都通过环境变量来设置,教程:如何修改 Vercel 环境变量

OPENAI_API_KEY (必填项)

OpanAI 密钥,你在 openai 账户页面申请的 api key,使用英文逗号隔开多个 key,这样可以随机轮询这些 key。

CODE (可选)

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

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

BASE_URL (可选)

Default: https://api.openai.com

Examples: http://your-openai-proxy.com

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

如果遇到 ssl 证书问题,请将 BASE_URL 的协议设置为 http。

OPENAI_ORG_ID (可选)

指定 OpenAI 中的组织 ID。

AZURE_URL (可选)

形如:https://{azure-resource-url}/openai/deployments/{deploy-name}

Azure 部署地址。

AZURE_API_KEY (可选)

Azure 密钥。

AZURE_API_VERSION (可选)

Azure Api 版本,你可以在这里找到:Azure 文档

GOOGLE_API_KEY (optional)

Google Gemini Pro 密钥.

GOOGLE_URL (optional)

Google Gemini Pro Api Url.

ANTHROPIC_API_KEY (optional)

anthropic claude Api Key.

ANTHROPIC_API_VERSION (optional)

anthropic claude Api version.

ANTHROPIC_URL (optional)

anthropic claude Api Url.

HIDE_USER_API_KEY (可选)

如果你不想让用户自行填入 API Key,将此环境变量设置为 1 即可。

DISABLE_GPT4 (可选)

如果你不想让用户使用 GPT-4,将此环境变量设置为 1 即可。

ENABLE_BALANCE_QUERY (可选)

如果你想启用余额查询功能,将此环境变量设置为 1 即可。

DISABLE_FAST_LINK (可选)

如果你想禁用从链接解析预制设置,将此环境变量设置为 1 即可。

WHITE_WEBDEV_ENDPOINTS (可选)

如果你想增加允许访问的webdav服务地址,可以使用该选项,格式要求:

  • 每一个地址必须是一个完整的 endpoint

https://xxxx/xxx

  • 多个地址以,相连

CUSTOM_MODELS (可选)

示例:+qwen-7b-chat,+glm-6b,-gpt-3.5-turbo,gpt-4-1106-preview=gpt-4-turbo 表示增加 qwen-7b-chatglm-6b 到模型列表,而从列表中删除 gpt-3.5-turbo,并将 gpt-4-1106-preview 模型名字展示为 gpt-4-turbo。 如果你想先禁用所有模型,再启用指定模型,可以使用 -all,+gpt-3.5-turbo,则表示仅启用 gpt-3.5-turbo

用来控制模型列表,使用 + 增加一个模型,使用 - 来隐藏一个模型,使用 模型名=展示名 来自定义模型的展示名,用英文逗号隔开。

开发

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

Open in Gitpod

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

OPENAI_API_KEY=<your api key here>

# 中国大陆用户,可以使用本项目自带的代理进行开发,你也可以自由选择其他代理地址
BASE_URL=https://b.nextweb.fun/api/proxy

本地开发

  1. 安装 nodejs 18 和 yarn,具体细节请询问 ChatGPT;
  2. 执行 yarn install && yarn dev 即可。⚠️ 注意:此命令仅用于本地开发,不要用于部署!
  3. 如果你想本地部署,请使用 yarn install && yarn build && yarn start 命令,你可以配合 pm2 来守护进程,防止被杀死,详情询问 ChatGPT。

部署

容器部署 (推荐)

Docker 版本需要在 20 及其以上,否则会提示找不到镜像。

⚠️ 注意: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=页面访问密码 \
   --net=host \
   -e PROXY_URL=http://127.0.0.1:7890 \
   yidadaa/chatgpt-next-web

如果你的本地代理需要账号密码,可以使用:

-e PROXY_URL="http://127.0.0.1:7890 user password"

如果你需要指定其他环境变量,请自行在上述命令中增加 -e 环境变量=环境变量值 来指定。

本地部署

在控制台运行下方命令:

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

⚠️ 注意:如果你安装过程中遇到了问题,请使用 docker 部署。

鸣谢

捐赠者

见英文版。

贡献者

见项目贡献者列表

相关项目

  • one-api: 一站式大模型额度管理平台,支持市面上所有主流大语言模型

开源协议

MIT

MIT License Copyright (c) 2023 Zhang Yifei Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

ChatGPT-Next-Web 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
TypeScript
1
https://gitee.com/whov/ChatGPT-Next-Web.git
git@gitee.com:whov/ChatGPT-Next-Web.git
whov
ChatGPT-Next-Web
ChatGPT-Next-Web
main

搜索帮助