maryhipp
7daf3b7d4a
update starter models to include FLUX controlnets
2024-10-10 07:59:29 -04:00
Ryan Dick
908f65698d
Fix support for InstantX non-union models (with no single blocks).
2024-10-10 07:59:29 -04:00
Ryan Dick
63c4ac58e9
Support installing InstantX ControlNet models from diffusers directory format.
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
ce4624f72b
Update ControlNetCheckpointProbe.get_base_type() to work with InstantX.
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
714dd5f0be
Update FluxControlnetModel to work with both XLabs and InstantX.
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
3f3aba8b10
Add FLUX XLabs ControlNet model probing.
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
psychedelicious
236c065edd
fix(ui): respect grid size when fitting layer to box
2024-10-10 07:43:46 -04:00
psychedelicious
1f5d744d01
fix(ui): disable canvas-related image context menu items when canvas is busy
2024-10-10 07:43:46 -04:00
psychedelicious
b36c6af0ae
feat(ui): add new img2img canvas from image functionality
...
This replicates the img2img flow:
- Reset the canvas
- Resize the bbox to the image's aspect ratio at the optimal size for the selected model
- Add the image as a raster layer
- Resizes the layer to fit the bbox using the 'fill' strategy
After this completes, the user can immediately click Invoke and it will do img2img.
2024-10-10 07:43:46 -04:00
psychedelicious
4e431a9d5f
feat(ui): add a mutex to CanvasEntityTransformer to prevent concurrent operations
2024-10-10 07:43:46 -04:00
psychedelicious
48a8232285
feat(ui): add entity adapter init callbacks
...
If an entity needs to do something after init, it can use this system. For example, if a layer should be transformed immediately after initializing, it can use an init callback.
2024-10-10 07:43:46 -04:00