aboutsummaryrefslogtreecommitdiffstats
path: root/modules/sd_models.py
diff options
context:
space:
mode:
authoralg-wiki <47810160+alg-wiki@users.noreply.github.com>2022-10-10 19:35:28 +0000
committerGitHub <noreply@github.com>2022-10-10 19:35:28 +0000
commitf0ab972f85b4a185e7ff74b6f325835f1135deff (patch)
tree1719b7d8019c44aa55d51432d708ce8c9ca325d3 /modules/sd_models.py
parentbc3e183b739913e7be91213a256f038b10eb71e9 (diff)
parent5da1ba0e91a81804dc911d34c9a2e6956a23199c (diff)
downloadstable-diffusion-webui-gfx803-f0ab972f85b4a185e7ff74b6f325835f1135deff.tar.gz
stable-diffusion-webui-gfx803-f0ab972f85b4a185e7ff74b6f325835f1135deff.tar.bz2
stable-diffusion-webui-gfx803-f0ab972f85b4a185e7ff74b6f325835f1135deff.zip
Merge branch 'master' into textual__inversion
Diffstat (limited to 'modules/sd_models.py')
-rw-r--r--modules/sd_models.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/modules/sd_models.py b/modules/sd_models.py
index e63d3c29..0a55b4c3 100644
--- a/modules/sd_models.py
+++ b/modules/sd_models.py
@@ -149,8 +149,13 @@ def load_model_weights(model, checkpoint_info):
model.half()
devices.dtype = torch.float32 if shared.cmd_opts.no_half else torch.float16
+ devices.dtype_vae = torch.float32 if shared.cmd_opts.no_half or shared.cmd_opts.no_half_vae else torch.float16
vae_file = os.path.splitext(checkpoint_file)[0] + ".vae.pt"
+
+ if not os.path.exists(vae_file) and shared.cmd_opts.vae_path is not None:
+ vae_file = shared.cmd_opts.vae_path
+
if os.path.exists(vae_file):
print(f"Loading VAE weights from: {vae_file}")
vae_ckpt = torch.load(vae_file, map_location="cpu")
@@ -158,6 +163,8 @@ def load_model_weights(model, checkpoint_info):
model.first_stage_model.load_state_dict(vae_dict)
+ model.first_stage_model.to(devices.dtype_vae)
+
model.sd_model_hash = sd_model_hash
model.sd_model_checkpoint = checkpoint_file
model.sd_checkpoint_info = checkpoint_info