pyhealth
Lets your agent create machine learning models with health data. It's useful for predicting diseases or patient outcomes in hospitals.
What it does
This tool helps build and test machine learning models for healthcare using clinical data. It organizes data, trains models, and evaluates their performance for tasks like predicting diseases or recommending treatments.
When to use it
- ✓Predicting patient mortality.
- ✓Estimating patient length of stay.
- ✓Recommending medications for a patient.
Example of what to ask your AI
“Build a model to predict patient readmission using MIMIC-III data.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The tool organizes data in steps: loading data, defining the task (what to predict), choosing an AI model, and training it. Then, it evaluates how well the model is performing.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add K-Dense-AI/scientific-agent-skills --skill pyhealthOr download just the file:
curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/pyhealth/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
PyHealth
Targets PyHealth 2.0.2, verified against its released wheel, current official
documentation, and CPU execution on Python 3.12/Torch 2.7.1. PyHealth's pipeline is
Dataset -> Task -> Model -> Trainer -> Metrics; its 1.x and 2.x interfaces differ.
Do not combine legacy Visit examples with the 2.x event/processor API.
When to use
Use for clinical prediction with PyHealth, including EHR sequences, physiological signals, imaging tasks, or medical-code lookup. Establish the cohort, prediction time, observation window, outcome horizon, and unit of evaluation before modeling. For general tabular learning without a PyHealth dataset/task, this skill is optional.
Install and smoke-test
uv run --no-project --isolated --python 3.12 --with pyhealth==2.0.2 python assets/starter_pipeline.py --demo --epochs 1
Run that command from the skill directory, or use the absolute path to the asset. It trains on invented in-memory records and exercises patient splitting, metrics, and best-checkpoint restoration. It provides no evidence of clinical performance. See installation for project setup and device options.
Workflow
- Inspect the installed version and dataset configuration. Both MIMIC-III and MIMIC-IV use lowercase table selectors in 2.0.2. MIMIC-III files remain uppercase.
- Check task semantics and required tables.
MortalityPredictionMIMIC3predicts death in the next admission, excludes the last admission, and requires diagnoses, procedures and prescriptions in the current admission. It is not a current-stay early-warning model. Missing/invalid next-admission mortality flags are assigned zero upstream; audit this before using real data. - Create supervised samples.
base.set_task(task)returns a processed dataset with input/output schemas. Inspect raw task output as well as processed samples. - Partition by patient and verify overlap, class counts and observation windows.
split_by_patient(..., seed=42)is random, not chronological or stratified. It does not prevent within-visit temporal leakage or preprocessing leakage. - Choose a schema-compatible model and run one batch before training. Construct
it from the training sample dataset. Transformer uses
embedding_dim, nothidden_dim; arguments are model-specific. - Declare validation metrics and the exact monitor. Supply
metrics=[...]toTrainer; the monitor must be a returned key. An absent key raises an error. Usemonitor_criterion="min"for loss,"max"for AUC/accuracy. - Evaluate the held-out test set once the model choice is fixed. Report prevalence, patient counts, discrimination, calibration, threshold policy and uncertainty as appropriate. PR-AUC's no-skill reference depends on prevalence, not a universal 0.5.
MIMIC-III prototype
This is the 2.0.2 interface shape; the starter adds partition and label checks. Use a local authorized root for real data. The public bucket is synthetic data.
from pyhealth.datasets import MIMIC3Dataset, get_dataloader, split_by_patient
from pyhealth.tasks import MortalityPredictionMIMIC3
from pyhealth.models import Transformer
from pyhealth.trainer import Trainer
base = MIMIC3Dataset(
root="https://storage.googleapis.com/pyhealth/Synthetic_MIMIC-III/",
tables=["diagnoses_icd", "procedures_icd", "prescriptions"],
cache_dir="./cache/mimic3", num_workers=1, dev=True,
)
samples = base.set_task(MortalityPredictionMIMIC3())
train, val, test = split_by_patient(samples, [0.6, 0.2, 0.2], seed=42)
loaders = [get_dataloader(part, batch_size=16, shuffle=(i == 0))
for i, part in enumerate((train, val, test))]
model = Transformer(dataset=train, embedding_dim=8)
trainer = Trainer(model=model, metrics=["accuracy"], device="cpu")
trainer.train(train_dataloader=loaders[0], val_dataloader=loaders[1],
epochs=1, monitor="accuracy", monitor_criterion="max")
print(trainer.evaluate(loaders[2]))
The public synthetic task with dev=True (up to 1000 patients) produced only
20 samples (18 negative, 2 positive) in the review run. Accuracy here checks execution only; random splits can lack a
class, so this is unsuitable for reliable AUC estimation.
set_task fits processors before this split. This prototype therefore learns its
vocabulary from the whole cohort. For strict held-out evaluation, partition raw
…
FAQ
What is clinical data (EHR)?
It's patient health information, like medical history, tests, medications, and medical codes.
What is MIMIC-III/IV?
These are large public datasets with patient information from hospitals, used for medical research.
What does 'pipeline' mean?
It's a sequence of steps or instructions that the tool follows to process data and build the model.
Details
Original description by the author
Builds and validates PyHealth clinical machine-learning pipelines for EHR, signals, imaging, and medical codes. Use for PyHealth dataset loading, MIMIC-III/IV, eICU or OMOP prediction tasks, patient-level evaluation, mortality/readmission/length-of-stay modeling, medication recommendation, sleep staging, Trainer checkpoints, and ICD/ATC/NDC/RxNorm mapping.
Popularity
- GitHub stars
- 51k
- Ranking position
- #1948
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
13c-metabolic-flux
Estimates metabolic fluxes using carbon-13 isotope tracing data. It is useful for analyzing cellular metabolism and biochemical pathways.
K-Dense-AI/scientific-agent-skills
adaptyv
Designs protein characterization experiments using the Adaptyv API. It helps estimate costs, submit sequences, and monitor lab results.
K-Dense-AI/scientific-agent-skills
aeon
Performs machine learning tasks on time series data. It is useful for classifying, forecasting, detecting anomalies, and finding patterns in sequential data.
K-Dense-AI/scientific-agent-skills
alphagenome
Looks up precomputed genomic effects for genetic variants. It provides scores and explanations to understand the impact of variants on the genome.
K-Dense-AI/scientific-agent-skills
Similar skills
pytorch-patterns
Helps your agent use PyTorch for machine learning models. It applies best practices for efficient model training and ensures reproducible results.
affaan-m/ECC
evm-token-decimals
Helps your agent avoid errors with decimal numbers across different blockchain networks. It ensures token values are accurate in transactions and calculations.
affaan-m/ECC
knowledge-agent
Creates and queries knowledge bases using AI. It allows asking questions about past work or compiling expertise on a topic.
thedotmack/claude-mem