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,適合測試或離線示範。
常見工作流程
- 在
https://niek.github.io/chatgpt-web/開啟主機頁面(或你自己的部署)。 - 在設定畫面中選擇提供者,貼上 API 金鑰,讓應用列出可用模型。
- 開始新對話,可選擇預載提示或撰寫自己的系統提示。
- 輸入或語音輸入訊息;應用將訊息轉送至所選端點並串流接收回應。
- 對話本機持久化;可隨時匯出或清除儲存空間。
快速上手(開發者導向)
- 本機執行
npm ci # 安裝精確的相依套件 npm run dev # 啟動 Vite 開發伺服器(http://localhost:5173) - 生產建置
npm run build # 產生靜態 `dist/` 資料夾,可部署至任何靜態主機 - 更新內建提示清單
npm run update-prompts # 從公開 API 取得最新 100 個高票提示 - Docker –
docker compose up -d啟動 UI 和模擬 API。在.env中設定VITE_PROVIDER=custom和VITE_API_BASE=http://localhost:5174,將 UI 指向模擬服務。 - 桌面應用 – 安裝 Rust 後,執行
npm run tauri dev啟動開發視窗,或npm run tauri build在src-tauri/target產生二進位檔。
適合誰使用
- 重視隱私的使用者 – 希望使用聊天 UI 但不將對話日誌傳送給第三方網站的人。
- 開發者 – 測試多個 LLM 提供者或並排比較模型行為的人。
- 教育者 / 培訓師 – 需要簡單、自托管介面用於課堂示範的人。
- 開源愛好者 – 希望 Fork、擴充或嵌入該 UI 到自己專案中的人。
授權與社群
- 授權:GPL-3.0(完整原始碼公開,可自由主機、修改、再分發)。
- 貢獻者:專案遵循 all-contributors 模型;數十人貢獻了程式碼、想法、設計與文件。
- 問題追蹤與 PR:在 GitHub 上開放;README 提供了新增提示、自訂模擬 API 和建置桌面版本的指南。
總結
ChatGPT‑web 是任意 OpenAI 相容聊天服務的實用、隱私優先的前端。它整合了語音、影像生成、提示程式庫、匯出等實用功能,同時保持輕量,可在瀏覽器中執行或作為微型桌面應用使用。
相關
- 專案
- 專案
- 專案
- 專案
- 專案