InvokeAI/invokeai/backend/flux
Alexander Eichhorn b0f7b555b7
feat(z-image): add Z-Image Base (undistilled) model variant support (#8799)
* feat(z-image): add Z-Image Base (undistilled) model variant support

- Add ZImageVariantType enum with 'turbo' and 'zbase' variants
- Auto-detect variant on import via scheduler_config.json shift value (3.0=turbo, 6.0=zbase)
- Add database migration to populate variant field for existing Z-Image models
- Re-add LCM scheduler with variant-aware filtering (LCM hidden for zbase)
- Auto-reset scheduler to Euler when switching to zbase model if LCM selected
- Update frontend to show/hide LCM option based on model variant
- Add toast notification when scheduler is auto-reset

Z-Image Base models are undistilled and require more steps (28-50) with higher
guidance (3.0-5.0), while Z-Image Turbo is distilled for ~8 steps with CFG 1.0.
LCM scheduler only works with distilled (Turbo) models.

* Chore ruff format

* Chore fix windows path

* feat(z-image): filter LoRAs by variant compatibility and warn on mismatch

LoRA picker now hides Z-Image LoRAs with incompatible variants (e.g. ZBase
LoRAs when using Turbo model). LoRAs without a variant are always shown.
Backend loaders warn at runtime if a LoRA variant doesn't match the
transformer variant.

* Chore typegen

---------

Co-authored-by: Lincoln Stein <lincoln.stein@gmail.com>
2026-02-20 00:32:38 +00:00
..
controlnet refactor: model manager v3 (#8607) 2025-10-15 10:18:53 +11:00
dype Update presets.py (#8846) 2026-02-06 17:14:47 +05:30
extensions Feature: Add DyPE (Dynamic Position Extrapolation) support to FLUX models for improved high-resolution image generation (#8763) 2026-01-26 23:54:44 -05:00
ip_adapter refactor: model manager v3 (#8607) 2025-10-15 10:18:53 +11:00
modules Feature(backend): Add user toggle to run encoder models on CPU (#8777) 2026-02-04 15:13:29 -05:00
redux refactor: model manager v3 (#8607) 2025-10-15 10:18:53 +11:00
custom_block_processor.py Distinguish between restricted and unrestricted attn masks in FLUX regional prompting. 2024-11-26 16:55:52 +00:00
denoise.py Feature: Add DyPE (Dynamic Position Extrapolation) support to FLUX models for improved high-resolution image generation (#8763) 2026-01-26 23:54:44 -05:00
flux_state_dict_utils.py refactor: model manager v3 (#8607) 2025-10-15 10:18:53 +11:00
math.py Revert performance improvement, because it caused flux inference to fail on Mac: https://github.com/invoke-ai/InvokeAI/issues/7422 2024-12-03 15:18:58 +00:00
model.py Rename Structural Lora to Control Lora 2024-12-17 07:28:45 -05:00
sampling_utils.py test fixes 2025-07-04 19:24:44 +10:00
schedulers.py feat(z-image): add Z-Image Base (undistilled) model variant support (#8799) 2026-02-20 00:32:38 +00:00
text_conditioning.py Add support for FLUX Redux masks. 2025-03-06 10:31:17 +11:00
util.py feat(flux2): add FLUX.2 klein model support (#8768) 2026-01-26 23:21:37 -05:00