🏥 MedGuard–人工智能药物安全平台
欢迎参加我们的Hugging Face GenAI代理和MCP黑客马拉松!
该项目展示了 生产级多智能体系统 由...驱动 LangGraph 和那个 模型上下文协议(MCP),旨在分析药物安全性,检测危险药物相互作用,并提供临床决策支持。
______________________________________________________________________
🏆 黑客马拉松赛道
| 跟踪 | 目标 | 状态 |
|---|---|---|
| 轨道1:构建MCP | $10,000 | ✅ 10个MCP工具+3个资源 |
| 轨道2:消费者使用 | $10,000 | ✅ Claude桌面集成 |
| 轨道3:代理使用 | $10,000 | ✅ 多智能体语言图系统 |
| Blaxel选择奖 | $2,500 | ✅ 完整的Blaxel平台集成 |
______________________________________________________________________
🚨 为什么这很重要:我们正在解决的问题
💀 药物错误的现实
- 7,000-9,000 美国人每年死于药物错误
- 420亿美元 每年用于可预防的药物不良事件
- 150万 每年因用药错误而受到伤害的患者
- 多重用药 (5+药物)影响40%的老年人
- 药物相互作用 在美国,每年造成125000多人死亡
✅ MedGuard如何提供帮助
- 实时DDI检测 来自25+策划互动
- 药物基因组学分析 用于个性化给药
- 比尔斯标准 老年患者筛查
- 临床指南合规性 (AHA/ACC/ADA)
- 成本优化 有通用替代品
______________________________________________________________________
🌐 项目概述
MedGuard利用 5个自主AI代理 合作进行全面的药物安全分析:
| 代理 | 角色 | 主要功能 |
|---|---|---|
| 🔍 药物相互作用剂 | 使用知识图分析DDI | CYP酶冲突、PubMed增强、严重程度评分 |
| 👤 个性化代理 | 患者特异性调整 | 肾/肝剂量、药物基因组学、比尔标准 |
| 📋 指导代理人 | 临床依从性检查 | AHA/ACC、ADA、ESC指南及其证据水平 |
| 💰 成本动因 | 处方集优化 | 通用替代品、治疗替代品 |
| 📝 解释代理 | 综合与沟通 | 优先推荐,方便患者的总结 |
______________________________________________________________________
🔄 LangGraph编排架构
┌────────────────────────────────────────────────────────────────────────────┐
│ MedGuard Multi-Agent Orchestrator │
│ │
│ START │
│ │ │
│ ▼ │
│ ┌─────────────────────────────┐ │
│ │ Drug Interaction Agent │◄── Entry point (always runs first) │
│ │ • 25+ known DDIs │ │
│ │ • CYP enzyme analysis │ │
│ │ • ML severity prediction │ │
│ └───────────┬─────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────┐ │
│ │ CONDITIONAL ROUTER │◄── Severity-based intelligent routing │
│ │ Based on risk level │ │
│ └───────────┬─────────────────┘ │
│ │ │
│ ┌──────────┼──────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ "critical" "parallel" "low_risk" │
│ │ │ │ │
│ ▼ │ │ │
│ ┌────────┐ │ │ │
│ │ Human │ │ │ │
│ │ Review │ │ │ │
│ │ FLAG │ │ │ │
│ └───┬────┘ │ │ │
│ │ ┌────┴────┐ │ │
│ │ │Parallel │ │ │
│ │ │Execution│ │ │
│ │ └────┬────┘ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────────────────┐ │
│ │ Personalization Agent │ │
│ │ Guideline Compliance Agent │◄── Run in parallel for efficiency │
│ │ Cost Optimization Agent │ │
│ └───────────┬─────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────┐ │
│ │ Explanation Agent │◄── Final synthesis & prioritization │
│ │ • Safety score (0-100) │ │
│ │ • Prioritized actions │ │
│ │ • Patient-friendly text │ │
│ └───────────┬─────────────────┘ │
│ │ │
│ ▼ │
│ END │
└────────────────────────────────────────────────────────────────────────────┘______________________________________________________________________
🛠️ MCP服务器集成(10个工具+3个资源)
MCP工具
| # | 工具 | 说明 | 参数 |
|---|---|---|---|
| 1 | analyze_medication_safety | 全5剂管路 | patient_id, query |
| 2 | check_drug_interactions | 通过Neo4j检测DDI | medications[], allergies[] |
| 3 | get_personalized_dosing | 患者特定剂量 | patient_id, medication, indication |
| 4 | check_guideline_compliance | 临床指南检查 | patient_id, condition |
| 5 | optimize_medication_costs | 通用替代方案 | medications[], insurance_type |
| 6 | get_patient_profile | 人口统计和历史 | patient_id |
| 7 | search_clinical_guidelines | BioBERT矢量搜索 | query, limit |
| 8 | explain_medication_decision | 患者友好文本 | analysis, reading_level |
| 9 | search_pubmed_literature | 通过MCP搜索PubMed | query, study_types[] |
| 10 | search_fda_safety_alerts | 通过MCP搜索发出FDA警报 | drug_name, years |
MCP资源
| URI | 描述 |
|---|---|
guidelines://clinical-practice | 临床实践指南数据库 |
database://drug-interactions | 药物相互作用知识图 |
alerts://fda-safety | 美国食品药品监督管理局安全通讯 |
______________________________________________________________________
🗂️ 数据源和医学知识库
我们的平台使用 真实、权威、循证医学数据源:
1.💊 DrugBank-药物相互作用数据库
- 目的:治疗药物相互作用的机制和管理
- 覆盖:25+高风险互动对(可扩展到3000+)
- 数据:严重程度、机制、临床效果、管理策略、证据水平
- 用法:用于所有药物安全分析的核心DDI检测
2.🧬 药物基因组学数据库(PharmGKB)
- 目的:影响药物代谢的遗传变异
- 酶覆盖:CYP2D6、CYP2C9、CYP2C19、CYP3A4、CYP1A2
- 表型:代谢不良,中等,正常,超快速
- 用法:基于遗传标记的个性化剂量建议
3.👴 AGS啤酒标准(2023)
- 目的:老年人可能服用不合适的药物
- 覆盖:老年人应避免30多种药物
- 来源:美国老年医学会
- 用法:≥65岁的患者自动标记
4.📋 临床实践指南
| 组织 | 包括指南 |
|---|---|
| AHA/ACC | 心力衰竭、心房颤动、冠状动脉疾病、高血压 |
| 艾达 | 2024年2型糖尿病护理标准 |
| 退出 | 欧洲心血管指南 |
| KDIGO | 2024年慢性肾脏病 |
5.🔬 PubMed/MEDLINE(通过MCP搜索)
- 目的:临床证据文献检索
- API:MCP搜索协议集成
- 用法:通过最近的研究引用加强建议
6.⚠️ 美国食品药品监督管理局安全通讯
- 目的:药品安全警报、召回、黑匣子警告
- API:MCP搜索协议集成
- 用法:实时安全警报检查
______________________________________________________________________
📦 技术栈
| 层 | 技术 | 目的 |
|---|---|---|
MCP服务器 python mcp SDK | 10个工具,3个资源,stdio传输 | |
| 编排 | LangGraph状态图 | 条件路由,并行执行 |
| LLM | 克劳德4十四行诗/GPT-4o/Gemini 2.0 | 医学分析、综合 |
| 知识图谱 | Neo4j | 药物相互作用网络 |
| 矢量搜索 | Qdrant+BioBERT | 语义指南搜索 |
| API | FastAPI | REST端点、HIPAA审计日志 |
| 前端 | Gradio | 交互式演示UI |
| 数据库 | PostgreSQL、Redis | 患者数据、会话管理 |
| 云 | Blaxel平台 | 无服务器部署,可观察性 |
______________________________________________________________________
🧩 核心组件
🔍 药物相互作用剂(drug_interaction_agent_enhanced.py)
- 角色:主要安全分析入口点
- 能力:
- 已知交互数据库查找(DrugBank) - CYP酶代谢冲突检测 - 基于机器学习的新型交互预测 - PubMed文献增强 - 严重性分类(轻微→ 适度→ 主要的→ 关键)
👤 个性化代理(personalization_agent.py)
- 角色:针对患者的安全调整
- 能力:
- 肾剂量调整(基于eGFR) - 肝损伤注意事项 - 药物基因组学分析(CYP变体) - 啤酒标准筛选(年龄≥65岁) - 多药检测(5+/10+药物)
📋 指南合规代理(guideline_compliance_agent.py)
- 角色:循证标准验证
- 能力:
- 针对特定病情的治疗检查 - 缺少治疗识别 - 指南引用及证据等级 - 治疗分类图
💰 成本优化代理(cost_optimization_agent.py)
- 角色:处方集和成本效益
- 能力:
- 品牌→ 通用替代 - 治疗类替代品 - 保险处方集优化 - 年度节省计算
📝 解释代理(explanation_agent.py)
- 角色:临床综合与沟通
- 能力:
- 安全评分计算(0-100) - 优先推荐列表 - 临床医生执行摘要 - 对患者友好的解释(可调节阅读水平)
______________________________________________________________________
🧑⚕️ 演示患者
| ID | 患者 | 年龄 | 关键演示 |
|---|---|---|---|
| P001 | John Smith | 67 | 华法林+阿司匹林(大出血风险),CKD 3期,CYP2C9\*3 |
| P002 | 玛丽亚·加西亚 | 45 | 舍曲林+曲马多(血清素综合征风险) |
| P003 | Robert Chen | 72 | 8种药物,高钾血症风险,HF+COPD+CKD |
| P004 | Sarah Johnson | 55岁 | 辛伐他汀+氨氯地平(CYP3A4相互作用,肌病风险) |
| P005 | James Wilson | 78 | 6啤酒标准违规,CYP2D6代谢不良者 |
______________________________________________________________________
🚀 部署选项
选项1:拥抱面部空间
# Visit: https://huggingface.co/spaces/BilalS96/MedGuard选项2:Claude桌面集成
{
"mcpServers": {
"healthcare-multi-agent-system": {
"command": "/path/to/run_mcp_server.sh",
"args": [],
"env": {
"POSTGRES_HOST": "localhost",
"POSTGRES_PORT": "5432",
"POSTGRES_DB": "healthcare_agents",
"POSTGRES_USER": "postgres",
"POSTGRES_PASSWORD": "your_password",
"NEO4J_URI": "bolt://localhost:7687",
"NEO4J_USER": "neo4j",
"NEO4J_PASSWORD": "your_password",
"REDIS_HOST": "localhost",
"REDIS_PORT": "6379",
"QDRANT_URL": "http://localhost:6333",
"GOOGLE_API_KEY": "",
"ANTHROPIC_API_KEY": "",
"OPENAI_API_KEY": ""
}
}
}
}选项3:Blaxel平台
cd my-agent && bl deploy
bl run agent healthcare-multi-agent-system --data '{"inputs": "Analyze patient P001"}'选项4:Docker编写
docker-compose up -d
# API: http://localhost:8000
# UI: http://localhost:7860______________________________________________________________________
📊 示例分析输出
🏥 MedGuard Analysis Report
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Patient: John Smith (P001) | Age: 67 | Medications: 4
⚠️ SAFETY SCORE: 55/100 (MODERATE RISK)
⚠️ REQUIRES CLINICAL REVIEW
━━━ CRITICAL FINDINGS ━━━
🔴 MAJOR DRUG INTERACTION: Warfarin + Aspirin
Mechanism: Additive antiplatelet/anticoagulant effects
Effect: Significantly increased bleeding risk (GI, intracranial)
Management: Monitor INR closely, add PPI, use 81mg aspirin only
Evidence: Established (PMID: 27432982)
🟠 RENAL ADJUSTMENT NEEDED: Metformin
eGFR: 58 mL/min (threshold: 30)
Action: Monitor renal function; avoid if eGFR Built for the MCP 1st Birthday Hackathon
Making medication safety accessible through AI agents
🏥 💊 🤖 🔬 💚