Commit Graph

62 Commits

Author SHA1 Message Date
comfyanonymous
e4900be7f3 Clean up the extra_options dict for the transformer patches.
Now everything in transformer_options gets put in extra_options.
2023-11-26 03:13:56 -05:00
comfyanonymous
5e4d60a231 Support SVD img2vid model. 2023-11-23 19:41:33 -05:00
comfyanonymous
cd49281bf8 Remove useless code. 2023-11-21 17:27:28 -05:00
comfyanonymous
7676c8f41a Make deep shrink behave like it should. 2023-11-16 15:26:28 -05:00
comfyanonymous
87d2cb7b0b Print warning when controlnet can't be applied instead of crashing. 2023-11-16 12:57:12 -05:00
comfyanonymous
f6333be536 Add a way to add patches to the input block. 2023-11-14 00:08:12 -05:00
comfyanonymous
0d52957c1d Fix typo. 2023-11-07 23:41:55 -05:00
comfyanonymous
cb22d11fc8 Code refactor. 2023-11-07 19:33:40 -05:00
comfyanonymous
397acd549a Fix unet ops not entirely on GPU. 2023-11-07 04:30:37 -05:00
comfyanonymous
d4bc91d58f Support SSD1B model and make it easier to support asymmetric unets. 2023-10-27 14:45:15 -04:00
comfyanonymous
459787f78f Make VAE code closer to sgm. 2023-10-17 15:18:51 -04:00
comfyanonymous
28b98a96d3 Refactor the attention stuff in the VAE. 2023-10-17 03:19:29 -04:00
comfyanonymous
728139a5b9 Refactor code so model can be a dtype other than fp32 or fp16. 2023-10-13 14:41:17 -04:00
comfyanonymous
494ddf7717 pytorch_attention_enabled can now return True when xformers is enabled. 2023-10-11 21:30:57 -04:00
comfyanonymous
c60864b5e4 Refactor the attention functions.
There's no reason for the whole CrossAttention object to be repeated when
only the operation in the middle changes.
2023-10-11 20:38:48 -04:00
comfyanonymous
a990441ba0 Add a way to set output block patches to modify the h and hsp. 2023-09-22 20:26:47 -04:00
comfyanonymous
ef0c0892f6 Add a force argument to soft_empty_cache to force a cache empty. 2023-09-04 00:58:18 -04:00
comfyanonymous
2ab478346d Remove optimization that caused border. 2023-08-29 11:21:36 -04:00
comfyanonymous
6932eda1fb Fallback to slice attention if xformers doesn't support the operation. 2023-08-27 22:24:42 -04:00
comfyanonymous
1b9a6a9599 Make --bf16-vae work on torch 2.0 2023-08-27 21:33:53 -04:00
comfyanonymous
08af73e450 Controlnet/t2iadapter cleanup. 2023-08-22 01:06:26 -04:00
comfyanonymous
01a6f9b116 Fix issue with gligen. 2023-08-18 16:32:23 -04:00
comfyanonymous
280659a6ee Support for Control Loras.
Control loras are controlnets where some of the weights are stored in
"lora" format: an up and a down low rank matrice that when multiplied
together and added to the unet weight give the controlnet weight.

This allows a much smaller memory footprint depending on the rank of the
matrices.

These controlnets are used just like regular ones.
2023-08-18 11:59:51 -04:00
comfyanonymous
9c5ad64310 Remove some useless code. 2023-07-30 14:13:33 -04:00
comfyanonymous
71ffc7b350 Faster VAE loading. 2023-07-29 16:28:30 -04:00
comfyanonymous
8a8d8c86d6 Initialize the unet directly on the target device. 2023-07-29 14:51:56 -04:00
comfyanonymous
fa8010f038 Disable autocast in unet for increased speed. 2023-07-05 21:58:29 -04:00
comfyanonymous
0db33017af Add some more transformer hooks and move tomesd to comfy_extras.
Tomesd now uses q instead of x to decide which tokens to merge because
it seems to give better results.
2023-06-24 03:30:22 -04:00
comfyanonymous
51da619d73 Remove useless code. 2023-06-23 12:35:26 -04:00
comfyanonymous
08f1f7686c Support base SDXL and SDXL refiner models.
Large refactor of the model detection and loading code.
2023-06-22 13:03:50 -04:00
comfyanonymous
d35c0ce6ec All the unet weights should now be initialized with the right dtype. 2023-06-15 18:42:30 -04:00
comfyanonymous
8e6cbe6270 Initialize more unet weights as the right dtype. 2023-06-15 15:00:10 -04:00
comfyanonymous
206af9a315 Initialize transformer unet block weights in right dtype at the start. 2023-06-15 14:29:26 -04:00
comfyanonymous
6bbd86a061 Disable default weight values in unet conv2d for faster loading. 2023-06-14 19:46:08 -04:00
comfyanonymous
c0a5444d1b Make scaled_dot_product switch to sliced attention on OOM. 2023-05-20 16:01:02 -04:00
comfyanonymous
e33cb62d1b Simplify and improve some vae attention code. 2023-05-20 15:07:21 -04:00
comfyanonymous
b877fefbb3 Lowvram mode for gligen and fix some lowvram issues. 2023-05-05 18:11:41 -04:00
comfyanonymous
2edaaba3c2 Fix imports. 2023-05-04 18:10:29 -04:00
comfyanonymous
71b4d08e65 Change latent resolution step to 8. 2023-05-02 14:17:51 -04:00
comfyanonymous
76730ed9ff Make unet work with any input shape. 2023-05-02 13:31:43 -04:00
comfyanonymous
6c156642e4 Add support for GLIGEN textbox model. 2023-04-19 11:06:32 -04:00
comfyanonymous
4df70d0f62 Fix model_management import so it doesn't get executed twice. 2023-04-15 19:04:33 -04:00
comfyanonymous
7597a5d83e Disable xformers in VAE when xformers == 0.0.18 2023-04-04 22:22:02 -04:00
comfyanonymous
b55667284c Add support for unCLIP SD2.x models.
See _for_testing/unclip in the UI for the new nodes.

unCLIPCheckpointLoader is used to load them.

unCLIPConditioning is used to add the image cond and takes as input a
CLIPVisionEncode output which has been moved to the conditioning section.
2023-04-01 23:19:15 -04:00
comfyanonymous
bcdd11d687 Add a way to pass options to the transformers blocks. 2023-03-31 13:04:39 -04:00
comfyanonymous
7cae5f5769 Try again with vae tiled decoding if regular fails because of OOM. 2023-03-22 14:49:00 -04:00
comfyanonymous
13ec5cd3c2 Try to improve VAEEncode memory usage a bit. 2023-03-22 02:45:18 -04:00
comfyanonymous
5be28c4069 Remove omegaconf dependency and some ci changes. 2023-03-13 14:49:18 -04:00
comfyanonymous
1de721b33c Add pytorch attention support to VAE. 2023-03-13 12:45:54 -04:00
comfyanonymous
72b42ab260 --disable-xformers should not even try to import xformers. 2023-03-13 11:36:48 -04:00