Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The kedro-mlflow version used to create a KedroPipelineModel should be enforced #104

Closed
Galileo-Galilei opened this issue Oct 26, 2020 · 1 comment
Labels
enhancement New feature or request need-design-decision Several ways of implementation are possible and one must be chosen

Comments

@Galileo-Galilei
Copy link
Owner

Description

The KedroPipelineModel API is not stable yet and slightly evolves between releases. I suggest that we store the kedro-mlflow version used to create the class when logging it.

Context

The API breaking changes may prevent users to load a model from mlflow if they do not have the same version as the one used to save it. If the environment.yml is not restrictive enough, some users may experience some KedroPipelineModel errors which are not informative on the problem. This especially happens when a model is loaded interactively (when the model is packaged with the environment.yml, the version is supposed to be pinned.

Possible Implementation

Add an attribute to KedroPipelineModel with the kedro-mlflow used for creating the model.

Possible Alternatives

Do not specify it, and assume user will properly fill the environment.yml file and eventually notice the conflict.

@Galileo-Galilei Galileo-Galilei added enhancement New feature or request need-design-decision Several ways of implementation are possible and one must be chosen labels Oct 26, 2020
@Galileo-Galilei
Copy link
Owner Author

This is linked to #67: we should have a good default environment. I close this as a duplicate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request need-design-decision Several ways of implementation are possible and one must be chosen
Projects
None yet
Development

No branches or pull requests

1 participant