support requirements.txt
schuderer opened this issue · 1 comments
Let's discuss how/whether it makes sense to let users provide their own requirements.txt files that mllaunchpad then makes sure to install (for a real project, this probably would need to be a frozen requirements.txt, specifically for the target platform and referenced from the config). If we do this, this probably entails mllaunchpad also creating a venv for the project (not installing stuff in a global environment).
I personally prefer to leave the user the freedom of how to organize their projects, but maybe it's sensible to make this an optional help thing, e.g. create a command line switch --deploy or such which creates a venv in a specified location, installs the requirements.txt, and maybe immediately trains (and persists) the model.
Maybe also a good idea to provide a project template (with a template config.yml, requirements.txt, maybe raml, template model.py, and maybe some general python project specifics like gitignore or such)
How to organize your mllaunchpad
-using project (including dependency management) will be up to you and kept separate from core mllaunchpad
.
Instead of baking these aspects into the core package, we will create project templates and/or supporting packages for different usage scenarios for you to rely on.
One first such project template is https://github.com/schuderer/mllaunchpad-template