diff --git a/extensions-builtin/Lora/networks.py b/extensions-builtin/Lora/networks.py index 5b363e8ca..b41041f95 100644 --- a/extensions-builtin/Lora/networks.py +++ b/extensions-builtin/Lora/networks.py @@ -48,6 +48,8 @@ convert_diffusers_name_to_compvis = lora_convert.convert_diffusers_name_to_compv def assign_network_names_to_compvis_modules(sd_model): + if sd_model is None: + return network_layer_mapping = {} if shared.native: if hasattr(shared.sd_model, 'text_encoder') and shared.sd_model.text_encoder is not None: diff --git a/html/reference.json b/html/reference.json index c75d48466..555171533 100644 --- a/html/reference.json +++ b/html/reference.json @@ -1,4 +1,11 @@ { + "Tempest SD-XL v0.1": { + "path": "TempestV0.1-Artistic.safetensors@https://huggingface.co/dataautogpt3/TempestV0.1/resolve/main/TempestV0.1-Artistic.safetensors?download=true", + "preview": "TempestV0.1-Artistic.jpg", + "desc": "The TempestV0.1 Initiative is a powerhouse in image generation, leveraging an unparalleled dataset of over 6 million images. The collection's vast scale, with resolutions from 1400x2100 to 4800x7200, encompasses 200GB of high-quality content.", + "extras": "width: 2048, height: 1024, sampler: DEIS, steps: 40, cfg_scale: 6.0" + }, + "Juggernaut SD-XL XI": { "path": "juggernautXL_juggXIByRundiffusion.safetensors@https://civitai.com/api/download/models/782002", "preview": "juggernautXL_v9Rundiffusionphoto2.jpg", @@ -45,13 +52,6 @@ "extras": "width: 1024, height: 1024, sampler: DPM SDE, steps: 8, cfg_scale: 2.0" }, - "Tempest SD-XL v0.1": { - "path": "TempestV0.1-Artistic.safetensors@https://huggingface.co/dataautogpt3/TempestV0.1/resolve/main/TempestV0.1-Artistic.safetensors?download=true", - "preview": "TempestV0.1-Artistic.jpg", - "desc": "The TempestV0.1 Initiative is a powerhouse in image generation, leveraging an unparalleled dataset of over 6 million images. The collection's vast scale, with resolutions from 1400x2100 to 4800x7200, encompasses 200GB of high-quality content.", - "extras": "width: 2048, height: 1024, sampler: DEIS, steps: 40, cfg_scale: 6.0" - }, - "SDXS DreamShaper 512": { "path": "IDKiro/sdxs-512-dreamshaper", "preview": "IDKiro--sdxs-512-dreamshaper.jpg", diff --git a/modules/modelloader.py b/modules/modelloader.py index 96babbed6..5894dad63 100644 --- a/modules/modelloader.py +++ b/modules/modelloader.py @@ -311,12 +311,7 @@ def find_diffuser(name: str): if len(repo) > 0: return repo['name'] hf_api = hf.HfApi() - hf_filter = hf.ModelFilter( - model_name=name, - # task='text-to-image', - library=['diffusers'], - ) - models = list(hf_api.list_models(filter=hf_filter, full=True, limit=20, sort="downloads", direction=-1)) + models = list(hf_api.list_models(model_name=name, library=['diffusers'], full=True, limit=20, sort="downloads", direction=-1)) shared.log.debug(f'Searching diffusers models: {name} {len(models) > 0}') if len(models) > 0: return models[0].id diff --git a/modules/paths.py b/modules/paths.py index 6f864da7f..9a73a9f91 100644 --- a/modules/paths.py +++ b/modules/paths.py @@ -30,7 +30,7 @@ extensions_dir = os.path.join(data_path, "extensions") extensions_builtin_dir = "extensions-builtin" sd_configs_path = os.path.join(script_path, "configs") sd_default_config = os.path.join(sd_configs_path, "v1-inference.yaml") -sd_model_file = cli.ckpt or os.path.join(script_path, 'model.ckpt') # not used +sd_model_file = cli.ckpt or os.path.join(script_path, 'model.safetensors') # not used default_sd_model_file = sd_model_file # not used debug = log.trace if os.environ.get('SD_PATH_DEBUG', None) is not None else lambda *args, **kwargs: None debug('Trace: PATH') diff --git a/modules/sd_models.py b/modules/sd_models.py index 0c62d00c2..1f9d37176 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -261,7 +261,7 @@ def select_checkpoint(op='model'): return None # checkpoint_info = next(iter(checkpoints_list.values())) if model_checkpoint is not None: - if model_checkpoint != 'model.ckpt' and model_checkpoint != 'stabilityai/stable-diffusion-xl-base-1.0': + if model_checkpoint != 'model.safetensors' and model_checkpoint != 'stabilityai/stable-diffusion-xl-base-1.0': shared.log.warning(f'Load {op}: select="{model_checkpoint}" not found') else: shared.log.info("Selecting first available checkpoint") @@ -1035,7 +1035,7 @@ def load_diffuser(checkpoint_info=None, already_loaded_state_dict=None, timer=No if shared.opts.diffusers_pipeline == 'Custom Diffusers Pipeline' and len(shared.opts.custom_diffusers_pipeline) > 0: shared.log.debug(f'Model pipeline: pipeline="{shared.opts.custom_diffusers_pipeline}"') diffusers_load_config['custom_pipeline'] = shared.opts.custom_diffusers_pipeline - if shared.opts.data.get('sd_model_checkpoint', '') == 'model.ckpt' or shared.opts.data.get('sd_model_checkpoint', '') == '': + if shared.opts.data.get('sd_model_checkpoint', '') == 'model.safetensors' or shared.opts.data.get('sd_model_checkpoint', '') == '': shared.opts.data['sd_model_checkpoint'] = "stabilityai/stable-diffusion-xl-base-1.0" if op == 'model' or op == 'dict': @@ -1351,7 +1351,8 @@ def load_diffuser(checkpoint_info=None, already_loaded_state_dict=None, timer=No errors.display(e, "Model") devices.torch_gc(force=True) - script_callbacks.model_loaded_callback(sd_model) + if sd_model is not None: + script_callbacks.model_loaded_callback(sd_model) shared.log.info(f"Load {op}: time={timer.summary()} native={get_native(sd_model)} memory={memory_stats()}") diff --git a/modules/shared.py b/modules/shared.py index e98dc8383..91bceba38 100644 --- a/modules/shared.py +++ b/modules/shared.py @@ -270,7 +270,7 @@ def list_checkpoint_tiles(): import modules.sd_models # pylint: disable=W0621 return modules.sd_models.checkpoint_tiles() -default_checkpoint = list_checkpoint_tiles()[0] if len(list_checkpoint_tiles()) > 0 else "model.ckpt" +default_checkpoint = list_checkpoint_tiles()[0] if len(list_checkpoint_tiles()) > 0 else "model.safetensors" def is_url(string): diff --git a/webui.py b/webui.py index 9a980e641..e2e7285db 100644 --- a/webui.py +++ b/webui.py @@ -155,7 +155,7 @@ def initialize(): def load_model(): - if not shared.opts.sd_checkpoint_autoload or (shared.cmd_opts.ckpt is not None and shared.cmd_opts.ckpt.lower() != 'none'): + if not shared.opts.sd_checkpoint_autoload and shared.cmd_opts.ckpt is not None: log.debug('Model auto load disabled') else: shared.state.begin('Load')