# Prompt scheduling
## Time-Traveling Through Denoising
Prompts don't have to be static. **Prompt Scheduling** allows you to change the text description *during* the generation process.
Recall that diffusion happens in steps (e.g., 20 steps).
1. **Early Steps (0-40%)**: Determine composition, layout, and broad shapes.
2. **Late Steps (40-100%)**: Determine texture, lighting, and fine details.
By switching the prompt partway through, you can control these phases independently.
### The Syntax `[From : To : Step]`
Most tools use the format `[keyword1 : keyword2 : fraction]`.
* **Example**: `[cat : dog : 0.5]`
* For the first 50% of steps, the model sees "cat" (building cat-like shapes/pose).
* For the last 50% of steps, the model sees "dog" (refining textures/fur to look like a dog).
* **Result**: A chimera or a dog with a very cat-like pose.
### Best Practices
- **Use Related Concepts**: Scheduling between `[cat : dog : 0.5]` blends better than `[cat : spaceship : 0.5]`. Keep the concepts in the same semantic space for smooth transitions.
- **Early Scheduling is Stronger**: Changes at `0.2` (20% through) have more compositional impact than changes at `0.8` (80% through).
- **Test in Chunks**: Try values like `0.3, 0.5, 0.7` before fine-tuning with `0.25, 0.35, 0.45`.
- **Avoid Over-Switching**: More than 2–3 prompt switches often create confusion. The model needs time to settle changes.
### Use Cases
- **Composition Transfer**: `[sketch : photograph : 0.3]` starts with a sketch prompt to get a loose, artistic layout, then switches to "photograph" to render it realistically.
- **Hybrid Creatures**: As described above, mixing species or objects.
- **Impossible Geometry**: Structuring a scene with simple shapes (`[blocks : buildings : 0.2]`) before texturing them.
^time-traveling