From 7d76f825a2bcc0fea976ff9cc2a476e08f5c099c Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Wed, 12 Feb 2025 16:41:18 -0500 Subject: [PATCH] mod handle prompt-list Signed-off-by: Vladimir Mandic --- modules/images_namegen.py | 5 +++++ scripts/mixture_of_diffusers.py | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/images_namegen.py b/modules/images_namegen.py index 7cad39b92..b30eb8bdb 100644 --- a/modules/images_namegen.py +++ b/modules/images_namegen.py @@ -71,6 +71,8 @@ class FilenameGenerator: self.prompt = prompt else: self.prompt = p.prompt if p is not None else '' + if isinstance(self.prompt, list): + self.prompt = ' '.join(self.prompt) self.image = image if not grid: self.batch_number = NOTHING if self.p is None or getattr(self.p, 'batch_size', 1) == 1 else (self.p.batch_index + 1 if hasattr(self.p, 'batch_index') else NOTHING) @@ -205,6 +207,8 @@ class FilenameGenerator: break pattern, arg = m.groups() pattern_args.insert(0, arg) + if isinstance(pattern, list): + pattern = ' '.join(pattern) fun = self.replacements.get(pattern.lower(), None) if fun is not None: try: @@ -212,6 +216,7 @@ class FilenameGenerator: replacement = fun(self, *pattern_args) except Exception as e: replacement = None + errors.display(e, 'Filename apply pattern') shared.log.error(f'Filename apply pattern: {x} {e}') if replacement == NOTHING: continue diff --git a/scripts/mixture_of_diffusers.py b/scripts/mixture_of_diffusers.py index 79d403c59..463948d36 100644 --- a/scripts/mixture_of_diffusers.py +++ b/scripts/mixture_of_diffusers.py @@ -82,11 +82,13 @@ class Script(scripts.Script): return None if not self.check_dependencies(): return None + [x_tiles, y_tiles, x_overlap, y_overlap], prompts = args[:4], args[4:] + if max(x_tiles, y_tiles) <= 1: + return None from modules.mod import StableDiffusionXLTilingPipeline self.orig_pipe = shared.sd_model self.orig_attn = shared.opts.prompt_attention - [x_tiles, y_tiles, x_overlap, y_overlap], prompts = args[:4], args[4:] p.prompt = shared.prompt_styles.apply_styles_to_prompt(p.prompt, p.styles) p.negative_prompt = shared.prompt_styles.apply_negative_styles_to_prompt(p.negative_prompt, p.styles) p.prompts, guidance = self.get_prompts(x_tiles, y_tiles, prompts, p.prompt, p.cfg_scale)