1 Star 0 Fork 0

bear / chatgpt-demo

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

ChatGPT-API Demo

English | 简体中文

一个基于 OpenAI GPT-3.5 Turbo API 的 demo。

🍿 在线预览: https://chatgpt.ddiu.me

🏖️ V2 版本 (Beta): https://v2.chatgpt.ddiu.me

⚠️ 注意:我们的 API 密钥限制已用尽。所以演示站点现在不可用。

chat-logo

本地运行

前置环境

  1. Node: 检查您的开发环境和部署环境是否都使用 Node v18 或更高版本。你可以使用 nvm 管理本地多个 node 版本。
     node -v
  2. PNPM: 我们推荐使用 pnpm 来管理依赖,如果你从来没有安装过 pnpm,可以使用下面的命令安装:
     npm i -g pnpm
  3. OPENAI_API_KEY: 在运行此应用程序之前,您需要从 OpenAI 获取 API 密钥。您可以在 https://beta.openai.com/signup 注册 API 密钥。

起步运行

  1. 安装依赖
     pnpm install
  2. 复制 .env.example 文件,重命名为 .env,并添加你的 OpenAI API key.env 文件中
     OPENAI_API_KEY=sk-xxx...
  3. 运行应用,本地项目运行在 http://localhost:3000/
     pnpm run dev

部署

部署在 Vercel

Deploy with Vercel

🔒 需要站点密码?

携带SITE_PASSWORD进行部署

Deploy with Vercel

image

部署在 Netlify

Deploy with Netlify

分步部署教程:

  1. Fork 此项目,前往 https://app.netlify.com/start 新建站点,选择你 fork 完成的项目,将其与 GitHub 帐户连接。

image

image

  1. 选择要部署的分支,选择 main 分支,在项目设置中配置环境变量,环境变量配置参考下文。

image

  1. 选择默认的构建命令和输出目录,单击 Deploy Site 按钮开始部署站点。

image

部署在 Docker

部署之前请确认 .env 文件正常配置,环境变量参考下方文档,Docker Hub address.

一键运行

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
# start
docker compose up -d
# down
docker-compose down

Sealos 部署

1.注册 Sealos 免费账号 sealos cloud

2.点击 App Launchpad 按钮

App Launchpad

3.点击 Create Application 按钮

Create Application

4.按照下图填写后,点击 Deploy Application 按钮

Create 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

5.获取访问链接。如果你需要自定义域名,可以点击 Custom domain 按钮后按照提示解析域名 CNAME

Create Application

6.等待 1-2 分钟后点击链接,即可进去页面

Open Link

部署在更多的服务器

请参考官方部署文档:https://docs.astro.build/en/guides/deploy

环境变量

配置本地或者部署的环境变量

名称 描述 默认
OPENAI_API_KEY 你的 OpenAI API Key null
HTTPS_PROXY 为 OpenAI API 提供代理。e.g. http://127.0.0.1:7890 null
OPENAI_API_BASE_URL 请求 OpenAI API 的自定义 Base URL. https://api.openai.com
HEAD_SCRIPTS 在页面的 </head> 之前注入分析或其他脚本 null
PUBLIC_SECRET_KEY 项目的秘密字符串。用于生成 API 调用的签名 null
SITE_PASSWORD 为网站设置密码,支持使用英文逗号创建多个密码。如果未设置,则该网站将是公开的 null
OPENAI_API_MODEL 使用的 OpenAI 模型。模型列表 gpt-3.5-turbo

开启同步更新

Fork 项目后,您需要在 Fork 项目的操作页面上手动启用工作流和上游同步操作。启用后,每天都会执行自动更新:

常见问题

Q: TypeError: fetch failed (can't connect to OpenAI Api)

A: 配置环境变量 HTTPS_PROXY,参考:https://github.com/ddiu8081/chatgpt-demo/issues/34

Q: throw new TypeError(${context} is not a ReadableStream.)

A: Node 版本需要在 v18 或者更高,参考:https://github.com/ddiu8081/chatgpt-demo/issues/65

Q: Accelerate domestic access without the need for proxy deployment tutorial?

A: 你可以参考此教程:https://github.com/ddiu8081/chatgpt-demo/discussions/270

参与贡献

这个项目的存在要感谢所有做出贡献的人。

感谢我们所有的支持者!🙏

img

License

MIT © ddiu8081

MIT License Copyright (c) 2023 Diu 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.

简介

暂无描述 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/bear-vic/chatgpt-demo.git
git@gitee.com:bear-vic/chatgpt-demo.git
bear-vic
chatgpt-demo
chatgpt-demo
main

搜索帮助

53164aa7 5694891 3bd8fe86 5694891