Commit Graph

2360 Commits

Author SHA1 Message Date
29595ce059 Switch flux to using its own conditioning field 2024-08-23 13:50:01 -04:00
5f5f535dc0 Load and unload clip/t5 encoders and run inference separately in text encoding 2024-08-23 13:28:05 -04:00
708a4f68da Run FLUX VAE decoding in the user's preferred dtype rather than float32. Tested, and seems to work well at float16. 2024-08-22 18:16:43 +00:00
08633c3f04 Move prepare_latent_image_patches(...) to sampling.py with all of the related FLUX inference code. 2024-08-22 17:18:43 +00:00
4eca99574b Rename field positive_prompt -> prompt. 2024-08-22 16:18:33 +00:00
35d8e6a05b Tidy is_schnell detection logic. 2024-08-22 16:03:54 +00:00
afd4913a1b Make FLUX get_noise(...) consistent across devices/dtypes. 2024-08-22 15:56:30 +00:00
6afb1be872 Mark FLUX nodes as prototypes. 2024-08-22 15:29:59 +00:00
3d251b4b93 Run ruff 2024-08-21 15:37:27 -04:00
fc760d3719 Remove automatic install of models during flux model loader, remove no longer used import function on context 2024-08-21 15:34:47 -04:00
0ce9faae7d Fix max_seq_len field description. 2024-08-21 19:17:39 +00:00
d2cb6889c5 add better workflow name 2024-08-21 14:52:23 -04:00
71088623a7 add better workflow description 2024-08-21 14:49:05 -04:00
25482c031b fix(worker) fix T5 type 2024-08-21 14:45:46 -04:00
68a917aed5 update default workflow 2024-08-21 14:45:46 -04:00
2c72295b1c update flux_model_loader node to take a T5 encoder from node field instead of hardcoded list, assume all models have been downloaded 2024-08-21 14:27:34 -04:00
ada483f65e Various styling and exception type updates 2024-08-21 11:59:04 -04:00
d4872253a1 Update doc string for import_local_model and remove access_token since it's only usable for local file paths 2024-08-21 11:18:07 -04:00
e680cf76f6 Address minor review comments. 2024-08-21 13:45:22 +00:00
253b2b1dc6 Rename t5Encoder -> t5_encoder. 2024-08-21 13:27:54 +00:00
5edec7f105 add default workflow for flux t2i 2024-08-21 09:11:17 -04:00
c819da8859 Some cleanup of the tags and description of flux nodes 2024-08-21 09:11:15 -04:00
dd24f83d43 Fix styling/lint 2024-08-21 09:10:22 -04:00
da766f5a7e Fix support for 8b quantized t5 encoders, update exception messages in flux loaders 2024-08-21 09:10:22 -04:00
5e2351f3bf Fix FLUX output image clamping. And a few other minor fixes to make inference work with the full bfloat16 FLUX transformer model. 2024-08-21 09:10:22 -04:00
d705c3cf0e Select dev/schnell based on state dict, use correct max seq len based on dev/schnell, and shift in inference, separate vae flux params into separate config 2024-08-21 09:10:20 -04:00
115f350f6f Install sub directories with folders correctly, ensure consistent dtype of tensors in flux pipeline and vae 2024-08-21 09:09:39 -04:00
be6cb2c07c Working inference node with quantized bnb nf4 checkpoint 2024-08-21 09:09:39 -04:00
4fb5529493 Remove unused param on _run_vae_decoding in flux text to image 2024-08-21 09:09:39 -04:00
b43ee0b837 Add nf4 bnb quantized format 2024-08-21 09:09:39 -04:00
3312fe8fc4 Run ruff, setup initial text to image node 2024-08-21 09:09:39 -04:00
01a2449dae Add backend functions and classes for Flux implementation, Update the way flux encoders/tokenizers are loaded for prompt encoding, Update way flux vae is loaded 2024-08-21 09:09:37 -04:00
cfe9d0ce0a Some UI cleanup, regenerate schema 2024-08-21 09:08:22 -04:00
46b6314482 Run Ruff 2024-08-21 09:06:38 -04:00
46d5107ff1 Run Ruff 2024-08-21 09:06:38 -04:00
6ea1278d22 Manage quantization of models within the loader 2024-08-21 09:06:34 -04:00
f425d3aa3c Setup flux model loading in the UI 2024-08-21 09:04:37 -04:00
d7a39a4d67 WIP on moving from diffusers to FLUX 2024-08-21 08:59:19 -04:00
0e96794c6e LLM.int8() quantization is working, but still some rough edges to solve. 2024-08-21 08:59:19 -04:00
23a7328a66 Clean up NF4 implementation. 2024-08-21 08:59:19 -04:00
c3cf8c3b6b NF4 inference working 2024-08-21 08:59:19 -04:00
3ba60e1656 Split a FluxTextEncoderInvocation out from the FluxTextToImageInvocation. This has the advantage that we benfit from automatic caching when the prompt isn't changed. 2024-08-21 08:59:19 -04:00
cdd47b657b Make quantized loading fast for both T5XXL and FLUX transformer. 2024-08-21 08:59:19 -04:00
e8fb8f4d12 Make float16 inference work with FLUX on 24GB GPU. 2024-08-21 08:59:19 -04:00
9381211508 Add support for 8-bit quantizatino of the FLUX T5XXL text encoder. 2024-08-21 08:59:19 -04:00
8cce4a40d4 Make 8-bit quantization save/reload work for the FLUX transformer. Reload is still very slow with the current optimum.quanto implementation. 2024-08-21 08:59:19 -04:00
4833746698 Minor improvements to FLUX workflow. 2024-08-21 08:59:19 -04:00
8b9bf55bba Got FLUX schnell working with 8-bit quantization. Still lots of rough edges to clean up. 2024-08-21 08:59:19 -04:00
7b199fed4f Use the FluxPipeline.encode_prompt() api rather than trying to run the two text encoders separately. 2024-08-21 08:59:18 -04:00
13513465c8 First draft of FluxTextToImageInvocation. 2024-08-21 08:59:18 -04:00