使用说明:
项目简介
HADES (混合架构动态增强系统) 是一个集成了大型语言模型 (LLM) 和图数据库知识库的系统。它通过双服务器架构,包括API服务器和MCP服务器,实现对自然语言查询的上下文增强和事实核查。HADES的核心组件包括PathRAG(基于图的路径检索)、TCR(三元组上下文恢复)、GraphCheck(事实验证机制)和ECL(外部持续学习器),旨在提供更可靠、更个性化的LLM应用体验。
主要功能点
- MCP 服务器实现: 仓库包含实现了 Model Context Protocol (MCP) 协议的服务器端代码,能够作为 MCP 服务器使用。
- 资源管理: 通过 ArangoDB 图数据库存储和管理知识图谱数据,为 LLM 提供结构化知识资源访问能力。
- 工具注册与执行: 集成 PathRAG、TCR 和 GraphCheck 等工具,允许 LLM 客户端调用这些工具来增强上下文和验证事实。
- Prompt 模板支持: 虽然文档中没有明确提及 Prompt 模板,但 MCP 服务器的架构设计本身支持 Prompt 模板的集成和管理。
- 多种传输协议支持: MCP 服务器支持 WebSocket 和 Stdio 两种传输协议,客户端可以根据需要选择合适的协议进行连接。
- API 密钥认证与速率限制: 通过 PostgreSQL 数据库实现 API 密钥认证和速率限制,保障服务器安全和稳定运行。
- 用户记忆系统: 集成外部持续学习器 (ECL) 和用户记忆系统,支持个性化上下文服务和会话记忆。
安装步骤
-
环境准备: 确保已安装 Python 3.9+, PostgreSQL 14+, ArangoDB 3.8+,以及 Poetry。建议使用高性能工作站以获得最佳性能。
-
克隆仓库:
git clone https://github.com/r3d91ll/Heuristic-Adaptive-Data-Extrapolation-System-HADES.git cd Heuristic-Adaptive-Data-Extrapolation-System-HADES -
安装依赖:
poetry install -
配置环境变量:
cp .env.example .env # 编辑 .env 文件,根据实际情况配置数据库连接等信息 -
初始化数据库:
scripts/reset_databases.sh -
密码轮换 (可选): 如果需要更新数据库和系统用户的密码,可以运行密码轮换脚本:
sudo scripts/rotate_hades_password.sh
服务器配置
HADES MCP 服务器可通过 WebSocket 或 Stdio 协议启动。以下是 MCP 客户端连接 HADES MCP 服务器时可能需要配置的 server config (json 格式):
{ "serverName": "HADES MCP Server", "command": "poetry run python -m src.mcp.server", "args": [], "protocol": "stdio", # 或 "websocket",根据实际启动方式配置 "description": "HADES MCP 服务器,提供知识图谱上下文服务" }
基本使用方法
-
启动 API 服务器 (REST API):
poetry run python -m src.api.server -
启动 MCP 服务器 (WebSocket 或 Stdio):
- WebSocket 协议:
poetry run python -m src.mcp.server - Stdio 协议:
poetry run python -m src.mcp.server --stdio
- WebSocket 协议:
-
使用 CLI 客户端查询 (示例): 在另一个终端窗口,可以使用 CLI 客户端发送查询:
poetry run python -m src.cli.query "Your natural language query here"或通过 WebSocket 客户端 (例如 'src/test_client.py') 或 Stdio 客户端 (例如 'src/test_stdio_mcp.py') 与 MCP 服务器进行交互,详细信息请参考仓库中的测试脚本和文档。
信息
分类
AI与计算