本项目基于 ChatGPT-Next-Web 基础上开发,感谢大佬开源
在原项目基础上,对请求openai接口的部分进行封装
- 部署成功后,无需魔法调用openai接口(应用场景:微信机器人,无代理环境应用)
- 加密参数 CODE
- 自定义 OPENAI_API_KEY
- 准备好你的 OpenAI API Key;
- 点击右侧按钮开始部署:
,直接使用 Github 账号登录即可,记得在环境变量页填入 API Key 和页面访问密码 CODE;
- 部署完毕后,即可开始使用;
- (可选)绑定自定义域名:Vercel 分配的域名 DNS 在某些区域被污染了,绑定自定义域名即可直连。
- 测试:POST请求 https://自定义域名/api/openai/v1/chat/completions?code=xxx&token=xxx,
配置密码后,用户需要在设置页手动填写访问码才可以正常聊天,否则会通过消息提示未授权状态。
警告:请务必将密码的位数设置得足够长,最好使用 32位 字符串以上,否则会被爆破。
本项目提供有限的api权限控制功能,请在 Vercel 项目控制面板的环境变量页增加名为 CODE
的环境变量,值为自定义密码:
code
如果配置了CODE,请求api接口时需在链接带上code=你配置的code
增加或修改该环境变量后,请重新部署项目使改动生效。
本项目大多数配置项都通过环境变量来设置,教程:如何修改 Vercel 环境变量。
OpanAI 密钥,你在 openai 账户页面申请的 api key。
如果不填写此项,则必须在请求时拼上 token=你申请的api key。
访问密码,可选,如果配置了CODE,请求api接口时需在链接带上 code=你配置的code 。
警告:如果不填写此项,则任何人都可以直接使用你部署后的api,可能会导致你的 token 被急速消耗完毕,建议填写此选项。
Default:
https://api.openai.com
Examples:
http://your-openai-proxy.com
OpenAI 接口代理 URL,如果你手动配置了 openai 接口代理,请填写此选项。
如果遇到 ssl 证书问题,请将
BASE_URL
的协议设置为 http。
指定 OpenAI 中的组织 ID。
如果你不想让用户自行填入 API Key,将此环境变量设置为 1 即可。
如果你不想让用户使用 GPT-4,将此环境变量设置为 1 即可。
强烈不建议在本地进行开发或者部署,由于一些技术原因,很难在本地配置好 OpenAI API 代理,除非你能保证可以直连 OpenAI 服务器。
点击下方按钮,开始二次开发:
在开始写代码之前,需要在项目根目录新建一个 .env.local
文件,里面填入环境变量:
OPENAI_API_KEY=<your api key here>
- 安装 nodejs 18 和 yarn,具体细节请询问 ChatGPT;
- 执行
yarn install && yarn dev
即可。⚠️ 注意:此命令仅用于本地开发,不要用于部署! - 如果你想本地部署,请使用
yarn install && 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 环境变量=环境变量值
来指定。
在控制台运行下方命令:
bash <(curl -s https://raw.githubusercontent.com/Yidadaa/ChatGPT-Next-Web/main/scripts/setup.sh)