veyliss/ai-localbase

一个本地优先的AI知识库系统(RAG),用于把本地文档接入辅导搜索与大模型对话流程。目前支持md、txt、pdf(文本)、xlsx、cvs类型。支持mcp服务

AI LocalBase – 本地優先的 RAG 知識庫系統

一句話概述

一個用 Go、React 與 Qdrant 搭建的自託管向量檢索 + 大模型對話平台,幫助個人或小團隊把本地文件(TXT、Markdown、PDF、Excel、CSV 等)接入檢索增強問答(RAG),並透過 Ollama 或相容 OpenAI 的模型進行對話。


核心技術棧

層級 技術 說明
後端 Go + Gin 高效能 HTTP API,負責文件解析、向量化、檢索、會話管理等業務邏輯
前端 React + Vite + TypeScript 單頁面 Web UI,提供知識庫管理、檔案上傳、聊天介面等互動
向量庫 Qdrant 開源向量資料庫,儲存文件向量並支援混合搜尋、MMR 去冗餘等進階檢索功能
模型接入 Ollama / OpenAI‑compatible API 透過統一的 Provider 配置,使用本地 Ollama 模型或任何相容 OpenAI 的聊天/嵌入模型
持久化 SQLite(聊天記錄) + JSON 檔案(設定) 輕量級本地儲存,無需外部資料庫
部署 Docker‑Compose(推薦) 前端、後端、Qdrant 三容器一鍵啟動;也提供單行程式調試方式
扩展 MCP Server(內建) HTTP/JSON‑RPC 接口,供外部 Agent、腳本或工具系統呼叫本地知識庫、檢索、評估等功能

主要功能

  1. 知識庫管理 – 建立、刪除、瀏覽多個知識庫;每個庫對應一套 Qdrant collection。
  2. 文件上傳 & 自動索引 – 支援 TXT、Markdown、PDF、xlsx、csv;自動切分、批量嵌入並寫入向量庫。
  3. 檢索增強問答 (RAG) – 檢索命中內容後注入對話上下文,支援:
    • 動態召回、關鍵字覆蓋、MMR 去冗餘
    • 低置信度二次召回、語義快取、Hybrid Search、Semantic Reranker、Query Rewrite、Context Compression
  4. 聊天記錄持久化 – 所有會話儲存在本地 SQLite,前端可查看歷史對話。
  5. 設定持久化 – 模型、向量庫、認證等設定寫入本地 JSON,容器重啟後自動恢復。
  6. MCP(Modular Capability Provider) – 為外部 Agent 提供工具清單、呼叫介面、權限分級、限流、審計日誌等;支援非同步匯入、索引重建、評估資料集產生等工作流程。
  7. 安全 & 認證 – 可透過環境變數開啟 Web 登入、API‑Key 鑑權;生產部署預設開啟。

典型使用場景

  • 個人知識庫:把筆記、技術文件、PDF 手冊等本地化,隨時用聊天方式查詢。
  • 小團隊內部文件問答:在公司內部網路中自託管,確保資料不離網。
  • RAG 原型驗證:快速搭建並實驗不同檢索策略、混合搜尋或重排模型。
  • 模型接入測試:對比 Ollama 本地模型與雲端 OpenAI‑compatible 模型的效果與成本。
  • Agent 後端:透過 MCP 為自訂 AI Agent 提供「讀取文件 → 檢索 → 產生答案」的能力。
  • 批量文件處理:非同步匯入大量檔案,支援進度查詢與任務取消。

快速上手(最小步驟)

# 複製環境變數範本並啟動所有容器
cp .env.example .env
docker compose up --build
  • 訪問 http://localhost:4173 → Settings → 設定 Chat 與 Embedding 模型(範例:Ollama qwen2.5:7b + bge-m3
  • 上傳文件 → 開始對話,系統會自動檢索並把相關片段注入上下文。

完整的啟動、調試、生產部署細節請參考 docs/getting-started.mdDOCKER_DEPLOY.md 等文件。


部署選項

場景 推薦方式
本地體驗 docker compose up --build(單機)
生產自託管 使用 docker-compose.prod.yml,開啟 ENABLE_AUTH=true,設定強密碼或 AUTH_SETUP_TOKEN,並根據需要把 Qdrant 綁定到 0.0.0.0 並設定 API‑Key
只跑後端/前端 分別啟動 docker-compose.dev.yml 中的對應服務,程式碼掛載方便調試
自訂鏡像 AI_LOCALBASE_IMAGE_TAG=v1.4.6 docker compose -f docker-compose.prod.yml up -d

開源許可 & 社區


適合的讀者

  • 開發者想在本地快速實驗 RAG 流程而不依賴雲端服務。
  • 小團隊需要一個可自行託管、可擴展的文件問答平台。
  • AI 研究者想評估檢索策略、混合搜尋或自訂工具鏈(透過 MCP)。

如果專案對你有幫助,記得給倉儲點個 ⭐

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案