Diffusers documentation
Getting Started with Modular Diffusers
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