We ran our model against the 28-drug CiPA panel. Two runs are below in full. Dofetilide is textbook. Verapamil is where two channels fight, and the model misses it by one class.
A plain Kernik-Clancy 2019 iPSC-CM action-potential model (doi:10.1113/JP277724), scored against the canonical 28-drug CiPA reference. Drug effect enters as a static Hill block at 1 to 4x free Cmax across the four currents the model carries: hERG/IKr, ICaL, INa-peak and IKs. Thresholds were fit on 12 training drugs, frozen; the remaining 16 were scored blind.
classifier
3-class accuracy
high-vs-not AUC
low-vs-not AUC
iPSC-CM multichannel
0.56
0.91
0.85
hERG-only baseline
0.63
0.89
0.77
published ORd/qNet
not reported
1.00
0.89
The three rows do not share a base. Our accuracies are the 16-drug blind validation split (0.61 and 0.64 across all 28), and our AUCs are all 28 drugs. The ORd/qNet row is not our run: it is Li et al. 2018 on CiPA's own 16-drug validation set, reported there with a 95% CI of 0.92 to 1.00 on the high-vs-not figure (doi:10.1002/cpt.1184). That paper reports an ordinal regression with intervals, so it has no hard class boundaries and no three-class accuracy to put in the first column. We have not bootstrapped intervals on our own AUCs. At n=28, assume they are wide enough to overlap every row above.
"On the standard healthy-cell CiPA panel, a plain Kernik iPSC-CM AP model separates high-risk drugs at AUC ~0.91, competitive but below the adult-ventricular ORd/qNet gold standard and not better than a hERG-only margin on the high-risk call."
Three-class accuracy is the column that measures the product, because High, Intermediate or Low is what a read returns, and a free hERG-only margin beats us there. The margin is one drug in each split: 10 of 16 against our 9 of 16 blind, 18 of 28 against our 17 of 28 overall. Neither gap separates at this n, and neither classifier is good enough on this column to sell.
Ranking is where the multichannel model does better. ORd/qNet still leads on the high-risk call and a hERG-only margin matches us there, so the gain shows up on the safe-drug call, 0.85 against 0.77. Nine of the 28 drugs are Low, which makes it suggestive, not established. The errors also differ in severity: across all 28 the multichannel model never misses by two classes, while the hERG-only margin does it once. That is adjacent accuracy 1.00 against 0.96, and the single drug separating them is verapamil, a training compound. One drug is not a result. It is the only evidence we have that the fourth current changes the direction of the error, and it needs the blind split to confirm.
case 1 · dofetilide
the ground truth
CiPA class: High (training set; the panel carries 8 high-risk drugs).
input · channel-panel IC50s · free Cmax 2.0 nM
current
IC50 (nM)
Hill
entered the model
hERG (static fit)
4.87
0.93
yes
ICaL
260
1.16
yes
INa-peak
380
0.89
yes
Ito
18.8
0.77
no
IK1
394
0.77
no
INaL
7.53e+05
0.26
no
IKs
not measured
n/a
no
Three of the six measured currents never reached the model. Our four-current design carries hERG, ICaL, INa-peak and IKs, so Ito and IK1 were dropped even though the panel measured both, and Kernik-2019 has no distinct INaL current to block. Ito is the omission with teeth: at 18.8 nM it blocks 15% of the current at 1x free Cmax and 34% at 4x, and the model never saw it. IKs was not measured for dofetilide, so that input was empty.
The reference panel also carries two hERG fits for this drug, a static one at 4.87 nM and a dynamic-binding one at 1.46 nM. We scored the static fit. The two are not interchangeable. Only the dynamic value sits below Cmax.
output · predicted class and score
iPSC-CM multichannel
High
risk score 2.0
hERG-only baseline
High
score -0.386
The two scores. The iPSC-CM risk score is the largest fractional APD90 prolongation the model shows anywhere between 1x and 4x free Cmax. A cell that stops repolarizing is assigned the fixed ceiling value 2.0. The hERG-only score is -log10(IC50 / free Cmax), so zero means the IC50 sits at the free Cmax. Higher is riskier on both. The class boundaries were fit on the 12 training drugs and frozen: Low at or below -0.104 and High above 0.349 for the iPSC-CM score, Low at or below -2.034 and High above -0.589 for the hERG-only score. Those four numbers reproduce every call on this page.
Both models call it High, as the field expects. But the model has not graded the drug at all; the 2.0 is a ceiling because at this level of hERG block the cell stops repolarizing and the score pins there.
the mechanism
A textbook selective hERG blocker. The dose story is less dramatic than the reputation: the static IC50 of 4.87 nM sits above the 2.0 nM free Cmax, so at 1x the model blocks about 30% of IKr, reaching 61% at 4x.
Partial block is enough here because nothing offsets it. ICaL and INa-peak sit more than a hundred-fold above Cmax, so their block stays under 2% and 4% across the whole range. Repolarizing current is lost and no depolarizing current is lost with it. Verapamil, below, is the same picture with the offset present.
case 2 · verapamil · the hard multi-channel case
the ground truth
CiPA class: Low (training set).
input · channel-panel IC50s · free Cmax 81 nM
current
IC50 (nM)
Hill
hERG (static fit)
288
0.96
ICaL
202
1.1
The reference panel also measured INaL (IC50 7.03e+03 nM, Hill 1.03), but the model has no distinct INaL current, so that number went nowhere. INa-peak was never measured for verapamil. The model saw hERG and ICaL block, and nothing else.
output · predicted class and score
iPSC-CM multichannel
Intermediate
risk score 0.19
hERG-only baseline
High
score -0.551
The truth is Low, two classes below the hERG call. The multichannel model sits at Intermediate, one class away. Verapamil is the only Low drug in the whole 28-drug panel that either classifier called High, and the hERG-only margin is what called it.
reading the result
The CiPA literature calls verapamil a balanced blocker with low TdP risk because its calcium block offsets hERG block and limits repolarization delay (Vicente et al. 2017, doi:10.1002/cpt.896). A hERG-only margin calls verapamil High because it sees half the picture. Reading both channels pulls the call back toward the truth.
One class high is still wrong, and we have no clean story for why. Our validation runs did not isolate the cause; the record does not name verapamil.
The near miss cuts both ways. Verapamil is the drug behind the adjacent-accuracy difference above, the hERG-only margin fails it by 0.038 log units: the score is -0.551 against a frozen High boundary of -0.589. Move that boundary a hair and the classifier difference disappears. A model that loses on average accuracy can still fail in the safer direction, but one drug at 0.038 is not enough to claim it.
Neither case names a confirmatory experiment. These two runs score a reference panel whose answer is already published, so nothing needs confirmation. The identifiability step names an experiment for a compound whose class is in doubt. No worked example is on this site yet.
known limits, from our validation report
No late sodium (INaL). Kernik-2019 has no distinct INaL current, so INaL block is unrepresentable. INaL-blocking safe drugs lose their protective signal.
Static hERG block. The applied block is a static pore block. The state-dependent hERG binding model behind ORd/qNet's near-perfect result does not run here.
Healthy-cell substrate. A healthy-cell iPSC-CM model on a healthy-cell benchmark plays on the incumbent's home field. No patient or variant biology is in play.
where this leaves things
The model runs a recognized benchmark and lands mid-table: AUC 0.91 on the high-risk call, 0.85 against 0.77 on the safe-drug call. ORd/qNet wins the healthy-cell panel outright. That is the honest baseline. It is not the reason to call.
Weigh the numbers against three things. Both drugs above come from the 12-compound training set, so the risk thresholds were fit with them in view. The panel is 28 drugs, small enough that the gaps carry wide confidence intervals. And a healthy-cell benchmark tells you how the model reads a reference panel, not your compound.
Our prediction is directly checkable in your own lab because the read runs on the same cell your confirmatory assay uses. That is the reason to call.
when to use CiPA's model instead
when a class is all you need
You have an ion-channel panel and want a TdP-risk class on a healthy adult ventricular myocyte. CiPAORdv1.0 gives you that, free, and on the numbers above it is the stronger call. Use it. When the class comes back Intermediate, or you need the measurement that resolves the ambiguity, a class is not enough. That is where we come in.
what this substrate adds
You verify our prediction directly in your own lab, on your own compound, because the read runs on the same cell your confirmatory assay uses. ORd is an adult ventricular model, and nobody plates one.
CiPAORdv1.0 is free. It gives you a class, nothing more. We return the class, the per-current block, the competing mechanisms ranked, and the experiment that separates them. If a class is all you need, use theirs. If you need what to do next, call us. The first read is free on published or otherwise non-confidential channel data, in the same report format as the paid read, so you can judge the work before you buy it. Pricing is here.
AUC, three-class accuracy, risk scores and classes from the CiPA validation record (T-151, 2026-07-03). Per-drug IC50, Hill and Cmax values from the CiPA 28-drug reference dataset (T-150). Fractional block percentages are the Hill equation applied to those values at the stated multiple of free Cmax. The ORd/qNet row is Li et al. 2018, not our run.