A kedro-plugin to use mlflow in your kedro projects
Project description
General informations
| Package manager | Software repository | Latest release | Total downloads |
|---|---|---|---|
pip |
PyPI | ||
conda |
conda-forge |
Code health
| Branch | Tests | Coverage | Links | Documentation | Deployment | Activity |
|---|---|---|---|---|---|---|
master |
If you like the repo, please give it a :star:
What is kedro-mlflow?
kedro-mlflow is a kedro-plugin for lightweight and portable integration of mlflow capabilities inside kedro projects. It enforces Kedro principles to make mlflow usage as production ready as possible. Its core functionalities are :
- experiment tracking:
kedro-mlflowintends to enhance reproducibility for machine learning experimentation. Withkedro-mlflowinstalled, you can effortlessly register your parameters or your datasets with minimal configuration in a kedro run. Later, you will be able to browse your runs in the mlflow UI, and retrieve the runs you want. This is directly linked to Mlflow Tracking. - pipeline as model:
kedro-mlflowintends to be be an agnostic machine learning framework for people who want to write portable, production ready machine learning pipelines. It offers a convenient API to convert a Kedro pipeline to amodelin the mlflow sense. This "model" is self contained : it includes preprocessing and postprocessing steps as well as artifacts produced during training. Consequently, you can serve your Kedro pipeline as an API with one line of code and share. This is directly linked to Mlflow Models.
How do I install kedro-mlflow?
Important: kedro-mlflow is only compatible with kedro>=0.16.0 and mlflow>=1.0.0. If you have a project created with an older version of Kedro, see this migration guide.
You can install kedro-mlflow with several tools and from several packaging platforms:
| Logo | Platform | Command |
|---|---|---|
| PyPI | pip install kedro-mlflow or uv pip install kedro-mlflow |
|
| Conda Forge | conda install kedro-mlflow --channel conda-forge |
|
| GitHub | pip install --upgrade git+https://github.com/Galileo-Galilei/kedro-mlflow.git |
I strongly recommend to use a package manager (like conda) to create a virtual environment and to read kedro installation guide.
Getting started
The documentation contains:
- A quickstart in 1 mn example which demonstrates how you to setup your project, track parameters and datasets, and browse your runs in the UI.
- A section for advanced experiment tracking to show more advanced features (mlflow configuration through the plugin, package and serve a kedro
Pipeline...) - A section to demonstrate how to use
kedro-mlflowto package kedro pipelines as mlflow models to deliver production ready pipelines and serve them. This section comes with an example repo you can clone and try out.
Some frequently asked questions on more advanced features:
- You want to log additional metrics to the run? -> Try
MlflowMetricsHistoryDataset! - You want to log nice dataviz of your pipeline that you register with
MatplotlibWriter? -> TryMlflowArtifactDatasetto log any local files (.png, .pkl, .csv...) automagically! - You want to create easily an API to share your awesome model to anyone? -> See if
pipeline_ml_factorycan fit your needs - You want to do something that is not straigthforward with current implementation? Open an issue, and let's see what happens!
Release and roadmap
The release history centralizes packages improvements across time. The main features coming in next releases are visible on the repo's project. Feel free to upvote/downvote and discuss prioritization in associated issues.
Disclaimer
This package is still in active development. We use SemVer principles to version our releases. Since we reached 1.0.0 (compatible with kedro==1.X and mlflow==1.X or 2.X) on 27th of July 2025, breaking changes will lead to major version number increment, while releases which do not introduce breaking changes in the API will lead to minor or patch (for bugs) version number increment. Current kedro-mlflow 2.0.2 is only compatible with mlflow==3.x
If you want to migrate from an older version of kedro-mlflow to most recent ones, see the migration guide.
Can I contribute?
We'd be happy to receive help to maintain and improve the package. Any PR will be considered (from typo in the docs to core features add-on) Please check the contributing guidelines.
Main contributors
The following people actively maintain, enhance and discuss design to make this package as good as possible:
Many thanks to Adrian Piotr Kruszewski for his past work on the repo.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kedro_mlflow-2.0.2.tar.gz.
File metadata
- Download URL: kedro_mlflow-2.0.2.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cc977a8915fd6feea1cabd3d3f53521837f5d5bf42c9b18d22c21292b832476
|
|
| MD5 |
ec575c67da01e98525ab0425c3d1a874
|
|
| BLAKE2b-256 |
f9b07629948b812783765c7f8da42a8106b09eebad79ee0967e691bae07625d7
|
Provenance
The following attestation bundles were made for kedro_mlflow-2.0.2.tar.gz:
Publisher:
publish.yml on Galileo-Galilei/kedro-mlflow
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kedro_mlflow-2.0.2.tar.gz -
Subject digest:
2cc977a8915fd6feea1cabd3d3f53521837f5d5bf42c9b18d22c21292b832476 - Sigstore transparency entry: 955795937
- Sigstore integration time:
-
Permalink:
Galileo-Galilei/kedro-mlflow@49c97648093e71c0cc2e34cb1b47dd4beefff913 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/Galileo-Galilei
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@49c97648093e71c0cc2e34cb1b47dd4beefff913 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file kedro_mlflow-2.0.2-py3-none-any.whl.
File metadata
- Download URL: kedro_mlflow-2.0.2-py3-none-any.whl
- Upload date:
- Size: 54.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f380132c5f3c25b989474cd66086c4a8cdd59693e5040daf5945f800bb2b0e88
|
|
| MD5 |
a4df3cedab2a6e7bdc335fe03b6db63a
|
|
| BLAKE2b-256 |
e2a3de389a70a260074611fdf83cbf8b22b09d1656fa81c8d6326ca7b88fa78a
|
Provenance
The following attestation bundles were made for kedro_mlflow-2.0.2-py3-none-any.whl:
Publisher:
publish.yml on Galileo-Galilei/kedro-mlflow
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
kedro_mlflow-2.0.2-py3-none-any.whl -
Subject digest:
f380132c5f3c25b989474cd66086c4a8cdd59693e5040daf5945f800bb2b0e88 - Sigstore transparency entry: 955795951
- Sigstore integration time:
-
Permalink:
Galileo-Galilei/kedro-mlflow@49c97648093e71c0cc2e34cb1b47dd4beefff913 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/Galileo-Galilei
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@49c97648093e71c0cc2e34cb1b47dd4beefff913 -
Trigger Event:
workflow_dispatch
-
Statement type: