multiple fixes

Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
Vladimir Mandic
2025-01-30 09:41:11 -05:00
parent 04ad0caa0c
commit d50d467a33
8 changed files with 46 additions and 11 deletions
+16 -1
View File
@@ -8,6 +8,9 @@ debug = shared.log.trace if os.environ.get('SD_FACE_DEBUG', None) is not None el
class Script(scripts.Script):
original_pipeline = None
original_prompt_attention = None
def title(self):
return 'Face: Multiple ID Transfers'
@@ -125,6 +128,9 @@ class Script(scripts.Script):
input_images[i] = Image.open(image['name'])
processed = None
self.original_pipeline = shared.sd_model
self.original_prompt_attention = shared.opts.prompt_attention
shared.opts.data['prompt_attention'] = 'fixed'
if mode == 'FaceID': # faceid runs as ipadapter in its own pipeline
from modules.face.insightface import get_app
app = get_app('buffalo_l')
@@ -135,7 +141,7 @@ class Script(scripts.Script):
from modules.face.insightface import get_app
app = get_app('buffalo_l')
from modules.face.photomaker import photo_maker
processed = photo_maker(p, app=app, input_images=input_images, model=pm_model, trigger=pm_trigger, strength=pm_strength, start=pm_start)
photo_maker(p, app=app, input_images=input_images, model=pm_model, trigger=pm_trigger, strength=pm_strength, start=pm_start)
elif mode == 'InstantID':
from modules.face.insightface import get_app
app=get_app('antelopev2')
@@ -164,3 +170,12 @@ class Script(scripts.Script):
images.save_image(image, path=p.outpath_samples, seed=p.all_seeds[i], prompt=p.all_prompts[i], info=info, p=p)
return processed
def after(self, p: processing.StableDiffusionProcessing, processed: processing.Processed, *args): # pylint: disable=unused-argument
if self.original_pipeline is not None:
shared.sd_model = self.original_pipeline
self.original_pipeline = None
if self.original_prompt_attention is not None:
shared.opts.data['prompt_attention'] = self.original_prompt_attention
self.original_prompt_attention = None
return processed