使用说明
项目简介
Wiki-RAG (Mediawiki Retrieval-Augmented Generation) 是一个利用 Mediawiki 作为知识来源增强文本生成任务的项目。它内置了一个 未受保护的 MCP 服务器,允许通过 Model Context Protocol 访问其检索增强生成 (RAG) 功能。
主要功能点
- 资源管理: 提供对解析后的 Mediawiki 文档的访问,允许 MCP 客户端获取和利用结构化知识。
- 工具注册与执行:
- 'retrieve': 从向量数据库中检索原始的文档结果。
- 'optimise': 优化检索结果,构建更相关的上下文信息。
- 'generate': 利用检索和优化的上下文,生成最终答案。
- Prompt 模板: 支持获取和使用预定义的 Prompt 模板,包括系统 Prompt 和用户 Prompt,支持占位符定制。
- MCP 协议支持: 通过 JSON-RPC 协议与 MCP 客户端通信,使用 SSE 传输协议。
安装步骤
- 克隆仓库:
git clone https://github.com/moodlehq/wiki-rag.git cd wiki-rag - 环境准备:
- 确保已安装 Python 3.12 或更高版本、pip 和 Docker (如果使用 Docker 运行)。
- 确保已安装并运行 Milvus 2.5.5 或更高版本 (用于向量相似性搜索)。推荐使用 Docker Compose 部署 Milvus。
- 配置环境变量:
- 复制 'env_template' 文件并重命名为 '.env':
cp env_template .env - 编辑 '.env' 文件,配置 Mediawiki 站点、命名空间、模型等参数。
- 复制 'env_template' 文件并重命名为 '.env':
- 安装依赖:
- 创建并激活虚拟环境 (可选):
python -m venv .venv source .venv/bin/activate # Linux/macOS .venv\Scripts\activate # Windows - 安装项目依赖:
pip install -e .
- 创建并激活虚拟环境 (可选):
服务器配置 (MCP 客户端配置)
MCP 客户端需要配置以下 JSON 信息以连接到 Wiki-RAG MCP 服务器。
{ "serverName": "wiki-rag-mcp-server", // MCP 客户端中服务器的自定义名称 "command": "wr-mcp", // 启动 MCP 服务器的命令 (仓库中已配置为 wr-mcp 可执行文件) "args": [] // 启动命令的参数,此处为空表示使用默认配置 }
基本使用方法
- 启动 Milvus: 确保 Milvus 向量数据库已启动并可访问 (根据 '.env' 文件中的 'MILVUS_URL' 配置)。
- 运行 MCP 服务器:
在项目根目录下,运行 'wr-mcp' 命令启动 MCP 服务器。服务器将默认监听在 'MCP_API_BASE' 环境变量配置的主机和端口上 (默认为 'http://localhost:8081')。
- 本地运行: 直接在命令行运行 'wr-mcp'。
- Docker 运行: 可以使用 Docker 镜像运行 'wr-mcp',具体步骤请参考仓库 README 中 "Running with Docker" 和 "Running with Docker Compose" 部分。
- 使用 MCP 客户端连接:
配置 MCP 客户端,使用上述服务器配置信息连接到 Wiki-RAG MCP 服务器。客户端可以通过 JSON-RPC 调用服务器提供的工具 (retrieve, optimise, generate)、资源 (resource://get_10_pages 等) 和 Prompt 模板 (prompt://get_system_prompt 等)。
- 具体工具、资源和 Prompt 的调用方法请参考 MCP 协议文档和仓库 'wiki_rag/mcp_server/server.py' 文件中的定义。
注意: 仓库 README 中明确指出 'wr-mcp' 是一个 UNPROTECTED 的内置 MCP 服务器,在生产环境中使用时请注意安全性。
信息
分类
AI与计算