Commit Graph

83 Commits

Author SHA1 Message Date
Simon Lui
1148c2dec7 Some fixes to generalize CUDA specific functionality to Intel or other GPUs. 2023-09-02 18:22:10 -07:00
comfyanonymous
b8f3570a1b Remove xformers related print. 2023-09-01 02:12:03 -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
4ec7f09adc It's actually possible to torch.compile the unet now. 2023-07-18 21:36:35 -04:00
comfyanonymous
debccdc6f9 Refactor of sampler code to deal more easily with different model types. 2023-07-17 01:22:12 -04:00
comfyanonymous
fa8010f038 Disable autocast in unet for increased speed. 2023-07-05 21:58:29 -04:00
comfyanonymous
033dc1f52a Cleanup. 2023-07-02 11:58:23 -04:00
comfyanonymous
44e3d3caed Fix ddim + inpainting not working. 2023-06-26 00:48:48 -04:00
comfyanonymous
391ee8d21f Fix bug with controlnet. 2023-06-24 11:02:38 -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
d72d5d49f5 Add original_shape parameter to transformer patch extra_options. 2023-06-21 13:22:01 -04:00
comfyanonymous
873b08bd0f Add a way to set patches that modify the attn2 output.
Change the transformer patches function format to be more future proof.
2023-06-18 22:58:22 -04:00
comfyanonymous
351d778487 Fix DDIM v-prediction. 2023-06-17 20:48:21 -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
46a1fd77f4 This isn't needed for inference. 2023-06-14 13:05:08 -04:00
comfyanonymous
14508d7a5b Speed up model loading a bit.
Default pytorch Linear initializes the weights which is useless and slow.
2023-06-14 12:09:41 -04:00
comfyanonymous
22cd647be0 Remove more useless files. 2023-06-13 02:22:19 -04:00
comfyanonymous
ce4e360edf Cleanup: Remove a bunch of useless files. 2023-06-13 02:19: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
BlenderNeko
2e2c17131b minor changes for tiled sampler 2023-05-12 23:49:09 +02: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
f5982afcfa Properly disable all progress bars when disable_pbar=True 2023-05-01 15:52:17 -04:00
comfyanonymous
e6771d0986 Implement Linear hypernetworks.
Add a HypernetworkLoader node to use hypernetworks.
2023-04-23 12:35:25 -04:00
comfyanonymous
0d66023475 This makes pytorch2.0 attention perform a bit faster. 2023-04-22 14:30:39 -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
EllangoK
cd00b46465 seperates out arg parser and imports args 2023-04-05 23:41:23 -04:00
comfyanonymous
7597a5d83e Disable xformers in VAE when xformers == 0.0.18 2023-04-04 22:22:02 -04:00
comfyanonymous
0d1c6a3934 Pull latest tomesd code from upstream. 2023-04-03 15:49:28 -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
3567c01bc3 This seems to give better quality in tome. 2023-03-31 18:36:18 -04:00
comfyanonymous
7da8d5f9f5 Add a TomePatchModel node to the _for_testing section.
Tome increases sampling speed at the expense of quality.
2023-03-31 17:19:58 -04:00
comfyanonymous
bcdd11d687 Add a way to pass options to the transformers blocks. 2023-03-31 13:04:39 -04:00