diff --git a/extensions-builtin/Lora/extra_networks_lora.py b/extensions-builtin/Lora/extra_networks_lora.py index c2944a379..cb6989fb7 100644 --- a/extensions-builtin/Lora/extra_networks_lora.py +++ b/extensions-builtin/Lora/extra_networks_lora.py @@ -100,7 +100,7 @@ class ExtraNetworkLora(extra_networks.ExtraNetwork): network_hashes.append(f"{alias}: {shorthash}") if network_hashes: p.extra_generation_params["Lora hashes"] = ", ".join(network_hashes) - if len(names) > 0: + if len(names) > 0 and step == 0: shared.log.info(f'LoRA apply: {names} patch={t1-t0:.2f} load={t2-t1:.2f}') elif self.active: self.active = False diff --git a/modules/extra_networks.py b/modules/extra_networks.py index 3ee4acb5d..aa092b6c3 100644 --- a/modules/extra_networks.py +++ b/modules/extra_networks.py @@ -77,7 +77,10 @@ def activate(p, extra_network_data, step=0): for extra_network_args in extra_network_data.values(): stepwise = stepwise or is_stepwise(extra_network_args) functional = shared.opts.lora_functional - shared.opts.lora_functional = stepwise or functional + if shared.opts.lora_force_diffusers and stepwise: + shared.log.warning("Composable LoRA not compatible with 'lora_force_diffusers'") + stepwise = False + shared.opts.data['lora_functional'] = stepwise or functional for extra_network_name, extra_network_args in extra_network_data.items(): extra_network = extra_network_registry.get(extra_network_name, None) if extra_network is None: diff --git a/modules/processing_diffusers.py b/modules/processing_diffusers.py index 6f97ea36b..f832dd7c6 100644 --- a/modules/processing_diffusers.py +++ b/modules/processing_diffusers.py @@ -74,13 +74,7 @@ def process_diffusers(p: processing.StableDiffusionProcessing): raise AssertionError('Interrupted...') time.sleep(0.1) if hasattr(p, "extra_network_data"): - if shared.opts.lora_force_diffusers: - shared.log.warning("Composable LoRA not compatible with 'lora_force_diffusers'") - else: - functional = shared.opts.lora_functional - shared.opts.lora_functional = True - extra_networks.activate(p, p.extra_network_data, step=step) - shared.opts.lora_functional = functional + extra_networks.activate(p, p.extra_network_data, step=step) if latents is None: return kwargs elif shared.opts.nan_skip: