From 2f9f2c5c52fbba10bfdb326a6bd9b2b2ae05c6a8 Mon Sep 17 00:00:00 2001 From: Vladimir Mandic Date: Sat, 22 Jun 2024 18:00:01 -0400 Subject: [PATCH] fix inpaint pipeline missing requires_aesthetics_score --- modules/processing_args.py | 2 ++ modules/sd_models.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/modules/processing_args.py b/modules/processing_args.py index 163c51efd..7f47b6352 100644 --- a/modules/processing_args.py +++ b/modules/processing_args.py @@ -27,6 +27,7 @@ def task_specific_kwargs(p, model): 'height': 8 * math.ceil(p.height / 8), } elif (sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.IMAGE_2_IMAGE or is_img2img_model) and len(getattr(p, 'init_images', [])) > 0: + model.register_to_config(requires_aesthetics_score = False) p.ops.append('img2img') task_args = { 'image': p.init_images, @@ -41,6 +42,7 @@ def task_specific_kwargs(p, model): 'strength': p.denoising_strength, } elif (sd_models.get_diffusers_task(model) == sd_models.DiffusersTaskType.INPAINTING or is_img2img_model) and len(getattr(p, 'init_images', [])) > 0: + model.register_to_config(requires_aesthetics_score = False) p.ops.append('inpaint') width, height = processing_helpers.resize_init_images(p) task_args = { diff --git a/modules/sd_models.py b/modules/sd_models.py index 3146b4c2a..f039ea316 100644 --- a/modules/sd_models.py +++ b/modules/sd_models.py @@ -38,6 +38,7 @@ sd_metadata_pending = 0 sd_metadata_timer = 0 debug_move = shared.log.trace if os.environ.get('SD_MOVE_DEBUG', None) is not None else lambda *args, **kwargs: None debug_load = os.environ.get('SD_LOAD_DEBUG', None) +debug_process = shared.log.trace if os.environ.get('SD_PROCESS_DEBUG', None) is not None else lambda *args, **kwargs: None diffusers_version = int(diffusers.__version__.split('.')[1]) @@ -1297,6 +1298,7 @@ def switch_pipe(cls: diffusers.DiffusionPipeline, pipeline: diffusers.DiffusionP def clean_diffuser_pipe(pipe): if pipe is not None and shared.sd_model_type == 'sdxl' and 'requires_aesthetics_score' in pipe.config and hasattr(pipe, '_internal_dict'): + debug_process(f'Pipeline clean: {pipe.__class__.__name__}') # diffusers adds requires_aesthetics_score with img2img and complains if requires_aesthetics_score exist in txt2img internal_dict = dict(pipe._internal_dict) # pylint: disable=protected-access internal_dict.pop('requires_aesthetics_score', None)