Token导航 LogoToken导航TokenDH.com
Multi Source Agentic Q A Assistant logo
AI代理stdio官方级别未说明来源级核验

Multi Source Agentic Q A Assistant

MCP Server

一个监督式的多代理问答系统,智能地将用户查询路由到SQL推理管道或文档(RAG)推理管道,并在整个过程中强制执行安全性、记忆和引用。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
问答系统PythonAI代理LangGraph

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

whitevshadow

提供方

whitevshadow

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

🧠 多智能体问答系统

高级理念(一句话)

一个有监督的多智能体问答系统,可以智能地将用户查询路由到 SQL推理管道 或一个 文档(RAG)推理管道,在整个过程中加强安全、记忆和引用。

______________________________________________________________________

概述

该项目实现了 生产级代理问答架构 使用 LangGraph 作为控制平面和 MCP(模型上下文协议) 作为执行层。

该系统能够回答以下问题:

  • 结构化数据 (Northwind SQL数据库)
  • 非结构化文档 (PubMed/临床PDF)

中央 监督代理 决定如何处理每个查询,同时加强护栏、内存和可解释性。

______________________________________________________________________

关键能力

  • 🧠 使用LangGraph进行多代理编排
  • 🛡️ 安全和范围控制护栏
  • 🔀 智能路由(SQL vs RAG vs Clarify)
  • 📚 文档的引用支持答案
  • 🧮 确定性SQL推理
  • 🧠 后续问题的对话记忆
  • 🔍 易于观察、可调试的步骤

______________________________________________________________________

端到端工作流

User Question
      ↓
Context Resolution
      ↓
Guardrail Check
      ↓
Supervisor Agent (Decision Maker)
      ↓
┌────────────────┬────────────────────┐
│ SQL Agent      │ RAG Agent           │
│ (Structured)   │ (Unstructured)      │
└────────────────┴────────────────────┘
      ↓
Answer Synthesis + Citations
      ↓
Conversation Memory Update
      ↓
Final Answer to User

______________________________________________________________________

🧠 系统架构(LangGraph+MCP)

flowchart TD
    %% UI
    U[User
Streamlit Chat UI]

    %% Pre-processing
    CR[Context Resolver
(Resolve follow-ups)]
    GR[Guardrail Agent
(ALLOW / REJECT)]
    SUP[Supervisor Agent
(Route Decision)]

    %% Routing
    SQLA[SQL Agent]
    RAGA[RAG Agent]
    CLARIFY[Clarify Response]
    REJECT[Reject Response]

    %% MCP Layer
    MCP[MCP Client]
    SQLDB[(Northwind Database)]
    DOCS[(PubMed / Clinical PDFs)]

    %% Answer
    SYN[Answer Synthesizer
(Grounded Answer)]
    MEM[Conversation Memory]
    OUT[Final Answer
+ Sources]

    %% Flow
    U --> CR
    CR --> GR

    GR -->|REJECT| REJECT
    GR -->|ALLOW| SUP

    SUP -->|SQL| SQLA
    SUP -->|RAG| RAGA
    SUP -->|CLARIFY| CLARIFY
    SUP -->|REJECT| REJECT

    %% SQL Path
    SQLA --> MCP
    MCP --> SQLDB
    SQLDB --> MCP
    MCP --> SYN

    %% RAG Path
    RAGA --> MCP
    MCP --> DOCS
    DOCS --> MCP
    MCP --> SYN

    %% Finalization
    SYN --> OUT
    OUT --> MEM
    MEM --> CR

______________________________________________________________________

代理人职责

🛡️ 护栏代理

  • 阻止范围外或不安全的问题
  • 及早预防幻觉

🧠 监督代理

  • 在SQL、RAG、澄清或拒绝之间做出决定
  • 确保只运行一条执行路径

🧮 SQL代理

  • 转换自然语言→ SQL
  • 执行确定性查询
  • 返回精确的数值结果

📚 RAG代理

  • 检索相关文档块
  • 综合有根据的答案
  • 始终返回引用

✍️ 答案合成器

  • 规范跨代理的输出
  • 格式化最终答案+来源

______________________________________________________________________

为什么选择LangGraph+MCP?

LangGraph

  • 清晰的状态转换
  • 显式控制流
  • 易于调试和可观察性

MCP(模型上下文协议)

  • 工具隔离
  • 清洁服务边界
  • 可交换的执行后端

它们共同构成了一个 干净的控制平面+执行平面架构 适用于现实世界的人工智能系统。

______________________________________________________________________

示例查询

结构化查询语言

  • “总销售额前5名产品”
  • “他们处理了多少订单?”

检索增强生成

  • “什么是拉沙热?”
  • “患者的严重程度如何变化?”

随访(记忆感知)

  • “它会变得有多严重?”
  • “它在哪里流行?”

______________________________________________________________________

生产就绪设计原则

  • 没有监督,任何代理人都不会逃跑
  • 歧义会引发澄清,而不是幻觉
  • SQL和RAG故障是隔离的
  • 记忆永远不会覆盖事实

______________________________________________________________________

状态

✅ 核心架构已实施 ✅ SQL+RAG路由稳定 ✅ 内存分辨率工作 ✅ 引用已执行

______________________________________________________________________

下一步改进

  • 流媒体响应
  • 工具信心评分
  • 重试和回退策略
  • UI时间线可视化
  • 评估工具

______________________________________________________________________

在本地运行

1.创造环境

python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/macOS
# source .venv/bin/activate

pip install -r requirements.txt

2.准备运行时配置

# Windows
copy .env.template .env
# Linux/macOS
# cp .env.template .env

如果您的模型服务器不是本地的,请设置 OLLAMA_BASE_URL.env 因此。

3.启动服务(两个终端)

航站楼A:

python app/mcp/server.py

B航站楼:

streamlit run streamlit_app.py

打开 http://localhost:8501.

______________________________________________________________________

Docker Compose(面向生产,外部Ollama)

此存储库包括:

  • Dockerfile.mcp
  • Dockerfile.streamlit
  • docker-compose.yml
  • .env.template

1.配置环境

# Windows
copy .env.template .env
# Linux/macOS
# cp .env.template .env

OLLAMA_BASE_URL 连接到外部模型服务器端点。

2.构建和运行

docker compose up --build

3.终点

  • 流线型用户界面: http://localhost:8501
  • MCP HTTP端点: http://localhost:3333/mcp

4.持久数据

编写挂载以保持运行时数据的持久性:

  • ./data -> /app/data
  • 命名卷 mcp_runtime -> /app/runtime
  • 命名卷 streamlit_runtime -> /app/runtime

______________________________________________________________________

配置说明

该应用程序现在支持以下环境驱动配置:

  • MCP主机/端口/url
  • SQL/RAG数据路径
  • 会话/内存数据库路径
  • 嵌入模型
  • 所有Olama型号名称

.env.template 获取完整的变量名和默认值。

______________________________________________________________________

使用LangGraph•MCP•Streamlit•SQL•RAG构建

目录标签

目录标签

问答系统PythonAI代理LangGraphTSQL本地部署多代理系统SQL推理RAG推理MCP

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP