
LibreChat:打造企業級本地 AI 對話平台的完整指南
深度介紹 LibreChat 這套開源 AI 對話平台的核心架構與功能。從 Agent 建構器、RAG 知識庫,到 Skill、Prompt、Memory、MCP 工具串接,完整解析如何在本地端打造一個企業可用的多模型 AI 對話系統。
如果說 RAGFlow 是一個專注於知識庫檢索的 AI 基礎設施,那 LibreChat 要解決的問題則更根本:如何讓企業員工用一個統一的介面,自由使用任何 AI 模型,同時把企業的知識、工具、流程全部整合進去?
LibreChat 的定位是一個多模型 AI 對話平台,它不綁定任何單一 LLM,Claude、GPT-4o、Gemini、本地 Ollama 模型全部可以在同一個介面切換使用。更重要的是,它內建了完整的 Agent 系統、RAG 知識庫、工具串接框架,讓一般員工不需要懂提示工程,就能使用經過設計的 AI 助手。
技術棧
| 層次 | 技術 | 版本 | 用途 |
|---|---|---|---|
| 應用程式 | LibreChat | v0.8.7 | 主平台 |
| 後端語言 | Node.js | - | API 伺服器 |
| 對話資料庫 | MongoDB | 8.0.20 | 對話紀錄、用戶資料、Agent 設定 |
| 全文搜尋 | Meilisearch | v1.35.1 | 對話歷史搜尋 |
| 向量資料庫 | PostgreSQL + pgvector | pg15 | RAG 文件向量儲存 |
| RAG 服務 | LibreChat RAG API | 內建 | 文件嵌入與語意搜尋 |
| Embedding 模型 | text-embedding-3-small (OpenAI) | 外部 API | 文件向量化 |
| LLM | Claude / GPT / Gemini / Ollama | 外部 / 本地 | 對話推理 |
| 工具串接 | MCP (Model Context Protocol) | - | 外部系統整合 |
| 容器化 | Docker Compose | - | 一鍵部署 |
LibreChat 是什麼?
LibreChat 是一套開源的 ChatGPT 替代方案,目前在 GitHub 上已累積超過 39,800 顆星。它的核心定位不是一個 LLM,而是一個讓多種 LLM 可以統一管理與使用的平台。
整個系統透過 Docker Compose 一鍵啟動,對使用者完全透明。底層的 MongoDB 對話儲存、Meilisearch 全文搜尋、pgvector 向量資料庫全部自動運作,你只需要管好「設計什麼 Agent」和「上傳什麼知識」。
核心架構
LibreChat 的內部架構可以分為五個層次:
七大功能模組
1. Agent 建構器
Agent 建構器是 LibreChat 的核心,讓你把 AI 助手「設計化」,而不是每次都從空白對話開始。

每個 Agent 可以獨立設定:
| 設定項目 | 說明 |
|---|---|
| 模型 | 選擇 Claude、GPT-4o、Gemini 或本地 Ollama |
| 系統指令 | 定義 Agent 的角色與回答風格 |
| 工具 | File Search、網路搜尋、MCP 工具 |
| Skills | 掛載可重複使用的行為模組 |
這讓企業可以針對不同部門建立專屬助手:採購助手只能查採購知識庫、HR 助手只能處理人資相關問題,互不干擾。
2. 對話紀錄與書籤
LibreChat 的對話紀錄會自動儲存在 MongoDB,並透過 Meilisearch 建立全文搜尋索引,讓你可以跨所有歷史對話搜尋任何關鍵字。

除了基本的對話列表,LibreChat 提供書籤功能,讓你把重要的對話標記起來:
- 在任何對話中點擊書籤圖示
- 填入標題與描述
- 書籤列表統一管理,快速跳回重要分析結果
3. Skill(可重複使用的行為模組)
Skill 是 LibreChat 獨特的功能,讓你把常用的 AI 行為打包成可掛載的模組。

(截圖:Skill 建立與管理介面)
每個 Skill 由一個 SKILL.md 文件定義,包含:
- 用途說明(AI 靠這個判斷何時啟用)
- 執行步驟
- 輸出格式要求
三種觸發模式:
| 模式 | 說明 |
|---|---|
| Always Apply | 每次對話都強制執行 |
| Model-invoked | AI 自動判斷何時需要這個 Skill |
實際案例:建立一個「今日 AI 新聞速報」Skill,定義搜尋關鍵字與輸出格式,掛載到 Agent 後,只要說「今天 AI 有什麼新消息」,AI 就會自動執行完整的搜尋與整理流程。
4. Prompt 提示庫
Prompt 提示庫讓你把常用的提示詞存成範本,對話時用 / 快速呼叫。

每個 Prompt 可以設定:
- 名稱:顯示在列表的標題
- 指令:
/後面的快速呼叫代號 - 內容:完整的提示詞,支援
{{current_date}}等特殊變數
實際案例:每日匯率查詢
建立一個指令為 /rate 的 Prompt,內容包含完整的匯率查詢格式。之後在任何對話框輸入 /rate,提示詞自動帶入,直接送出即可獲得結構化的匯率報告。
5. 記憶(Memory)
Memory 解決了 AI 對話「每次從零開始」的痛點,讓 AI 記住你的個人偏好與背景資訊。

記憶採用 key/value 格式儲存:
設定後,不論在哪個對話或 Agent,AI 都會自動參考這些背景知識,不需要每次重新說明。
6. 附加檔案與 RAG 知識庫
LibreChat 的 File Search 功能讓 Agent 可以搜尋上傳的企業文件,實現 RAG(檢索增強生成)。

技術架構:
- Embedding 模型:OpenAI
text-embedding-3-small - 向量資料庫:PostgreSQL + pgvector
- 搜尋方式:語意向量搜尋
支援上傳的格式:PDF、DOCX、TXT、MD、CSV、XLSX 及各種程式碼檔案。
文件上傳後會自動向量化,之後與 Agent 的每次對話,系統都會先搜尋相關段落,再結合 LLM 生成答案,確保回答有文件依據。
7. MCP 工具串接
MCP(Model Context Protocol)是 LibreChat 最強大的擴展機制,讓 AI 可以直接呼叫外部系統的 API。

MCP 的運作原理是:把複雜的 API 包裝成簡單的工具,讓 AI 不需要了解底層協議,只需要知道「工具名稱 + 參數」。
實際案例:串接 Odoo ERP
透過一個 Python FastMCP Server,把 Odoo 的 XML-RPC API 包裝成五個工具:
| 工具 | 功能 |
|---|---|
get_purchase_orders | 查詢採購單 |
get_suppliers | 查詢供應商 |
get_inventory | 查詢庫存 |
get_sale_orders | 查詢銷售單 |
get_products | 查詢產品 |
設定後,只需在對話輸入「幫我查最近 10 筆採購單」,AI 就會自動呼叫 Odoo API 並整理成可讀的報告。
實際案例:串接 Synology MailPlus
透過 Python FastMCP Server 包裝標準 IMAP/SMTP 協議,讓 AI 可以直接操作公司信箱:
| 工具 | 功能 |
|---|---|
read_emails | 讀取收件匣(支援指定資料夾與未讀過濾) |
search_emails | 以關鍵字搜尋主旨或寄件者 |
send_email | 發送郵件(支援 CC) |
get_unread_count | 查詢未讀信件數量 |
Synology MailPlus 使用標準 IMAP(port 993)與 SMTP SSL(port 465),MCP Server 直接透過這兩個協議連線,不需要任何額外 API 申請。設定後可在對話中直接說:「幫我找供應商回覆的詢價信」或「把這份報告寄給採購部門」。
企業儲存整合:QNAP QuObjects
LibreChat 預設把上傳的檔案存在本機 uploads/ 資料夾,但對企業來說更理想的做法是集中存放在 NAS。
LibreChat 支援 S3 相容儲存,QNAP 的 QuObjects 正是這樣的服務,讓 NAS 直接扮演企業私有雲的角色。
設定方式(.env):
AWS_ENDPOINT_URL=https://你的QNAP_IP:PORT
AWS_ACCESS_KEY_ID=你的存取金鑰ID
AWS_SECRET_ACCESS_KEY=你的秘密金鑰
AWS_REGION=us-east-1
AWS_BUCKET_NAME=librechat-files
librechat.yaml 啟用 S3:
fileStrategy: "s3"
注意事項:
- QNAP QuObjects 使用自簽 SSL 憑證,需在 docker-compose 的 environment 加入
NODE_TLS_REJECT_UNAUTHORIZED=0才能正常連線 - Access Key 格式為完整字串(含冒號),如
KEY-NAME:xxxxx - 每個用戶上傳的檔案仍依用戶 ID 隔離,只是儲存位置從本機改為 NAS
完成後所有員工上傳的文件都會集中存放在 QNAP NAS,方便統一備份與管理。
LibreChat vs RAGFlow
兩個平台定位不同,適合不同場景:
| 比較維度 | RAGFlow | LibreChat |
|---|---|---|
| 核心強項 | 深度文件解析與 RAG | 多模型管理與 Agent 設計 |
| Agent 設計 | 視覺化流程圖(節點式) | 參數配置 + Skill 掛載 |
| 文件解析 | DeepDoc 深度解析 | 基本向量化 |
| MCP 支援 | 支援 | 支援(用戶自定義) |
| 適合對象 | 知識庫導向的企業 | 多工具整合的企業 |
| 上手難度 | 中 | 低 |
實際部署心得
我在本機(Windows 11 + Docker)完整跑起了 LibreChat,紀錄幾個注意的地方:
RAG 服務需要額外啟動:LibreChat 的 RAG 功能不在預設的 docker-compose.yml 裡,需要用 docker compose -f docker-compose.yml -f rag.yml up -d 才能啟動 pgvector 和 RAG API。
MCP Server 的網路問題:LibreChat 從 Docker 容器內部連線 MCP Server,localhost 指的是容器本身,必須用 host.docker.internal 才能連到主機上的其他服務。
Skill 的格式要求:伺服器端的 skill/ 資料夾中,SKILL.md 必須有 YAML frontmatter,且 name 欄位必須是 kebab-case(如 ai-news-daily),否則 LibreChat 啟動時會直接失敗。
結語
LibreChat 的設計理念是把「AI 對話」這件事標準化與平台化。透過 Agent 建構器,企業可以把 AI 使用的門檻降到最低,讓每個員工都能使用針對自己職能設計的 AI 助手,而不是面對一個空白的聊天框。
在後續的規劃中,預計會進一步整合更多 MCP Server,讓 LibreChat 的 Agent 能夠直接存取 ERP 訂單、庫存、財務報表等結構化資料,結合 RAG 知識庫的非結構化文件查詢,打造一個真正意義上的企業 AI 助理平台。
參考資料 (References)
官方資源與文件