带有本地主机MCP服务器的Rag聊天机器人
构建一个基于RAG的人力资源聊天机器人,为工作场所提供规则 本地主机MCP服务器 作为函数调用中心
概述
该项目使用Streamlit和MCP服务器实现了一个检索增强生成(RAG)聊天机器人。用户可以上传PDF文件,聊天机器人从PDF中检索相关信息以回答自然语言问题。该系统利用OpenAI模型、LangChain实用程序和内存中的向量存储来实现高效的文档检索。
特性
- MCP工具集成:\
工具编排 主控程序 确保文档索引、检索和答案生成之间的顺畅通信。随着新功能的添加,后端工具可以很容易地扩展或替换。
- PDF上传和解析:\
上传一个PDF文件,然后使用 PDFPlumberLoader 以提取文本内容。
- 文本组块:\
提取的文本被分割成更小的块 RecursiveCharacterTextSplitter 以促进高效的索引和检索。
- 文献检索:\
块在内存向量存储中被索引,嵌入是通过以下方式生成的 OpenAIEmbeddings.
- 相似性搜索(组成相似性):\
当用户提交查询时,聊天机器人会执行相似性搜索,根据查询检索最相关的文档块。
- 基于提示的答案生成:\
自定义提示模板将用户问题与检索到的上下文相结合,并使用GPT-4驱动的LLM(使用 ChatOpenAI)生成最终答案。
- 交互界面:\
该应用程序使用Streamlit提供一个交互式的、类似聊天的界面,显示用户问题和机器人响应。
