[0.8.0] - 2022-01-05
Added
- ✨ Add a
kedro mlflow modelify
command to export a pipeline as a mlflow model (#261) - 📝 Format code blocks in documentation with
blacken-docs
- 👷 Enforce the use of
black
andisort
in the CI to enforce style guidelines for developers
Changed
- ✨ 💥 The
pipeline_ml_factory
accepts 2 new argumentslog_model_kwargs
(which will be passed as is tomlflow.pyfunc.log_model
) andkpm_kwargs
(which will be passed as is toKedroPipelineModel
). This ensures perfect consistency with mlflow API and offers new possibility like saving the project source code alongside the model (#67). Note thatmodel_signature
,conda_env
andmodel_name
arguments are removed, and replace respectively bylog_model_kwargs["signature"]
,log_model_kwargs["conda_env"]
andlog_model_kwargs["artifact_path"]
. - ✨ 💥 The
KedroPipelineModel
custom mlflow model now accepts any kedroPipeline
as input (provided they have a single DataFrame input and a single output because this is an mlflow limitation) instead of onlyPipelineML
objects. This simplifies the API for user who want to customise the model logging (#171).KedroPipelineModel.__init__
argumentpipeline_ml
is renamedpipeline
to reflect this change. - 🗑️
kedro_mlflow.io.metrics.MlflowMetricsDataSet
is no longer deprecated because there is no alternative for now to log many metrics at the same time. - 💥 Refactor
mlflow.yml
to match mlflow's API (#77). To migrate projects withkedro<0.8.0
, please update theirmlflow.yml
withkedro mlflow init --force
command.
Fixed
- 🐛
KedroMlflowConfig.setup()
methods now sets the experiment globally to ensure all runs are launched under the experiment specified in the configuration even in interactive mode (#256).
Removed
- 🔥 💥
KedroMlflowConfig
andget_mlflow_config
were deprecated since0.7.3
and are now removed fromkedro_mlflow.framework.context
. Direct import must now usekedro_mlflow.config
.
�