🎓 智能笔记助手(RAG+MCP)
智能学习伴侣,结合 检索增强生成(RAG) 和 模型上下文协议(MCP) 工具。此助手可帮助您与课程文档(PDF)交互,并直接从聊天界面执行本地文件系统操作。
🚀 特性
- RAG系统:用途 谷歌双子座2.0 Flash 和 色度数据库 根据您当地的PDF文档回答问题。
- MCP工具:与计算机交互的集成工具:
- list files / ls:浏览目录。 - read [file] / cat:读取文件内容。 - search [term]:按名称查找文件。 - file info:获取文件元数据。
- 智能意图检测:自动检测您是否需要本地工具或AI答案来保存API配额。
🛠️ 安装
此项目使用 uv 用于快速Python包管理。
- 克隆存储库:
git clone
cd RAG_MCP_PROJECT- 安装依赖项:
uv sync- 配置环境:
创建一个 .env 文件,并添加您的Google API密钥:
GOOGLE_API_KEY=your_api_key_here📖 用法
- 放置您的文档:将您的PDF或DOCX课程文件放在
documents/文件夹。
- 运行助手:
uv run simple_rag.py- 互动:
- 提问: *“什么是质量控制?”* - 使用工具: *“列出文档中的文件”*, *“读取config.py”*
🏗️ 项目结构
simple_rag.py:主要应用程序入口点和RAG逻辑。mcp_server.py:运行时使用的真实MCP服务器(stdio,list_tools/call_tool).mcp_tools.py:旧助手模块(不在活动MCP运行时路径中)。vector_store.py:管理ChromaDB矢量数据库。document_processor.py:处理PDF/DOCX加载和分块。config.py:配置设置。
MCP运行时说明
活动MCP流为:
simple_rag.py开始mcp_server.py通过stdio。simple_rag.py通过调用MCP工具mcp_session.call_tool(...).mcp_server.py执行已注册的工具处理程序。
mcp_tools.py 运行时MCP服务器不使用。
🤖 技术
- Python 3.12+
- LangChain
- 谷歌生成人工智能(Gemini)
- 色度数据库
- UV(包装管理器)
