diff --git a/src/diffusers/modular_pipelines/modular_pipeline.py b/src/diffusers/modular_pipelines/modular_pipeline.py index 43505aabee..c26a9c7c8a 100644 --- a/src/diffusers/modular_pipelines/modular_pipeline.py +++ b/src/diffusers/modular_pipelines/modular_pipeline.py @@ -947,7 +947,7 @@ class SequentialPipelineBlocks(ModularPipelineBlocks): instance = cls() # Create instances if classes are provided - blocks = {} + blocks = InsertableOrderedDict() for name, block in blocks_dict.items(): if inspect.isclass(block): blocks[name] = block() diff --git a/src/diffusers/modular_pipelines/stable_diffusion_xl/before_denoise.py b/src/diffusers/modular_pipelines/stable_diffusion_xl/before_denoise.py index 07f096249c..f6ff339675 100644 --- a/src/diffusers/modular_pipelines/stable_diffusion_xl/before_denoise.py +++ b/src/diffusers/modular_pipelines/stable_diffusion_xl/before_denoise.py @@ -1698,7 +1698,13 @@ class StableDiffusionXLControlNetAutoInput(AutoPipelineBlocks): block_classes = [StableDiffusionXLControlNetUnionInputStep, StableDiffusionXLControlNetInputStep] block_names = ["controlnet_union", "controlnet"] block_trigger_inputs = ["control_mode", "control_image"] - + + @property + def description(self): + return "Controlnet Input step that prepare the controlnet input.\n" + \ + "This is an auto pipeline block that works for both controlnet and controlnet_union.\n" + \ + " - `StableDiffusionXLControlNetUnionInputStep` is called to prepare the controlnet input when `control_mode` and `control_image` are provided.\n" + \ + " - `StableDiffusionXLControlNetInputStep` is called to prepare the controlnet input when `control_image` is provided." # Before denoise