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. IAML includes a broad set of built-in methods. Go further with customization. Add your team's preprocessing steps, models, metrics, validation splitters and search optimizers to adapt the workflow to your research domain. These contributions can be shared and reused across studies. The extension guide shows how to get started.
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:
python -m pip install PyIAML
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
if __name__ == "__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, stratify=y, random_state=42
)
search = IAML(max_duration=30, max_workers=1)
search.fit(X_train, y_train)
chosen_model = search.chosen_candidate
print(chosen_model.evaluate(X_test, y_test))
chosen_model is the selected model, including its preprocessing.
evaluate scores it on the held-out test set. The dataset labels are 0 for
malignant and 1 for benign. Keep the __main__ guard because training uses
multiprocessing. The example uses one worker and a 30-second search budget.
Final fitting can take additional time.
Documentation
The user guides cover data preparation, model search, evaluation and interpretation:
- Quick Start: install IAML and run an example.
- 01 / Build: prepare data and configure a search.
- 02 / Evaluate: assess predictions on held-out data.
- 03 / Explain: inspect methods and interpret feature contributions.
- Study reporting: save outputs and record experiment settings.
- Extending IAML: add reusable methods for your team's research.
- Component availability: explore the main component families and their API documentation.
Credits
- Rudy MERIEUX
- Robin BOURACHOT
- Hugo RUELLET
- Youssouf DAHLOUK
Metadata
Release files for PyIAML 1.0.1
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.1.tar.gz | 277.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyiaml-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 744.2 kB
Release files / pyiaml-1.0.1.tar.gz
| Download URL | pyiaml-1.0.1.tar.gz |
|---|---|
| Size | 277.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6853e3a9d7950654d41dfd904ace7dcd83e6d54344c0de900a5b7b7695fadd2b
|
|
BLAKE2b-256 checksum How to use checksums |
938299cfdb4a99f9c2cb2695893302eb73a4efbee5b9da3a5ff9780e123f6c17
|
| 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 20, 2026.
Transparency logRelease files / pyiaml-1.0.1-py3-none-any.whl
| Download URL | pyiaml-1.0.1-py3-none-any.whl |
|---|---|
| Size | 466.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c63c67186b152cf6ed65f3dec8c8de00bfbee2cd69f022ad04d6b684fcd553d3
|
|
BLAKE2b-256 checksum How to use checksums |
479b8478ba1d4431079e4c0e2ea832092e3f259d4a20a79631c6ea98ef1040b5
|
| 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 20, 2026.
Transparency log