aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2023-05-01 12:48:28 +0300
committerAUTOMATIC <16777216c@gmail.com>2023-05-01 12:48:28 +0300
commit74d249f6dda1406abe99a61509a7aff6673eadbc (patch)
tree410320f9deee996a1940c181925f9fedd07173b8
parent5e4a0e3d2413e49ad57972e1fc4b54b3109e310c (diff)
parent94754c60c5e4b63e0a656efcdd886ee5c34c24f2 (diff)
Merge branch 'release_candidate' into dev
-rw-r--r--modules/processing.py7
-rw-r--r--scripts/xyz_grid.py2
2 files changed, 6 insertions, 3 deletions
diff --git a/modules/processing.py b/modules/processing.py
index a48fff99..e8808beb 100644
--- a/modules/processing.py
+++ b/modules/processing.py
@@ -498,6 +498,11 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
stored_opts = {k: opts.data[k] for k in p.override_settings.keys()}
try:
+ # if no checkpoint override or the override checkpoint can't be found, remove override entry and load opts checkpoint
+ if sd_models.checkpoint_alisases.get(p.override_settings.get('sd_model_checkpoint')) is None:
+ p.override_settings.pop('sd_model_checkpoint', None)
+ sd_models.reload_model_weights()
+
for k, v in p.override_settings.items():
setattr(opts, k, v)
@@ -514,8 +519,6 @@ def process_images(p: StableDiffusionProcessing) -> Processed:
if p.override_settings_restore_afterwards:
for k, v in stored_opts.items():
setattr(opts, k, v)
- if k == 'sd_model_checkpoint':
- sd_models.reload_model_weights()
if k == 'sd_vae':
sd_vae.reload_vae_weights()
diff --git a/scripts/xyz_grid.py b/scripts/xyz_grid.py
index 398065d9..cfc7737b 100644
--- a/scripts/xyz_grid.py
+++ b/scripts/xyz_grid.py
@@ -86,7 +86,7 @@ def apply_checkpoint(p, x, xs):
info = modules.sd_models.get_closet_checkpoint_match(x)
if info is None:
raise RuntimeError(f"Unknown checkpoint: {x}")
- modules.sd_models.reload_model_weights(shared.sd_model, info)
+ p.override_settings['sd_model_checkpoint'] = info.hash
def confirm_checkpoints(p, xs):