Niek/chatgpt-web

ChatGPT web interface using the OpenAI API

ChatGPT‑web – 任意 OpenAI 兼容模型的轻量级自托管聊天 UI

是什么 – 一个单页 Web 应用,可让你直接通过浏览器与大语言模型聊天端点(OpenAI、Anthropic、Google Gemini、Mistral、xAI、OpenRouter 等)对话。你只需提供提供商名称和 API 密钥,应用会自动发现该端点支持的模型,然后即可开始对话。

为何重要 – 所有对话历史均存储在浏览器的本地存储中,不会发送到第三方服务器。UI 为开源(GPL-3.0),可部署在任何地方,也可使用 Tauri 打包为桌面应用,或通过 Docker 本地运行。它提供与商业网站相同的聊天体验,同时保护你的数据隐私,并允许你选择任意兼容的提供商。


核心功能(README 中描述)

  • 提供商无关 – 适用于任何遵循 OpenAI 聊天规范的 API。内置 OpenAI、Anthropic、xAI、Google Gemini、Mistral AI、APIpie、OpenRouter、OrcaRouter 的预设,以及通用的“自定义”模式。
  • 仅本地存储 – 对话保存在浏览器的本地存储中,无服务器端持久化。
  • 可自定义模型设置 – 可为每个对话调整温度、系统提示等参数。
  • 语音 I/O – 支持语音转文本输入和文本转语音输出。
  • 提示库 – 内置来自 awesome-chatgpt-prompts 收集的 100 个热门提示。
  • 导出 – 对话可保存为 Markdown 文件,用于分享或归档。
  • 代码处理 – 自动检测代码块,应用语法高亮,并添加一键复制按钮。
  • 图像生成 – 若所选提供商提供图像端点,可输入“show me an image of …”请求生成图片。UI 会自动选择提供商特定的图像模型(如 OpenAI 的 gpt-image-2)。
  • 流式响应 – 模型输出随到达实时显示,模拟 ChatGPT 的实时感。
  • 移动端友好 – 响应式布局,可在手机和平板上正常工作。
  • 桌面应用构建 – 使用 Tauri(基于 Rust),可将 Web 应用打包为 Windows/macOS/Linux 的原生桌面应用。
  • Docker 支持 – 提供 docker compose 文件,可同时启动 UI 和模拟 API,用于测试或离线演示。

典型工作流程

  1. https://niek.github.io/chatgpt-web/ 打开托管页面(或你自己的部署)。
  2. 在设置页面选择提供商,粘贴 API 密钥,让应用列出可用模型。
  3. 开始新对话,可选择预加载提示或编写自己的系统提示。
  4. 输入或语音发送消息;应用将消息转发至所选端点并流式接收回复。
  5. 对话本地持久化;可随时导出或清除存储。

快速上手(开发者导向)

  • 本地运行
    npm ci          # 安装精确依赖
    npm run dev     # 启动 Vite 开发服务器(http://localhost:5173)
    
  • 生产构建
    npm run build   # 生成静态 `dist/` 文件夹,可部署到任意静态主机
    
  • 更新内置提示列表
    npm run update-prompts   # 从公共 API 获取最新 100 个高票提示
    
  • Dockerdocker compose up -d 启动 UI 和模拟 API。在 .env 中设置 VITE_PROVIDER=customVITE_API_BASE=http://localhost:5174,将 UI 指向模拟服务。
  • 桌面应用 – 安装 Rust 后,运行 npm run tauri dev 启动开发窗口,或 npm run tauri buildsrc-tauri/target 生成二进制文件。

适合谁使用

  • 注重隐私的用户 – 希望使用聊天 UI 但不将对话日志发送给第三方网站的人。
  • 开发者 – 测试多个 LLM 提供商或并排比较模型行为的人。
  • 教育者 / 培训师 – 需要简单、自托管界面用于课堂演示的人。
  • 开源爱好者 – 希望 Fork、扩展或嵌入该 UI 到自己项目中的人。

许可与社区

  • 许可证:GPL-3.0(完整源码开放,可自由托管、修改、再分发)。
  • 贡献者:项目遵循 all-contributors 模型;数十人贡献了代码、想法、设计和文档。
  • 问题追踪与 PR:在 GitHub 上开放;README 提供了添加新提示、自定义模拟 API 和构建桌面版本的指南。

总结

ChatGPT‑web 是任意 OpenAI 兼容聊天服务的实用、隐私优先的前端。它集成了语音、图像生成、提示库、导出等实用功能,同时保持轻量,可在浏览器中运行或作为微型桌面应用使用。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目