Minimal web UI for ChatGPT.
chatgpt-demo基本信息
chatgpt-demo介绍
ChatGPT-API 演示
ChatGPT-API 演示是基于 OpenAI GPT-3.5 Turbo API 的一个演示项目。
项目介绍如下:
- 🍿 实时预览:https://chatgpt.ddiu.me
⚠️ 注意:我们的 API Key 配额已经用完,因此演示站点目前不可用。
介绍 Anse
寻找多人聊天、图像生成等更强大的功能?请看我们新推出的 Anse。
更多信息请参阅 https://github.com/ddiu8081/chatgpt-demo/discussions/247。
本地运行
预先环境
- Node:检查开发环境和部署环境是否都使用了
Node v18
或更高版本。您可以使用 nvm 在本地管理多个node
版本。node -v
- PNPM:我们建议使用 pnpm 来管理依赖项。如果您从未安装过 pnpm,可以使用以下命令安装:
npm i -g pnpm
- OPENAI_API_KEY:在运行此应用程序之前,您需要从 OpenAI 获取 API 密钥。您可以在 https://beta.openai.com/signup 注册 API 密钥。
入门指南
- 安装依赖项
pnpm install
- 复制
.env.example
文件,然后将其重命名为.env
,并在.env
文件中添加您的 OpenAI API 密钥。OPENAI_API_KEY=sk-xxx...
- 运行应用程序,本地项目运行在
http://localhost:3000/
pnpm run dev
部署
使用 Vercel 部署
🔒 需要网站密码?
使用
SITE_PASSWORD
部署
使用 Netlify 部署
逐步部署教程:
-
Fork 该项目,转到 https://app.netlify.com/start 创建新站点,选择您完成的
fork
项目,并将其与您的GitHub
帐户连接起来。 -
选择要部署的分支,然后在项目设置中配置环境变量。
-
选择默认的构建命令和输出目录,点击
Deploy Site
按钮开始部署站点。
使用 Docker 部署
环境变量请参考下面的文档。Docker Hub 地址。
直接运行
docker run --name=chatgpt-demo -e OPENAI_API_KEY=YOUR_OPEN_API_KEY -p 3000:3000 -d ddiu8081/chatgpt-demo:latest
-e
在容器中定义环境变量。
Docker Compose
version: '3'
services:
chatgpt-demo:
image: ddiu8081/chatgpt-demo:latest
container_name: chatgpt-demo
restart: always
ports:
- '3000:3000'
environment:
- OPENAI_API_KEY=YOUR_OPEN_API_KEY
# - HTTPS_PROXY=YOUR_HTTPS_PROXY
# - OPENAI_API_BASE_URL=YOUR_OPENAI_API_BASE_URL
# - HEAD_SCRIPTS=YOUR_HEAD_SCRIPTS
# - PUBLIC_SECRET_KEY=YOUR_SECRET_KEY
# - SITE_PASSWORD=YOUR_SITE_PASSWORD
# - OPENAI_API_MODEL=YOUR_OPENAI_API_MODEL
# 启动
docker compose up -d
# 关闭
docker-compose down
使用 Sealos 部署
-
为免费注册一个 Sealos 帐户 sealos cloud
-
点击
App Launchpad
按钮 -
点击
Create Application
按钮 -
根据下图填写,填写完后点击
Deploy Application
按钮
App Name: chatgpt-demo
Image Name: ddiu8081/chatgpt-demo:latest
CPU: 0.5Core
Memory: 1G
Container Ports: 3000
Accessible to the Public: On
Environment: OPENAI_API_KEY=YOUR_OPEN_API_KEY
-
获取访问链接,直接点击访问即可。如果需要绑定自己的域名,也可以在
Custom domain
中填写自己的域名,并按照提示配置域名的 CNAME。 -
等待一到两分钟,打开这个链接即可访问。
在更多服务器上部署
请参考官方部署文档:https://docs.astro.build/en/guides/deploy
环境变量
您可以通过环境变量来控制网站的行为。
名称 | 描述 | 默认值 |
---|---|---|
OPENAI_API_KEY | 您的 OpenAI API 密钥。 | null |
HTTPS_PROXY | 为 OpenAI API 提供代理。例如:http://127.0.0.1:7890 | null |
OPENAI_API_BASE_URL | OpenAI API 的自定义基础 URL。 | https://api.openai.com |
HEAD_SCRIPTS | 在页面的 </head> 标签之前注入分析或其他脚本。 | null |
PUBLIC_SECRET_KEY | 项目的密钥字符串。用于为 API 调用生成签名。 | null |
SITE_PASSWORD | 为站点设置密码,支持使用逗号分隔的多个密码。如果未设置,则网站将为公开状态。 | null |
OPENAI_API_MODEL | 要使用的模型的 ID。模型列表 | gpt-3.5-turbo |
启用自动更新
在 fork 该项目之后,您需要在 fork 的项目的 Actions 页面上手动启用 Workflows 和 Upstream Sync Action。一旦启用,将会每天自动更新:
常见问题
问:TypeError: fetch failed (can't connect to OpenAI Api)
答:配置环境变量 HTTPS_PROXY
,参考:https://github.com/ddiu8081/chatgpt-demo/issues/34
问:throw new TypeError(${context} is not a ReadableStream.)
答:Node 版本需要为 v18
或更高版本,参考:https://github.com/ddiu8081/chatgpt-demo/issues/65
问:如何加速国内访问,无需代理部署教程?
答:您可以参考这个教程:https://github.com/ddiu8081/chatgpt-demo/discussions/270
贡献
感谢所有为该项目做出贡献的人。
感谢所有支持我们的人!🙏
许可证
MIT © ddiu8081