diff --git a/modules/hidiffusion/__init__.py b/modules/hidiffusion/__init__.py index 50a52630a..e8b5f0fd0 100644 --- a/modules/hidiffusion/__init__.py +++ b/modules/hidiffusion/__init__.py @@ -10,7 +10,7 @@ def apply_hidiffusion(p, model_type): shared.log.warning(f'HiDiffusion: class={shared.sd_model.__class__.__name__} not supported') return remove_hidiffusion(p) - if p.hidiffusion: + if getattr(p, 'hidiffusion', False) is True: t0 = time.time() hidiffusion.is_aggressive_raunet = shared.opts.hidiffusion_steps > 0 hidiffusion.aggressive_step = shared.opts.hidiffusion_steps diff --git a/modules/prompt_parser_diffusers.py b/modules/prompt_parser_diffusers.py index bfe267e2e..7f6b90d6d 100644 --- a/modules/prompt_parser_diffusers.py +++ b/modules/prompt_parser_diffusers.py @@ -130,6 +130,8 @@ def get_tokens(msg, prompt): def encode_prompts(pipe, p, prompts: list, negative_prompts: list, steps: int, clip_skip: typing.Optional[int] = None): + if getattr(p, 'hidiffusion', False) is True: + cache.clear() if 'StableDiffusion' not in pipe.__class__.__name__ and 'DemoFusion' not in pipe.__class__.__name__ and 'StableCascade' not in pipe.__class__.__name__: shared.log.warning(f"Prompt parser not supported: {pipe.__class__.__name__}") return