diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-08-04 19:05:40 +0000 |
---|---|---|
committer | AUTOMATIC1111 <16777216c@gmail.com> | 2023-08-04 19:05:50 +0000 |
commit | 45601766409e531d2b4ee512bf1433600f140183 (patch) | |
tree | 44fc1f32cd7d8a51242d75d76c7b300d69f6d8ae /modules/sd_vae.py | |
parent | 31a9966b9d76cb9a2dd7c09c47e236fae33836e2 (diff) | |
download | stable-diffusion-webui-gfx803-45601766409e531d2b4ee512bf1433600f140183.tar.gz stable-diffusion-webui-gfx803-45601766409e531d2b4ee512bf1433600f140183.tar.bz2 stable-diffusion-webui-gfx803-45601766409e531d2b4ee512bf1433600f140183.zip |
added VAE selection to checkpoint user metadata
Diffstat (limited to 'modules/sd_vae.py')
-rw-r--r-- | modules/sd_vae.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/modules/sd_vae.py b/modules/sd_vae.py index 84271db0..0bd5e19b 100644 --- a/modules/sd_vae.py +++ b/modules/sd_vae.py @@ -1,6 +1,6 @@ import os import collections -from modules import paths, shared, devices, script_callbacks, sd_models +from modules import paths, shared, devices, script_callbacks, sd_models, extra_networks import glob from copy import deepcopy @@ -16,6 +16,7 @@ checkpoint_info = None checkpoints_loaded = collections.OrderedDict() + def get_base_vae(model): if base_vae is not None and checkpoint_info == model.sd_checkpoint_info and model: return base_vae @@ -100,6 +101,16 @@ def resolve_vae(checkpoint_file): if shared.cmd_opts.vae_path is not None: return shared.cmd_opts.vae_path, 'from commandline argument' + metadata = extra_networks.get_user_metadata(checkpoint_file) + vae_metadata = metadata.get("vae", None) + if vae_metadata is not None and vae_metadata != "Automatic": + if vae_metadata == "None": + return None, None + + vae_from_metadata = vae_dict.get(vae_metadata, None) + if vae_from_metadata is not None: + return vae_from_metadata, "from user metadata" + is_automatic = shared.opts.sd_vae in {"Automatic", "auto"} # "auto" for people with old config vae_near_checkpoint = find_vae_near_checkpoint(checkpoint_file) |