代理RAG增强工具

该项目实现了一个MCP服务器和客户端,用于构建代理RAG(检索增强生成)应用程序,提供实体提取、查询优化和相关性检查等功能。

  • by rukshannet
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 rukshannet/mcp-agentic-rag

使用说明

mcp代理抹布

概述

该项目实现了一个MCP(模型上下文协议)服务器和客户端,用于构建代理RAG(检索增强生成)应用程序。服务器提供了一组可用于提高RAG系统性能的工具,如实体提取、查询细化和相关性检查。客户端演示如何连接到服务器并使用其工具。

服务器(Server.py)

服务器是使用 FastMCP 类从 mcp 图书馆。它公开了以下工具:

  • get_time_with_prefix: 返回当前日期和时间。
  • extract_entities_tool: 使用OpenAI从给定的文本查询中提取实体。此工具可用于识别用户查询中的关键实体,然后可用于改进相关文档的检索。
  • refine_query_tool: 使用OpenAI优化给定的文本查询。该工具可用于提高用户查询的质量,然后可用于改进相关文档的检索。
  • 检查相关性: 使用LLM检查文本块与给定问题的相关性。此工具可用于从检索结果中筛选出不相关的文档。

客户端(mcp-Client.py)

客户端演示如何连接到MCP服务器并使用其工具。它使用 ClientSession 类从 mcp 库与服务器建立连接。客户提供了如何执行以下操作的示例:

  • 连接到服务器
  • 列出可用工具
  • 使用参数调用特定工具
  • 使用OpenAI和可用的MCP工具处理查询

需求

  • Python 3.7+
  • openai
  • 主控程序
  • dotenv

安装

  1. 克隆存储库:

    git clone https://github.com/rukshanet/mcp-agentic-rag.git
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 配置环境变量:

    • 创建一个 .env 文件基于 .env.sample 文件。
    • 设置 OPENAI_MODEL_NAME 将环境变量设置为要使用的OpenAI模型的名称。

用法

  1. 启动MCP服务器:

    python server.py
    
  2. 运行MCP客户端:

    python mcp-client.py
    

许可证

麻省理工学院