ml.trainers.mixins.monitor_process

Defines a base trainer mixin for handling subprocess monitoring jobs.

class ml.trainers.mixins.monitor_process.MonitorProcessConfig(name: str = '???', exp_name: str = '${ml.exp_name:null}', exp_dir: str = '???', log_dir_name: str = 'logs', use_double_weight_precision: bool = False, checkpoint: ml.trainers.base.CheckpointConfig = <factory>)[source]

Bases: BaseTrainerConfig

class ml.trainers.mixins.monitor_process.MonitorProcessMixin(config: MonitorProcessConfigT)[source]

Bases: BaseTrainer[MonitorProcessConfigT, ModelT, TaskT], Generic[MonitorProcessConfigT, ModelT, TaskT]

Defines a base trainer mixin for handling monitoring processes.

on_training_start(state: State, task: TaskT, model: ModelT, optim: Optimizer | dict[str, torch.optim.optimizer.Optimizer], lr_sched: SchedulerAdapter | dict[str, ml.lr_schedulers.base.SchedulerAdapter]) None[source]
on_training_end(state: State, task: TaskT, model: ModelT, optim: Optimizer | dict[str, torch.optim.optimizer.Optimizer], lr_sched: SchedulerAdapter | dict[str, ml.lr_schedulers.base.SchedulerAdapter]) None[source]