#
Getting Started with Modular Diffusers

🧪 Experimental Feature: Modular Diffusers is an experimental feature we are actively developing. The API may be subject to breaking changes.

With Modular Diffusers, we introduce a unified pipeline system that simplifies how you work with diffusion models. Instead of creating separate pipelines for each task, Modular Diffusers lets you:

Write Only What’s New: You won’t need to write an entire pipeline from scratch every time you have a new use case. You can create pipeline blocks just for your new workflow’s unique aspects and reuse existing blocks for existing functionalities.

Assemble Like LEGO®: You can mix and match between blocks in flexible ways. This allows you to write dedicated blocks unique to specific workflows, and then assemble different blocks into a pipeline that can be used more conveniently for multiple workflows.

Here’s how our guides are organized to help you navigate the Modular Diffusers documentation:

###
🚀 Running Pipelines

- Modular Pipeline Guide - How to use predefined blocks to build a pipeline and run it
- Components Manager Guide - How to manage and reuse components across multiple pipelines

###
📚 Creating PipelineBlocks

- Pipeline and Block States - Understanding PipelineState and BlockState
- Pipeline Block - How to write custom PipelineBlocks
- SequentialPipelineBlocks - Connecting blocks in sequence
- LoopSequentialPipelineBlocks - Creating iterative workflows
- AutoPipelineBlocks - Conditional block selection

###
🎯 Practical Examples

- End-to-End Example - Complete end-to-end examples including sharing your workflow in huggingface hub and deplying UI nodes

< > Update on GitHub