
Building a Watsonx.ai Chatbot RAG Server with MCP

2025.04.21
0
Python检索增强生成文档问答知识库检索开发效率
watsonx-rag-mcp-server 是一个基于 IBM Watsonx.ai 和 ChromaDB 的检索增强生成(RAG)服务器,通过 Model Context Protocol (MCP) Python SDK 暴露功能。该服务器能够处理 PDF 文档,并通过客户端进行查询,利用大型语言模型(LLM)在特定数据基础上生成回答。
View on GitHub
Overview
基本能力
产品定位
watsonx-rag-mcp-server 是一个检索增强生成(RAG)服务器,旨在通过 IBM Watsonx.ai 和 ChromaDB 提供基于文档的问答功能。
核心功能
- 文档处理:从 PDF 文件中提取文本并进行分块处理。
- 向量索引:使用 ChromaDB 存储和检索文档的向量表示。
- 检索增强生成:结合 Watsonx.ai 的 LLM 能力,基于检索到的文档内容生成回答。
- MCP 集成:通过 Model Context Protocol (MCP) 暴露功能,支持标准化接口调用。
适用场景
- 文档问答:基于特定文档(如无人机手册)回答用户问题。
- 知识库检索:构建和维护特定领域的知识库,支持高效检索。
- 聊天机器人:集成到聊天应用中,提供基于文档的智能回答。
工具列表
- chat_with_manual:基于 PDF 文档回答用户问题的工具。
常见问题解答
- 文档处理失败:确保 PDF 文件可读且未加密。
- 向量数据库初始化失败:检查
.env
文件中的配置是否正确。 - Watsonx.ai 连接失败:验证 API 密钥和项目 ID 是否正确。
使用教程
使用依赖
- Python 3.8+ 已安装。
- IBM Cloud 账户并配置 Watsonx.ai 服务。
pip
用于安装 Python 包。
安装教程
- 创建并激活虚拟环境:
bash python -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate
- 安装依赖:
bash pip install -r requirements.txt
- 配置
.env
文件:dotenv WATSONX_APIKEY=your_watsonx_api_key_here WATSONX_URL=your_watsonx_instance_url_here PROJECT_ID=your_watsonx_project_id_here
- 放置 PDF 文件到
documents
目录。
调试方式
- 启动服务器:
bash python server.py
- 运行客户端:
bash python client.py
- 检查日志输出以排查问题。
标签信息
- 安装类型:
stdio
- 产品定位:
检索增强生成
,文档问答
,知识库检索
- 归类:
开发效率