知识库检索增强生成服务器

一个高性能、基于Docker的RAG服务器,旨在将本地Obsidian笔记库转换为可查询的智能知识库,支持语义搜索和复杂问题解答。

  • by llabusch93
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 llabusch93/ObsidianRAG

使用说明

ObsidianRAG MCP 服务器

一个高性能的、基于Docker的RAG(检索增强生成)服务器,旨在将您本地的Obsidian知识库转变为一个智能且可查询的知识库。

这台服务器充当长期记忆的角色,使您能够对个人笔记执行语义搜索并提出复杂问题。它被设计为一个安全的本地MCP(模型上下文协议)工具,与Gemini CLI一起使用。


特点/功能

  • 🧠 智能搜索: 使用谷歌的最新技术 text-embedding-004 模型以理解 意思 你的笔记,而不仅仅是关键词。
  • 🔒 私密且安全: 您的笔记已被索引并存储在一个本地向量数据库中。只有用于生成嵌入的文本会被发送到Google API,而您的API密钥则存储在本地。
  • 🚀 为Apple Silicon优化: 这个Docker容器是专门为……显式构建的 linux/arm64 架构设计以确保在M系列Mac上实现最佳性能。
  • 📦 容器化且简洁: 整个应用程序通过Docker Compose进行管理,使得设置和拆卸变得轻而易举。
  • 💾 持久性知识: 向量数据库存储在一个持久化的Docker卷中,因此您的知识库在容器重启后仍然存在。
  • 🔧 动态配置: 通过环境文件轻松配置您的 Obsidian 数据库路径。

入门指南

这些说明将帮助您在本地机器上获取项目并使其运行起来。

先决条件

安装

  1. 克隆仓库:

    git clone https://github.com/your-username/ObsidianRAG.git
    cd ObsidianRAG
    
  2. 配置您的环境:

    • 重命名示例环境文件:
      mv .env.example .env
      
    • 打开 .env 使用文本编辑器打开文件,并添加您的Google API密钥和 绝对路径 到你的Obsidian知识库中。
      # Your Google AI API Key for generating embeddings
      GOOGLE_API_KEY="AIzaSy..."
      
      # The absolute path to your local Obsidian Vault directory
      OBSIDIAN_VAULT_PATH="/path/to/your/vault"
      
  3. 构建并运行服务器:

    • 从项目的根目录运行以下命令:
      docker-compose up --build -d
      
    • 当你第一次运行这个时,Docker 会构建镜像并下载所有依赖项。然后服务器将在后台启动。
    • 在首次启动时,服务器将开始 索引化 您的整个保险库。根据保险库的大小,这可能需要几分钟时间。您可以使用以下方式监控进度:
      docker-compose logs -f
      

使用方法

这台服务器被设计为Gemini命令行界面(CLI)内的一个工具。

  1. 打开你的Gemini命令行界面(CLI) settings.json 文件。

  2. 添加以下配置 到……的 "tools" 数组:

    {
      "tool_type": "MCP",
      "name": "obsidian_vault",
      "display_name": "Obsidian Vault",
      "description": "Queries my personal knowledge management system (Obsidian) for notes, concepts, and connections. Useful for complex questions based on my personal knowledge.",
      "url": "http://localhost:8000/mcp",
      "is_enabled": true
    }
    
  3. 重启Gemini命令行界面 应用这些更改。

  4. 查询你的知识库! 现在您可以直接在命令行界面(CLI)中提问:

    /tool obsidian_vault What are my most important notes on artificial intelligence?
    
    /tool obsidian_vault Summarize my thoughts on project management.
    

许可证

这个项目遵循MIT许可证授权——详见 许可证 详情请见文件。