schuderer/mllaunchpad

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