Sisyphus v0.4
oral structure + dose → Cmax

Structure-only Cmax.
Evidence stated plainly.

Sisyphus predicts single-dose oral Cmax from a parent-drug SMILES and dose. A separate graph-based PBPK solve provides mechanistic research outputs; those endpoints are not presented as if they came from the Cmax ensemble.

2.74
development AAFE
N=107
development compounds
N/A
independent AAFE
44.9%
within 2-fold · development
Sisyphus PBPK Console — caffeine prediction view
The interactive console — a real prediction, rendered.
Architecture

Three ideas that define Sisyphus

The design choices that make it extensible and honest, not just another PBPK script.

01 · topology

The body is a graph

Organs are nodes; vessels, transit, and clearance are typed edges. The ODE system is derived from graph topology — you extend the model by editing YAML, never the engine.

02 · uncertainty

Intervals keep their meaning

Parameter Monte Carlo and empirical model-residual bands are separate outputs. The current residual band is development evidence, not an independent conformal guarantee.

03 · extensibility

The engine knows types, not identities

No organ or drug names live in the engine. Identity lives in data, so new organs, enzymes, and routes never require an engine change.

Validation

Retrospective development evidence

N=107 is compound-disjoint from audited fitted-model training, but it was repeatedly used for system selection and calibration. It is therefore development data, not an independent holdout.

Predicted vs observed Cmax on the N=107 development benchmark (log–log)
TrackAAFEwithin 2-fold
Meta · development2.7444.9%
Engine only4.2827.1%
ML only3.0043.0%
Meta, structurally in-scope2.7942.0%

A four-track meta-learner blends a mechanistic engine, a data-driven ML Cmax, a CL/F analytical, and a conditional VDss track. Prospective FDA NMEs (2024–25) are harder still at AAFE 3.27 — generalization, stated plainly.

Independent external AAFE is currently not available. The displayed Meta residual band is derived from development residuals and is correspondingly wide (approximately ÷×13); it must not be interpreted as a split-conformal coverage guarantee. A preregistered, custodian-controlled external evaluation is required.
Quickstart

Or run it from the command line

The console is one face of a Python library + CLI.

# install pip install -e ".[dev,ml]" # predict caffeine 100 mg sisyphus predict --smiles "Cn1c(=O)c2c(ncn2C)n(C)c1=O" --dose 100