Ryan Dick
908f65698d
Fix support for InstantX non-union models (with no single blocks).
2024-10-10 07:59:29 -04:00
Ryan Dick
812940eb95
(minor) Add comment about future memory optimization.
2024-10-10 07:59:29 -04:00
Ryan Dick
0559480dd6
Shift the controlnet-type-specific logic into the specific ControlNet extensions and make the FLUX model controlnet-type-agnostic.
2024-10-10 07:59:29 -04:00
Ryan Dick
d99e7dd4e4
Add instantx_control_mode param to FLUX ControlNet invocation.
2024-10-10 07:59:29 -04:00
Ryan Dick
e854181417
Create a dedicated FLUX ControlNet invocation.
2024-10-10 07:59:29 -04:00
Ryan Dick
de414c09fd
Bugfixes to get InstantX ControlNet working.
2024-10-10 07:59:29 -04:00
Ryan Dick
47c7df3476
Fix circular imports related to XLabsControlNetFluxOutput and InstantXControlNetFluxOutput.
2024-10-10 07:59:29 -04:00
Ryan Dick
4289b5e6c3
Add instantx controlnet logic to FLUX model forward().
2024-10-10 07:59:29 -04:00
Ryan Dick
c8d1d14662
Work on integrating InstantX into denoise process.
2024-10-10 07:59:29 -04:00
Ryan Dick
44c588d778
Rename DiffusersControlNetFlux -> InstantXControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
d75ac56d00
Create flux/extensions directory.
2024-10-10 07:59:29 -04:00
Ryan Dick
2f4d3cb5e6
Add unit test to test the full flow of loading an InstantX ControlNet from a state dict.
2024-10-10 07:59:29 -04:00
Ryan Dick
1cdd501a0a
Add unit test for infer_flux_params_from_state_dict(...).
2024-10-10 07:59:29 -04:00
Ryan Dick
03cf953398
First pass of utility function to infer the FluxParams from a state dict.
2024-10-10 07:59:29 -04:00
Ryan Dick
24c115663d
Add unit test for convert_diffusers_instantx_state_dict_to_bfl_format(...) and fix a few bugs.
2024-10-10 07:59:29 -04:00
Ryan Dick
a9e7ecad49
Finish first draft of convert_diffusers_instantx_state_dict_to_bfl_format(...).
2024-10-10 07:59:29 -04:00
Ryan Dick
76f4766324
WIP - implement convert_diffusers_instantx_state_dict_to_bfl_format(...).
2024-10-10 07:59:29 -04:00
Ryan Dick
3dfc242f77
(minor) rename other_forward() -> forward()
2024-10-10 07:59:29 -04:00
Ryan Dick
1e43389cb4
Add utils for detecting XLabs ControlNet vs. InstantX ControlNet from
...
state dict.
2024-10-10 07:59:29 -04:00
Ryan Dick
cb33de34f7
Migrate DiffusersControlNetFlux from diffusers-style to BFL-style.
2024-10-10 07:59:29 -04:00
Ryan Dick
7562ea48dc
Improve typing of zero_module().
2024-10-10 07:59:29 -04:00
Ryan Dick
83f4700f5a
Use top-level torch import for all torch stuff.
2024-10-10 07:59:29 -04:00
Ryan Dick
704e7479b2
Remove DiffusersControlNetFlux.from_transformer(...).
2024-10-10 07:59:29 -04:00
Ryan Dick
5f44559f30
Fixup typing around DiffusersControlNetFluxOutput.
2024-10-10 07:59:29 -04:00
Ryan Dick
7a22819100
Remove gradient checkpointing from DiffusersControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
70495665c5
Remove FluxMultiControlNetModel
2024-10-10 07:59:29 -04:00
Ryan Dick
ca30acc5b4
Remove LoRA stuff from DiffusersCotnrolNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
8121843d86
Remove logic for modifying attn processors from DiffusersControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
bc0ded0a23
Rename FluxControlNetModel -> DiffusersControlNetFlux
2024-10-10 07:59:29 -04:00
Ryan Dick
30f6034f88
Start updating imports for FluxControlNetModel
2024-10-10 07:59:29 -04:00
Ryan Dick
7d56a8ce54
Copy model from 99f608218c/src/diffusers/models/controlnet_flux.py
2024-10-10 07:59:29 -04:00
Ryan Dick
e7dc439006
Rename ControlNetFlux -> XLabsControlNetFlux
2024-10-10 07:59:29 -04:00
Ryan Dick
93e98a1f63
Add support for FLUX controlnet weight, begin_step_percent and end_step_percent.
2024-10-10 07:59:29 -04:00
Ryan Dick
0f93deab3b
First pass at integrating FLUX ControlNets into the FLUX Denoise invocation.
2024-10-10 07:59:29 -04:00
Ryan Dick
0b84f567f1
Fix type errors and imporve docs for ControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
69c0d7dcc9
Remove gradient checkpointing from ControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
5307248fcf
Remove ControlNetFlux logic related to attn processor overrides.
2024-10-10 07:59:29 -04:00
Ryan Dick
2efaea8f79
Remove duplicate FluxParams class.
2024-10-10 07:59:29 -04:00
Ryan Dick
c1dfd9b7d9
Fix FLUX module imports for ControlNetFlux.
2024-10-10 07:59:29 -04:00
Ryan Dick
c594ef89d2
Copy ControlNetFlux model from 47495425db/src/flux/controlnet.py.
2024-10-10 07:59:29 -04:00
Kent Keirsey
969f8b8e8d
ruff update
2024-10-08 08:56:26 -04:00
David Burnett
ccb5f90556
Get Flux working on MPS when torch 2.5.0 test or nightlies are installed.
2024-10-08 08:56:26 -04:00
Ryan Dick
bdeec54886
Remove FLUX TrajectoryGuidanceExtension and revert to the InpaintExtension. Keep the improved inpaint gradient mask adjustment behaviour.
2024-09-26 19:54:28 -04:00
Ryan Dick
8d50ecdfc3
Update docs explaining inpainting trajectory guidance.
2024-09-26 19:54:28 -04:00
Ryan Dick
ba07e255f5
Add support for fractional denoise start and end with FLUX.
2024-09-26 19:54:28 -04:00
Ryan Dick
fae96f3b9f
Remove trajectory_guidance_strength parameter.
2024-09-26 19:54:28 -04:00
psychedelicious
dc10197615
fix(app): step callbacks for SD, FLUX, MultiDiffusion
...
Each of these was a bit off:
- The SD callback started at `-1` and ended at `i`. Combined w/ the weird math on the previous `calc_percentage` util, this caused the progress bar to never finish.
- The MultiDiffusion callback had the same problems as SD.
- The FLUX callback didn't emit a pre-denoising step 0 image. It also reported total_steps as 1 higher than the actual step count.
Each of these now emit the expected events to the frontend:
- The initial latents at 0%
- Progress at each step, ending at 100%
2024-09-22 21:20:32 +03:00
Ryan Dick
a43a045b04
Fix preview image to work well with FLUX trajectory guidance.
2024-09-20 21:08:41 +00:00
Ryan Dick
cd3a7bdb5e
Assert that change_ratio is in the expected range in TrajectoryGuidanceExtension.
2024-09-20 20:34:49 +00:00
Ryan Dick
16ca540ece
Pre-compute trajectory guidance schedule params rather than calculating on each step.
2024-09-20 20:18:06 +00:00