Skip to content

Introduction#

Why should you use this template?#

Why should you use a template in the first place?#

For many good reasons, which are very well described here in a similar project! 😊

Other good reads:

Why should you use this template (instead of another)?#

You are welcome (and encouraged) to use other similar templates which, at the time of writing this, have significantly better documentation. However, there are several advantages to using this particular template:

  • ❗Support for both Jax and Torch with PyTorch-Lightning (See the Jax example)❗
  • Your Hydra configs will have an Auto-Generated YAML schemas 🔥
  • A comprehensive suite of automated tests for new algorithms, datasets and networks
  • Easy development inside a devcontainer with VsCode
  • Tailor-made for ML researchers that run their jobs on SLURM clusters (with default configurations for the Mila and DRAC clusters.)
  • Rich typing of all parts of the source code

This template is aimed for ML researchers that run their jobs on SLURM clusters. The target audience is researchers and students at Mila. This template should still be useful for others outside of Mila that use PyTorch-Lightning and Hydra.

Main concepts#

Datamodule#

Network#

Algorithm#