LibreChat 完整教學 2026:4.5 萬星自架 AI 聊天平台,整合 OpenAI/Claude/Gemini/Ollama,Agent+MCP+RAG+多用戶權限一次學會

LibreChat 是 4.5 萬顆星的開源自架 AI 聊天平台,把 OpenAI、Anthropic、Google、OpenRouter 與本機 Ollama 收進同一個介面,內建 Agents、MCP、Skills、Code Interpreter、RAG 與多用戶權限。本文從 Docker Compose 安裝、.env 關鍵變數、librechat.yaml 自訂端點到常見陷阱完整實作。

  • Dennis
  • 8 分鐘閱讀
LibreChat 完整教學 2026:4.5 萬星自架 AI 聊天平台,整合 OpenAI/Claude/Gemini/Ollama,Agent+MCP+RAG+多用戶權限一次學會

一句話結論

LibreChat 是一套 MIT 授權、4.5 萬顆星的自架 AI 聊天平台,用 Docker Compose 三行指令就能裝好,把 OpenAI、Anthropic、Google、OpenRouter 和本機 Ollama 收進同一個介面,還附帶 Agents、MCP、Skills、Code Interpreter、RAG 與多用戶權限——資料留在我自己的機器上,但介面體驗不輸 ChatGPT。


為什麼要自架聊天平台,而不直接用 ChatGPT?

直接訂閱 ChatGPT 是最省事的選擇,但以下情境它幫不上忙:

  • 想把同一段對話換四家模型比一比——官方 App 一次只能一家,貼來貼去。
  • 想在內網跑本機模型(Ollama、vLLM)處理敏感資料,卻又想要好用的網頁介面與對話紀錄。
  • 想給團隊一個共用入口,每個人有自己的帳號、可以分享 Agent 跟 Prompt,但 API 金鑰由管理員統一管。
  • 想把 MCP 工具、RAG 知識庫、程式碼執行接進聊天,而不是每個人都自己裝一遍。

LibreChat 就是補這塊:它是「前端+後端+資料庫」的完整平台,不是一個模型、也不是一個純前端殼。


LibreChat 現況(2026 年 10 月)

項目數據
GitHub Stars約 45,300
Forks約 9,300
授權MIT
主要語言TypeScript
建立時間2023 年 2 月
最新版本v0.8.8(2026-10-01 發布)
官方文件docs.librechat.ai

v0.8.8 這版的更新重點包括:Agent Management API(beta)(用 OIDC 身分程式化管理 Agent/檔案/Skill)、Attached Code Workspaces(高度實驗性)、Background tool 控制與 Code approval 控制(Ask/Allow/Deny/Full access)、手動 context 壓縮、Context Usage 用量面板、統一附件處理、新增 GPT-6 Astra 與 GPT-6.1 Sol、Trace Viewer 觀測與 OpenTelemetry 匯出。


跟 Open WebUI 差在哪?該選誰

兩套都是自架聊天介面,但定位其實不同(本部落格另有 Open WebUI 介紹):

面向LibreChatOpen WebUI
定位多供應商「AI 平台」,偏企業/團隊以本機 Ollama 為核心的聊天介面
模型來源OpenAI、Anthropic、Google、AWS Bedrock、Azure、OpenRouter、自訂端點、Ollama以 Ollama/OpenAI 相容端點為主
Agent 與工具內建 Agents、Agent Marketplace、Skills、Subagents、MCP、Actions有工具與 Pipelines,Agent 生態較集中在本機
多用戶完整(OAuth2/LDAP/Email、角色與群組權限、Admin Panel)支援但較輕量
RAG內建 RAG API(pgvector)+ File Search內建文件上傳與向量檢索
前端體驗接近 ChatGPT,含 Artifacts、Code Interpreter、對話分支介面清爽,社群外掛多

一句話挑選法:主要是「自己一個人接本機模型、想最快跑起來」→ Open WebUI 更輕;要「多家 API 統一管理、給團隊用、要權限與審計」→ LibreChat 更完整。兩套不衝突,很多人的伺服器上是兩個都跑。


安裝:Docker Compose 三步驟

前置需求:Docker 與 Docker Compose(建議 Docker Engine 24+ 或 Docker Desktop),Linux/macOS 皆可,Windows 用 WSL2。

# 1. 取得原始碼
git clone https://github.com/danny-avila/LibreChat.git
cd LibreChat

# 2. 建立環境檔(預設值即可開跑)
cp .env.example .env
#    Windows: copy .env.example .env

# 3. 啟動
docker compose up -d

第一次啟動會拉映像檔,需要幾分鐘;之後快很多。完成後打開瀏覽器:

http://localhost:3080

第一個註冊的帳號就是管理員(單租戶模式),所以務必先把服務放在安全的網路環境、或直接設定好反向代理與登入限制再開放。

它幫你起了哪些容器?

LibreChat 的 docker-compose.yml 是個小型全家桶,不是只有一個服務:

容器映像角色
api(LibreChat)registry.librechat.ai/librechat-ai/librechat-dev:latest主程式,對外連 3080
admin-panelclickhouse/librechat-admin-panel:latest管理介面(預設 3000)
mongodbmongo:8.0.20對話與使用者資料
meilisearchgetmeili/meilisearch:v1.35.1全文搜尋(需另開 SEARCH=true)
vectordbpgvector/pgvector:0.8.0-pg15-trixieRAG 向量庫
rag_apilibrechat-rag-api-dev-lite:latestRAG 服務

也就是說,你得到的不只是聊天介面,還有一整套搜尋、向量與後台。

更新方式

git pull
docker compose pull
docker compose up -d

⚠️ 更新前務必先看官方 changelog 的 breaking changes,LibreChat 版號推進時偶爾會動到環境變數或設定格式。


.env 必改的幾個關鍵變數

.env.example 有數百行,但真正上線前一定要處理的是這幾個:

變數預設說明
HOST / PORTlocalhost / 3080對外位址與埠
DOMAIN_CLIENT / DOMAIN_SERVERhttp://localhost:3080走網域或反向代理時必改,否則登入與分享連結會壞
CREDS_KEY / CREDS_IV空加密使用者 API 金鑰用,正式環境必須設固定值,否則重啟後使用者存的憑證會解不開
JWT_SECRET / JWT_REFRESH_SECRET空登入權杖簽章;不設會用 .env.temp 的臨時值,重啟即登出
SEARCH + MEILI_MASTER_KEYfalse兩者要同時設定,站內全文搜尋才會開
ALLOW_REGISTRATIONtrue對外開放前建議關掉或改走邀請
ALLOW_EMAIL_LOGIN / ALLOW_SOCIAL_LOGINtrue / false決定登入方式
OPENAI_API_KEYuser_provided留給使用者自帶;管理員要統一供給就填這裡
ANTHROPIC_API_KEY / GOOGLE_KEYuser_provided同上,對應 Claude 與 Gemini

觀念:user_provided 的意思是「讓每個使用者自己填金鑰」,金鑰會被 CREDS_KEY 加密後存進資料庫。想統一代管,就在 .env 直接填入伺服器端金鑰。

設定完都要重啟:

docker compose down && docker compose up -d

接上本機 Ollama 與自訂端點(librechat.yaml)

LibreChat 支援的供應商已經很多,但真正的彈性在 librechat.yaml——任何 OpenAI 相容 API 都能掛進來,包含自架 Ollama、vLLM、LM Studio 或公司內部的 LLM Gateway。

步驟 1:建立設定檔

cp librechat.example.yaml librechat.yaml

設定檔開頭會看到 version: 1.3.17,這個版本號要跟著官方文件更新。

步驟 2:在 docker-compose.override.yml 打開掛載

官方建議不要直接改 docker-compose.yml,而是用 override:

services:
  api:
    volumes:
      - type: bind
        source: ./librechat.yaml
        target: /app/librechat.yaml

步驟 3:加入 Ollama 端點

version: 1.3.17
cache: true

endpoints:
  custom:
    - name: "ollama"
      apiKey: "ollama"           # Ollama 不驗金鑰,填任意值
      baseURL: "http://host.docker.internal:11434/v1/"
      models:
        default: ["qwen3:8b", "llama3.2"]
        fetch: true               # 自動抓取本機已下載的模型
      titleConvo: true
      titleModel: "qwen3:8b"
      modelDisplayLabel: "本機 Ollama"

host.docker.internal 在容器內指向宿主機;Linux 上 compose 檔已加 extra_hosts: host.docker.internal:host-gateway,所以這個寫法可用。

🚨 陷阱:SSRF 保護會擋掉內網位址

LibreChat 對 Actions 與 MCP 有 SSRF 防護,預設會擋私有網段。如果你要接自架 Ollama 或內部 LLM gateway,必須在白名單列出 host:port:

endpoints:
  allowedAddresses:
    - 'host.docker.internal:11434'
    - 'localhost:11434'
    - '192.168.1.50:8080'

規則要注意:必須帶 port、不能用 URL 或 CIDR,而且列入的主機名稱會信任它解析到的 IP。這是很多人「設定看起來沒錯、但一直連不上」的真正原因。


功能實戰:這五件事最值得先玩

1. Agents:無程式碼自建助手

內建 Agent 建構器,選模型、掛工具、指定系統指令就能做出專用助手,還有 Agent Marketplace 可以部署社群做好的。Agent 可分享給特定使用者或群組。

2. MCP:把外部工具接進來

LibreChat 是官方 MCP 客戶端之一,在 Agent 裡掛上 MCP Server 就能呼叫外部工具。若還沒接觸過協定本身,建議先看本站的 MCP 完整教學。

3. Skills 與 Subagents

用 SKILL.md 打包可重複使用的指令集(可設手動觸發、自動觸發或常駐);Subagents 則允許把子任務丟給獨立的子 Agent 執行,各自有獨立 context window——長任務不容易把主對話塞爆。

4. Code Interpreter 與 Artifacts

Code Interpreter 由 ClickHouse/code-interpreter 提供,沙盒支援 Python、Node.js(JS/TS)、Go、C/C++、Java、PHP、Rust 甚至 Fortran,可直接上傳/下載檔案。Artifacts 則能直接生成 React、HTML 與 Mermaid 內容並即時預覽。

順帶一提:本站會特別提醒 Mermaid 的渲染競態問題——在 LibreChat 的 Artifacts 裡 Mermaid 是獨立渲染的,不受影響;但如果是自己寫的網站要放圖,還是以 Markdown 表格代替流程圖最穩。

5. 多用戶權限與 Admin Panel

支援 Email、OAuth2、LDAP 登入,可用角色與群組切權限;Admin Panel 隨 Docker Compose 一起裝好(預設 3000 埠),可以在瀏覽器裡管理使用者、群組並即時改設定,不用重新部署。生產環境記得設定 ADMIN_PANEL_SESSION_SECRET。


常見陷阱清單

症狀原因與解法
3080 埠被佔用bind: address already in use;改 port 或在 docker-compose.override.yml 換埠
重啟後要重新登入、使用者金鑰失效沒設 JWT_SECRET、JWT_REFRESH_SECRET、CREDS_KEY,用了 .env.temp 臨時值
搜尋功能沒反應SEARCH=true 與 MEILI_MASTER_KEY 必須同時設定
接不上自架 Ollama被 SSRF 白名單擋住,要在 endpoints.allowedAddresses 列 host:port
分享連結與登入導向錯誤DOMAIN_CLIENT / DOMAIN_SERVER 沒改成實際網域
想從外網安全存取別直接開 3080;走反向代理,或參考本站 Cloudflare Tunnel 完整教學 不開防火牆埠就能上線
更新後壞掉先讀 changelog 的 breaking changes,再 git pull && docker compose pull

什麼時候不該用 LibreChat?

  • 只想單機接 Ollama 聊天:Open WebUI 的安裝與資源佔用更輕。
  • 要的是完整 SaaS 功能與原生手機 App:官方 ChatGPT/Claude 體驗仍更順。
  • 完全不想維運資料庫:LibreChat 需要 MongoDB、Meilisearch 與 Postgres,長期要處理備份與升級。

反過來說,只要你有「多家模型 + 團隊共用 + 資料自持」這三個需求同時出現,LibreChat 就是目前開源圈最省事的答案之一。


延伸閱讀

原始來源

📬 訂閱 most.tw 電子報

每週精選 AI 工具教學與技術乾貨,直接送到你的信箱。免費、隨時可退訂。

訂閱即表示同意收到 most.tw 電子報,隨時可一鍵退訂。

💬 有問題想討論?加 LINE 聯絡我

歡迎透過 LINE 官方帳號直接留言,我會盡快回覆你的問題。

加入 LINE 好友