MedAssist AI:带多层安全约束的临床分诊系统
Kaus360/medassist-ai
MedAssist AI 是一个安全优先的 AI 临床分诊系统,通过结构化提问逐步采集症状的类型、时长、严重程度等信息,再由 AI 生成结构化指导。系统采用有状态分诊而非无状态对话,并设置安全过滤层拦截处方和剂量等不安全输出,同时支持 Gemini → Groq → OpenRouter 多 LLM 故障转移、对抗性输入防护和审计日志。
A safety-critical AI-powered clinical triage system designed to assess symptoms through structured questioning while enforcing strict medical safety constraints.
🚀 Live Flow
- User enters symptom (e.g., Chest pain)
- System performs step-by-step triage (type, duration, severity, etc.)
- Once sufficient data is collected → AI generates structured guidance
- Safety layer filters unsafe outputs (no prescriptions/dosage)
🧠 Key Innovation
Unlike typical AI chatbots, this system focuses on controlling AI behavior instead of blindly trusting model outputs.
It implements:
- Multi-layer safety enforcement
- Stateful triage (not stateless chat)
- Multi-LLM failover (Gemini → Groq → OpenRouter)
- Adversarial input protection
- Audit logging for reliability
🏗️ Architecture
🏥 MedAssist AI
A safety-critical AI-powered clinical triage system designed to assess symptoms through structured questioning while enforcing strict medical safety constraints.
🚀 Live Flow
- User enters symptom (e.g., Chest pain)
- System performs step-by-step triage (type, duration, severity, etc.)
- Once sufficient data is collected → AI generates structured guidance
- Safety layer filters unsafe outputs (no prescriptions/dosage)
🧠 Key Innovation
Unlike typical AI chatbots, this system focuses on controlling AI behavior instead of blindly trusting model outputs.
It implements:
- Multi-layer safety enforcement
- Stateful triage (not stateless chat)
- Multi-LLM failover (Gemini → Groq → OpenRouter)
- Adversarial input protection
- Audit logging for reliability
🏗️ Architecture
User ↓ Triage Agent (Stateful) ↓ LLM Manager (Failover) ↓ Safety Filter (Critical Layer) ↓ Final Response
🛡️ Safety Features
- Blocks prescriptions and dosage instructions
- Prevents unsafe medical claims
- Enforces mandatory disclaimer
- Logs raw vs filtered outputs
- Handles adversarial inputs
🧪 Example Flow
Input: Chest pain → pressure → 1 day → severe → no other symptoms
Output:
- Structured clinical summary
- Possible causes
- Safe recommendations
- Red flags for escalation
⚙️ Tech Stack
- FastAPI (Backend)
- React + Vite (Frontend)
- Multi-LLM Integration (Gemini, Groq, OpenRouter)
- Custom Safety Layer
- JSON-based Memory System
⚠️ Disclaimer
This system is not a substitute for professional medical advice.
来源:GitHub · github.com