comfyanonymous
5b1e4dff6c
Set clip vision model in eval mode so it works without inference mode.
2023-12-15 18:53:08 -05:00
Hari
72500f183b
Implement Perp-Neg
2023-12-16 00:28:16 +05:30
comfyanonymous
99f61f753a
Remove useless code.
2023-12-15 01:28:16 -05:00
comfyanonymous
743e80a273
Improve code legibility.
2023-12-14 11:41:49 -05:00
comfyanonymous
85cbdd661b
Fix cfg being calculated more than once if sampler_cfg_function.
2023-12-13 20:28:04 -05:00
comfyanonymous
b83523b241
Refactor and improve the sag node.
...
Moved all the sag related code to comfy_extras/nodes_sag.py
2023-12-13 16:11:26 -05:00
Rafie Walker
58df1767b4
Implement Self-Attention Guidance ( #2201 )
...
* First SAG test
* need to put extra options on the model instead of patcher
* no errors and results seem not-broken
* Use @ashen-uncensored formula, which works better!!!
* Fix a crash when using weird resolutions. Remove an unnecessary UNet call
* Improve comments, optimize memory in blur routine
* SAG works with sampler_cfg_function
2023-12-13 15:52:11 -05:00
comfyanonymous
9e28104fb2
Support segmind vega model.
2023-12-12 19:09:53 -05:00
comfyanonymous
d8d085f2f9
Add dtype parameter to VAE object.
2023-12-12 12:03:29 -05:00
comfyanonymous
610c3b7c85
Add manual cast to controlnet.
2023-12-12 11:32:42 -05:00
comfyanonymous
fd9bfb01fc
Use inference dtype for unet memory usage estimation.
2023-12-11 23:50:38 -05:00
comfyanonymous
98cc7883b7
Refactor comfy.ops
...
comfy.ops -> comfy.ops.disable_weight_init
This should make it more clear what they actually do.
Some unused code has also been removed.
2023-12-11 23:27:13 -05:00
comfyanonymous
45acae2d06
Add an option --fp16-unet to force using fp16 for the unet.
2023-12-11 18:36:29 -05:00
comfyanonymous
f64ac62540
Use faster manual cast for fp8 in unet.
2023-12-11 18:24:44 -05:00
comfyanonymous
58b39151a4
Switch text encoder to manual cast.
...
Use fp16 text encoder weights for CPU inference to lower memory usage.
2023-12-10 23:00:54 -05:00
comfyanonymous
260b25aef8
Disable non blocking on mps.
2023-12-10 01:30:35 -05:00
comfyanonymous
733ff9e5ab
Implement GLora.
2023-12-09 18:15:26 -05:00
comfyanonymous
4d9a8c68bd
Make lora code a bit cleaner.
2023-12-09 14:15:09 -05:00
comfyanonymous
242f0a57d9
Use own clip vision model implementation.
2023-12-09 11:56:31 -05:00
comfyanonymous
f54c2bf6fb
Cleanup.
2023-12-08 16:02:08 -05:00
comfyanonymous
d36e559dcf
Add linear_start and linear_end to model_config.sampling_settings
2023-12-08 02:49:30 -05:00
comfyanonymous
63349484b8
Make --gpu-only put intermediate values in GPU memory instead of cpu.
2023-12-08 02:35:45 -05:00
comfyanonymous
f75e370acd
Support attention masking in CLIP implementation.
2023-12-07 02:51:02 -05:00
comfyanonymous
782cf4f295
Cleaner CLIP text encoder implementation.
...
Use a simple CLIP model implementation instead of the one from
transformers.
This will allow some interesting things that would too hackish to implement
using the transformers implementation.
2023-12-06 23:50:03 -05:00
comfyanonymous
1f1ef695bb
Slightly faster lora applying.
2023-12-06 05:13:14 -05:00
comfyanonymous
39bb52dc2c
Missed this one.
2023-12-05 12:48:41 -05:00
comfyanonymous
2620e3bc55
Fix memory issue with control loras.
2023-12-04 21:55:19 -05:00
comfyanonymous
e034f5709f
Fix control lora on fp8.
2023-12-04 13:47:41 -05:00
comfyanonymous
9002e58ce5
Less useless downcasting.
2023-12-04 12:53:46 -05:00
comfyanonymous
dfa7737afb
Use .itemsize to get dtype size for fp8.
2023-12-04 11:52:06 -05:00
comfyanonymous
080f5f4e84
UNET weights can now be stored in fp8.
...
--fp8_e4m3fn-unet and --fp8_e5m2-unet are the two different formats
supported by pytorch.
2023-12-04 11:10:00 -05:00
comfyanonymous
03e65605de
All the unet ops with weights are now handled by comfy.ops
2023-12-04 03:12:18 -05:00
comfyanonymous
31feea98b0
A different way of handling multiple images passed to SVD.
...
Previously when a list of 3 images [0, 1, 2] was used for a 6 frame video
they were concated like this:
[0, 1, 2, 0, 1, 2]
now they are concated like this:
[0, 0, 1, 1, 2, 2]
2023-12-03 03:31:47 -05:00
comfyanonymous
3fa2174377
Support SD2.1 turbo checkpoint.
2023-11-30 19:27:03 -05:00
comfyanonymous
dc15d6da73
Use smart model management for VAE to decrease latency.
2023-11-28 04:58:51 -05:00
comfyanonymous
5b12f320a8
Add a function to load a unet from a state dict.
2023-11-27 17:41:29 -05:00
comfyanonymous
c675a1ba9f
.sigma and .timestep now return tensors on the same device as the input.
2023-11-27 16:41:33 -05:00
comfyanonymous
dcd91ab458
Try to free memory for both cond+uncond before inference.
2023-11-27 14:55:40 -05:00
comfyanonymous
3253675a9c
Tweak memory inference calculations a bit.
2023-11-27 14:04:16 -05:00
comfyanonymous
60f4b792c8
Fix regression from last commit.
2023-11-26 03:43:02 -05:00
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
ac77dc020e
Fix importing diffusers unets.
2023-11-24 20:35:29 -05:00
comfyanonymous
eb17325740
Make buggy xformers fall back on pytorch attention.
2023-11-24 03:55:35 -05:00
comfyanonymous
5e4d60a231
Support SVD img2vid model.
2023-11-23 19:41:33 -05:00
comfyanonymous
d752c5f236
Make VAE memory estimation take dtype into account.
2023-11-22 18:17:19 -05:00
comfyanonymous
08b14daf24
Add sampling_settings so models can specify specific sampling settings.
2023-11-22 17:24:00 -05:00
comfyanonymous
2f876a465b
Allow controlling downscale and upscale methods in PatchModelAddDownscale.
2023-11-22 03:23:16 -05:00
comfyanonymous
cd49281bf8
Remove useless code.
2023-11-21 17:27:28 -05:00
comfyanonymous
212bb0e108
Allow model config to preprocess the vae state dict on load.
2023-11-21 16:29:18 -05:00
comfyanonymous
eeceef948d
Add taesd and taesdxl to VAELoader node.
...
They will show up if both the taesd_encoder and taesd_decoder or taesdxl
model files are present in the models/vae_approx directory.
2023-11-21 12:54:19 -05:00