IAML — Integrated AutoML for Medical Labs
IAML (Integrated AutoML for Medical Labs) is a Python framework developed by IIAS to make machine learning more accessible to clinical research teams. It brings preprocessing, model search and evaluation into one workflow for classification, regression and survival analysis on tabular data.
Researchers can inspect the steps of a selected pipeline, evaluate its predictions and generate explanations to discuss with clinicians and data scientists. Modular components let teams adapt the workflow to their study while keeping the methods available for review.
Clinical research workflow
- Build prediction pipelines: search preprocessing steps, models and their parameters through a Python API.
- Evaluate a study outcome: choose the metric and validation strategy, then assess the selected candidate on held-out data.
- Inspect and explain: describe pipeline steps, compute SHAP explanations and generate task-specific performance plots.
- Document an experiment: collect method references and optionally retain
cross-validation records with
keep_training_history=True.
The research guide shows how to use these outputs when reporting a study and recording the settings needed to repeat an experiment.
Installation
Use Python 3.10 or later and Git. Install IAML from GitHub:
python -m pip install "git+https://github.com/IIAS-Research/iaml.git"
The distribution is named PyIAML; the Python import is iaml.
How to run
Save this example as example.py and run it with python example.py.
It uses a dataset bundled with scikit-learn, so no dataset download is needed.
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from iaml import IAML
def main():
X, y = load_breast_cancer(return_X_y=True, as_frame=True)
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, stratify=y, random_state=42
)
automl = IAML(max_duration=30, max_workers=1)
candidates = automl.fit(X_train, y_train, verbose=0)
best_candidate = candidates[0]
predictions = best_candidate.predict(X_test)
scores = best_candidate.evaluate(X_test, y_test)
print("Predictions:", predictions[:5])
print("Test metrics:", scores)
if __name__ == "__main__":
main()
fit returns a list of fitted Candidate objects ordered by performance.
Prediction and evaluation are methods of a candidate. Keep the __main__ guard
when running scripts because training uses multiprocessing. max_duration sets
the search time budget; initialization and final fitting can take additional time.
Documentation
The user guides cover data preparation, model search, evaluation and interpretation:
- Getting started: prepare data and run an example.
- Usage: configure a search and evaluate predictions.
- Explainability: interpret model predictions.
- Research guide: report methods and record experiment settings.
- Component status: find available and experimental components.
Credits
- Rudy MERIEUX
- Robin BOURACHOT
- Hugo RUELLET
- Youssouf DAHLOUK
Metadata
Release files for PyIAML 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyiaml-1.0.0.tar.gz | 277.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyiaml-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 744.0 kB
Release files / pyiaml-1.0.0.tar.gz
| Download URL | pyiaml-1.0.0.tar.gz |
|---|---|
| Size | 277.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
85d5c780c8da955aa71ebbc2310979b768c61aeef347779946ac74aa27cbab77
|
|
BLAKE2b-256 checksum How to use checksums |
f00fff082b4f9e49efe151908846d78c917e9e7fb7c3b813ac1f7d5d61fb2f5f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.
Transparency logRelease files / pyiaml-1.0.0-py3-none-any.whl
| Download URL | pyiaml-1.0.0-py3-none-any.whl |
|---|---|
| Size | 466.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4573e5d5dff558fac6f8548f11713a2005eb21f7a5bb01af6b47ed7ac641742e
|
|
BLAKE2b-256 checksum How to use checksums |
8e21637d5d0cfb23a1f2810778d429bc21c8c437a809df197d56cc24f18c522e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 19, 2026.
Transparency log