返回市场
聊天机器人Rag_MCP服务器

聊天机器人Rag_MCP服务器

作者:ImVirtue6 星标更新:2025-04-14

项目介绍

基于本地MCP服务器的RAG聊天机器人

构建一个基于检索增强生成(RAG)的人力资源聊天机器人,用于提供工作场所规则信息,以本地MCP服务器作为函数调用中心。 <img src="images/rag.jpg" width="500"> <img src="images/mcp-architecture.png" width="500">

概述

本项目实现了一个使用Streamlit和MCP服务器的检索增强生成(RAG)聊天机器人。用户可以上传PDF文件,聊天机器人从这些PDF中检索相关信息来回答自然语言问题。该系统利用了OpenAI模型、LangChain工具以及内存向量存储来进行高效的文档检索。

功能

  • MCP工具集成
    使用MCP进行工具编排,确保文档索引、检索和答案生成之间的顺畅通信。随着新功能的添加,后端工具可以轻松扩展或替换。

  • PDF上传与解析
    上传一个PDF文件,然后使用PDFPlumberLoader解析以提取文本内容。

  • 文本分块
    提取的文本使用RecursiveCharacterTextSplitter分割成更小的块,以便于高效索引和检索。

  • 文档索引
    文档块被索引到内存向量存储中,嵌入通过OpenAIEmbeddings生成。

  • 相似性搜索(余弦相似度)
    当用户提交查询时,聊天机器人执行相似性搜索,根据查询检索最相关的文档块。

  • 基于提示的答案生成
    自定义提示模板结合用户问题和检索到的上下文,由GPT-4驱动的语言模型(使用ChatOpenAI)生成最终答案。

  • 交互界面
    应用程序使用Streamlit提供一个交互式的类似聊天的界面,显示用户的问题和机器人的响应。

结果

<img src="images/HRwithMCP.png" width="700">