Unverified Commit 5ba04f9e authored by Nicolas Patry's avatar Nicolas Patry
Browse files

Attempting to solve slow loads for `safetensors`.

Fixes #5893
parent 4af3ca53
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -168,7 +168,10 @@ def get_state_dict_from_checkpoint(pl_sd):
def read_state_dict(checkpoint_file, print_global_state=False, map_location=None):
    _, extension = os.path.splitext(checkpoint_file)
    if extension.lower() == ".safetensors":
        pl_sd = safetensors.torch.load_file(checkpoint_file, device=map_location or shared.weight_load_location)
        device = map_location or shared.weight_load_location
        if device is None:
            device = "cuda:0" if torch.cuda.is_available() else "cpu"
        pl_sd = safetensors.torch.load_file(checkpoint_file, device=device)
    else:
        pl_sd = torch.load(checkpoint_file, map_location=map_location or shared.weight_load_location)