How sreansh-sudo/panacea works
PANACEA is a research clinical early-warning application: it turns ICU vital-sign records into engineered features, trains a risk model, and serves patient risk summaries and per-patient SHAP explanations through a dashboard and API. The README documents health, patient-list, patient-detail, and dashboard capabilities; the sampled sources show the prediction and dashboard paths. Health routing is documented but its implementation was not sampled, so its internal behavior is not expanded. Training writes to models/ in sampled code, while runtime settings load from artifacts/; these artifact locations do not visibly align.
Main entry points: main.py FastAPI application · predict.py Patient predictions · script.js Dashboard behavior · model.py Model and data loader
Components 15
Data preparation
- Vital features
pipeline/mimic3_feature_pipeline.py - Feature dataset
Model lifecycle
- Model training
pipeline/train_model.py - Model artifacts
- Model and data loader
app/core/model.py
API service
- App settings
app/config.py - FastAPI application
app/main.py - Patient predictions
app/api/v1/predict.py - Response schemas
app/schemas/response.py - Health endpoint
app/api/v1/health.py
Monitoring interface
- Dashboard page
app/templates/dashboard.html - Dashboard behavior
app/static/script.js - Dashboard styles
app/static/styles.css
Other components
- Clinical staff
- MIMIC-III data
Connections 16
- MIMIC-III data → Vital features: reads vitals
- Vital features → Feature dataset: writes features
- Feature dataset → Model training: trains on
- Model training → Model artifacts: writes model
- App settings → Model and data loader: provides paths
- Model artifacts → Model and data loader: loads artifacts
- Feature dataset → Model and data loader: loads features
- FastAPI application → Health endpoint: mounts router
- FastAPI application → Patient predictions: mounts router
- FastAPI application → Dashboard page: serves page
- FastAPI application → Dashboard behavior: serves static
- Clinical staff → Dashboard behavior: views dashboard
- Dashboard behavior → Patient predictions: requests patients
- Patient predictions → Model and data loader: uses loaded state
- Patient predictions → Response schemas: validates responses
- Dashboard behavior → Health endpoint: checks status