Skip to content

Latest commit

 

History

History
95 lines (66 loc) · 3.54 KB

File metadata and controls

95 lines (66 loc) · 3.54 KB

ChatGPT Minimal

English | 简体中文

ChatGPT Minimal 以最小代码量实现了 ChatGPT 核心功能。基于 Next.js,代码清晰,易于扩展。

演示

访问 ChatGPT Minimal 演示网站

ChatGPT Minimal 浅色主题 ChatGPT Minimal 深色主题

功能介绍

本项目包含:

  • 实时流式聊天(Server-Sent Events)
  • 文本 + 图片聊天(支持图片上传与粘贴)
  • 联网搜索(模型支持时可显示来源引用)
  • Markdown 渲染(含代码高亮)
  • 支持 OpenAI、Azure OpenAI 及 OpenAI 兼容 API 提供商
  • 深色/浅色主题切换

如果你需要一个功能更完整的版本,可以看看 ChatGPT Lite,它在本项目的代码基础上额外实现了:

  • 角色系统与自定义系统提示词
  • 多会话管理
  • 文件附件(PDF、XLSX/CSV、文本文件)
  • 语音输入
  • 40+ UI 主题可选

部署

部署所需的环境变量请参考环境变量章节。

部署到 Vercel

使用 Vercel 部署

使用 Docker 部署

OpenAI 账户:

docker run -d -p 3000:3000 \
  -e OPENAI_API_KEY="<你的_OPENAI_API_KEY>" \
  -e OPENAI_MODEL="gpt-4o-mini" \
  blrchen/chatgpt-minimal

Azure OpenAI 账户:

docker run -d -p 3000:3000 \
  -e AZURE_OPENAI_RESOURCE_NAME="<你的_AZURE_RESOURCE_NAME>" \
  -e AZURE_OPENAI_API_KEY="<你的_AZURE_OPENAI_API_KEY>" \
  -e AZURE_OPENAI_DEPLOYMENT="<你的_AZURE_DEPLOYMENT_NAME>" \
  blrchen/chatgpt-minimal

本地开发

本地运行

  1. 安装 Node.js 22+。
  2. 克隆本仓库。
  3. 运行 npm install 安装依赖。
  4. .env.example 复制为 .env.local 并填写环境变量。
  5. 运行 npm run dev 启动应用。
  6. 打开 http://localhost:3000

环境变量

OpenAI

名称 必填 说明 默认值
OPENAI_API_KEY OpenAI Platform 获取的 API Key。 -
OPENAI_API_BASE_URL OpenAI 兼容 API 的 Base URL。若未以 /v1 结尾,会自动补上。 https://api.openai.com
OPENAI_MODEL OpenAI 使用的模型名称。 gpt-4o-mini

Azure OpenAI

名称 必填 说明
AZURE_OPENAI_RESOURCE_NAME Azure OpenAI 资源名称(例如 my-openai-resource)。
AZURE_OPENAI_API_KEY Azure OpenAI API Key。
AZURE_OPENAI_DEPLOYMENT Azure OpenAI 部署名称(不是模型名)。

贡献

欢迎提交各种规模的 PR。