A kedro-plugin to use mlflow in your kedro projects
Project description
Theme | Status |
---|---|
Python Version | |
Latest PyPI Release | |
Code quality check | |
master Branch Build |
|
Documentation Build | |
License | |
Code Style |
Release
The release history centralizes packages improvements across time. Coming soon:
- enhanced documentation, especially with detailed tutorials for
PipelineML
class and advanced versioning parametrisation - better integration to Mlflow Projects
- better integration to Mlflow Model Registry
- better CLI experience and bug fixes
- ability to retrieve parameters / re-run a former run for reproducibility / collaboration
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 :
- versioning: 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
- model packaging:
kedro-mlflow
offers a convenient API to register a pipeline as amodel
in the mlflow sense. Consequently, you can API-fy or serve your kedro pipeline with one line of code, or share a model with without worrying of the preprocessing to be made for further use. This is directly linked to Mlflow Models
How do I install kedro-mlflow?
Important: kedro-mlflow is only compatible with kedro>0.16.0
. If you have a project created with an older version of Kedro
, see this migration guide.
kedro-mlflow
is available on PyPI, so you can install it with pip
:
pip install kedro-mlflow
If you want to use the develop
version of the package which is the most up to date, you can install the package from github:
pip install --upgrade git+https://github.com/quantumblacklabs/kedro.git@develop
I strongly recommend to use conda
(a package manager) to create an environment and to read kedro
installation guide.
Getting started:
The documentation contains:
- A "hello world" example which demonstrates how you to setup your project, version parameters and datasets, and browse your runs in the UI.
- A more detailed tutorial to show more advanced features (mlflow configuration through the plugin, package and serve a kedro
Pipeline
...)
Some frequently asked questions on more advanced features:
- You want to log additional metrics to the run? -> See
mlflow.log_metric
and add it to your functions ! - You want to log nice dataviz of your pipeline that you register with
MatplotlibWriter
? -> TryMlflowDataSet
to 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
can fit your needs - You want to do something that is not straigthforward with current implementation? Open an issue, and let's see what happens!
Can I contribute?
I'd be happy to receive help to maintain and improve the package. Please check the contributing guidelines.
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.