From fdb5e240c67901599379dd7c49a1ccbfcf7b53f0 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Fri, 31 May 2024 14:45:55 -0400 Subject: [PATCH] fix face scripts --- TODO.md | 1 + modules/face/faceid.py | 5 +++-- modules/face/instantid.py | 3 +++ modules/face/photomaker.py | 3 +++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/TODO.md b/TODO.md index 971f865f5..14dc2c73a 100644 --- a/TODO.md +++ b/TODO.md @@ -21,6 +21,7 @@ Main ToDo list can be found at [GitHub projects](https://github.com/users/vladma - include reference styles - lora: sc lora, dora, etc - controlnet: additional models +- resadapter: ## Experimental diff --git a/modules/face/faceid.py b/modules/face/faceid.py index 4bfa9a94b..f400f038a 100644 --- a/modules/face/faceid.py +++ b/modules/face/faceid.py @@ -205,8 +205,9 @@ def face_id( faceid_model.set_scale(scale) extra_network_data = None - processing.process_init(p) - p.init(p.all_prompts, p.all_seeds, p.all_subseeds) + if p.all_prompts is None or len(p.all_prompts) == 0: + processing.process_init(p) + p.init(p.all_prompts, p.all_seeds, p.all_subseeds) for n in range(p.n_iter): p.iteration = n p.prompts = p.all_prompts[n * p.batch_size:(n+1) * p.batch_size] diff --git a/modules/face/instantid.py b/modules/face/instantid.py index 1835e8e80..9c7c16f61 100644 --- a/modules/face/instantid.py +++ b/modules/face/instantid.py @@ -64,6 +64,9 @@ def instant_id(p: processing.StableDiffusionProcessing, app, source_images, stre shared.sd_model.to(dtype=devices.dtype) # pipeline specific args + if p.all_prompts is None or len(p.all_prompts) == 0: + processing.process_init(p) + p.init(p.all_prompts, p.all_seeds, p.all_subseeds) orig_prompt_attention = shared.opts.prompt_attention shared.opts.data['prompt_attention'] = 'Fixed attention' # otherwise need to deal with class_tokens_mask p.task_args['image_embeds'] = face_embeds[0].shape # placeholder diff --git a/modules/face/photomaker.py b/modules/face/photomaker.py index 219b6497d..c8f58b42a 100644 --- a/modules/face/photomaker.py +++ b/modules/face/photomaker.py @@ -17,6 +17,9 @@ def photo_maker(p: processing.StableDiffusionProcessing, input_images, trigger, return None # validate prompt + if p.all_prompts is None or len(p.all_prompts) == 0: + processing.process_init(p) + p.init(p.all_prompts, p.all_seeds, p.all_subseeds) trigger_ids = shared.sd_model.tokenizer.encode(trigger) + shared.sd_model.tokenizer_2.encode(trigger) prompt_ids1 = shared.sd_model.tokenizer.encode(p.all_prompts[0]) prompt_ids2 = shared.sd_model.tokenizer_2.encode(p.all_prompts[0])