-
Notifications
You must be signed in to change notification settings - Fork 36
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
Make the KedroPipelineModel more portable #67
Comments
We have to make some tests to see how much it improves portability but this is indeed a very common problem for users of the I don't put it in the 0.4.0 milestone because I think we really need to think more about this one. |
…odel and KedroPipelineModel (#67)
…odel and KedroPipelineModel (#67)
…odel and KedroPipelineModel (#67)
Hi,
When logging the KedroPipelineModel, we try to log everything the model need, so a downstream tool can recreate an appropriate python environnement for running it. The elements that it need are :
python version
Can be easily infered
pickle version
Can be easily infered
artifacts
We manage well this part by getting appopriate ML Datasets from pipeline_ml
conda_env
What we can do
project source code
The mlflow pyfunc model (KedroPipelineModel) need the project src package code being present in the PYTHONPATH/sys path in order to load the model pickle.
Today we expect the user to package and store their source code as python package and adding it as dependencies in his conda_env. So he can use his model in another machine (or environnment).
Despite it's a good practise to treat the source code as a python package, that add some setup overhead for the user, and some of them just want it to worker out of the box. Bundling the source code with the model will streamline the user experience
We can pass the project package source code at the logging time see here
Mlflow will prepended the source code paths to the system path before the model is loaded.
That will prevent issues like this one
The text was updated successfully, but these errors were encountered: