""" Runs a model on the CPU on a single node. """ import os from argparse import ArgumentParser from pytorch_lightning import Trainer, seed_everything from pl_examples.models.lightning_template import LightningTemplateModel seed_everything(234) def main(args): """ Main training routine specific for this project. """ # ------------------------ # 1 INIT LIGHTNING MODEL # ------------------------ model = LightningTemplateModel(**vars(args)) # ------------------------ # 2 INIT TRAINER # ------------------------ trainer = Trainer.from_argparse_args(args) # ------------------------ # 3 START TRAINING # ------------------------ trainer.fit(model) def run_cli(): # ------------------------ # TRAINING ARGUMENTS # ------------------------ # these are project-wide arguments root_dir = os.path.dirname(os.path.realpath(__file__)) parent_parser = ArgumentParser(add_help=False) # each LightningModule defines arguments relevant to it parser = LightningTemplateModel.add_model_specific_args(parent_parser, root_dir) parser = Trainer.add_argparse_args(parser) args = parser.parse_args() # --------------------- # RUN TRAINING # --------------------- main(args) if __name__ == '__main__': run_cli()