Spaces:
Build error
Build error
File size: 932 Bytes
24eb05d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
import logging
import torch
from saicinpainting.training.trainers.default import DefaultInpaintingTrainingModule
def get_training_model_class(kind):
if kind == 'default':
return DefaultInpaintingTrainingModule
raise ValueError(f'Unknown trainer module {kind}')
def make_training_model(config):
kind = config.training_model.kind
kwargs = dict(config.training_model)
kwargs.pop('kind')
kwargs['use_ddp'] = config.trainer.kwargs.get('accelerator', None) == 'ddp'
logging.info(f'Make training model {kind}')
cls = get_training_model_class(kind)
return cls(config, **kwargs)
def load_checkpoint(train_config, path, map_location='cuda', strict=True):
model: torch.nn.Module = make_training_model(train_config)
state = torch.load(path, map_location=map_location)
model.load_state_dict(state['state_dict'], strict=strict)
model.on_load_checkpoint(state)
return model
|