Commit Graph

342 Commits

Author SHA1 Message Date
Peter Crabtree
e2c585f3be
Fix to allow use of PerpNegGuider with cfg_function_post hooks (like PAG) (#3618) 2024-06-01 12:36:08 -04:00
comfyanonymous
91542d4f8b Import spandrel_extra_arches if present.
I will not add this dependency to the default ones because models in the
spandrel_extra_arches package are non commercial and therefore not
compatible with free software licenses like the one ComfyUI uses.

If you don't mind this you can install it manually yourself.
2024-05-28 01:42:11 -04:00
comfyanonymous
0920e0e5fe Remove some unused imports. 2024-05-27 19:08:27 -04:00
comfyanonymous
16a493a190 Keep compatibility with some custom nodes. 2024-05-26 15:37:41 -04:00
comfyanonymous
9a151b7def Fix issue and unpin spandrel package. 2024-05-26 13:44:47 -04:00
Joey Ballentine
8cfd677cc0
Replace chainner_models with Spandrel package (#2146)
* Replace chainner_models with Spandrel

* Update to latest spandrel

* Use spandrel_foss instead

* update spandrel to new FOSS-compliant version
2024-05-26 13:44:17 -04:00
comfyanonymous
b02bcced05 Fix FreeU not working when shape is tensor. 2024-05-23 11:48:04 -04:00
pythongosssss
91590adf04
Add webcam node (#3497)
* Add webcam node

* unused import
2024-05-17 13:16:08 -04:00
comfyanonymous
ec6f16adb6 Fix SAG. 2024-05-14 18:02:27 -04:00
comfyanonymous
2de3b69b30 Support saving some more modelspec types. 2024-05-13 21:54:11 -04:00
comfyanonymous
e1489ad257 Fix issue with lowvram mode breaking model saving. 2024-05-11 21:55:20 -04:00
Pam
3787b4f246
Use get_model_object in Deep Shrink node (#3408) 2024-05-06 18:39:39 -04:00
comfyanonymous
565eb6d176 Add a SplitSigmasDenoise node as an alternative to SplitSigmas. 2024-05-05 05:24:36 -04:00
comfyanonymous
94d5a12801 Don't load the model in SDTurboScheduler 2024-05-01 16:57:10 -04:00
comfyanonymous
eecd69b53a Add a SamplerLCMUpscale node.
This sampler is an LCM sampler that upscales the latent during sampling.

It can be used to generate at a higher resolution with an LCM model very
quickly.

To try it use it with a basic 5 step LCM workflow with scale_ratio 1.5 or
2.0
2024-04-29 20:00:47 -04:00
comfyanonymous
059773a6df Add some nodes to multiply the attention in UNet and Clip models. 2024-04-28 13:03:43 -04:00
comfyanonymous
10fcd09f4a Add a denoise value to AlignYourStepsScheduler. 2024-04-27 00:48:41 -04:00
comfyanonymous
16eabdf70d Free more vram for upscale models. 2024-04-25 17:04:19 -04:00
Pam
b8218522f1
Increase sigma_min/sigma_max range for custom schedulers (#3317) 2024-04-23 09:40:10 -04:00
comfyanonymous
d09b5ef4ef Free some memory before loading upscale models. 2024-04-22 18:51:15 -04:00
comfyanonymous
4ee9aad6ca Speed up Sharpen node. 2024-04-21 09:02:06 -04:00
comfyanonymous
644a3ae58d Implement Align Your Steps as a AlignYourStepsScheduler node. 2024-04-20 04:34:12 -04:00
comfyanonymous
133dc3351b Faster blur. 2024-04-19 03:52:02 -04:00
comfyanonymous
abc69cab45 Add a helpful warning for links that don't point anywhere. 2024-04-17 12:28:05 -04:00
comfyanonymous
45ec1cbe96 Implement PerpNeg as a guider. 2024-04-16 02:57:34 -04:00
comfyanonymous
8903dce862 This can be removed since PAG doesn't use the uncond. 2024-04-15 12:14:00 -04:00
comfyanonymous
719fb2c81d Add basic PAG node. 2024-04-14 23:49:50 -04:00
comfyanonymous
744ac944db Don't make dynamicPrompts the default on multiline string inputs.
This should be less confusing to those who want to use multiline input
without them.
2024-04-13 16:18:00 -04:00
comfyanonymous
fd7c636680 Add an AddNoise node to add noise depending on the sigma. 2024-04-10 23:40:31 -04:00
comfyanonymous
4201181b35 Add ModelMergeSD1, ModelMergeSD2 and ModelMergeSDXL. 2024-04-09 04:31:14 -04:00
comfyanonymous
30abc324c2 Support properly saving CosXL checkpoints. 2024-04-08 00:36:22 -04:00
comfyanonymous
c9fc242e2c The middle prompt should be treated more as a negative prompt. 2024-04-07 14:34:43 -04:00
comfyanonymous
d8dea4cdb8 Fix DisableNoise node. 2024-04-05 21:36:23 -04:00
comfyanonymous
ea9ac9d30b Fix PerpNeg node. 2024-04-05 11:46:54 -04:00
comfyanonymous
0f5768e038 Fix missing arguments in cfg_function. 2024-04-04 23:38:57 -04:00
comfyanonymous
1a0486bb96 Fix model needing to be loaded on GPU to generate the sigmas. 2024-04-04 22:08:49 -04:00
comfyanonymous
1f8d8e6c77 Add InstructPixToPixConditioning node. 2024-04-04 15:06:17 -04:00
comfyanonymous
5272fd4b03 Add DualCFGGuider used in IP2P models for example. 2024-04-04 14:57:44 -04:00
comfyanonymous
cfbf3be54b Add basic guider for models with no cfg. 2024-04-04 13:57:32 -04:00
comfyanonymous
c6bd456c45 Make zero denoise a NOP. 2024-04-04 11:41:27 -04:00
comfyanonymous
fcfd2bdf8a Small cleanup. 2024-04-04 11:16:49 -04:00
comfyanonymous
f117566299 SamplerCustomAdvanced node.
This node enables the creation of nodes to change the guider/denoiser and
the noise algorithm.
2024-04-04 01:32:25 -04:00
comfyanonymous
e6482fbbfc Refactor calc_cond_uncond_batch into calc_cond_batch.
calc_cond_batch can take an arbitrary amount of cond inputs.

Added a calc_cond_uncond_batch wrapper with a warning so custom nodes
won't break.
2024-04-01 18:07:47 -04:00
comfyanonymous
8ae1e4d125 Make step on sharpen node smaller. 2024-03-27 01:28:31 -04:00
comfyanonymous
40e124c6be SV3D support. 2024-03-18 16:54:13 -04:00
comfyanonymous
0b78213bda Fix neg scale step. 2024-03-18 15:51:23 -04:00
comfyanonymous
b1a16d4500 Fix stable cascade img2img not working with all resolutions. 2024-03-18 13:51:38 -04:00
comfyanonymous
d3406d8d58 Increase image batch nodes maximum values. 2024-03-17 08:57:49 -04:00
comfyanonymous
f2fe635c9f SamplerDPMAdaptative node to test the different options. 2024-03-15 22:36:10 -04:00
comfyanonymous
eda8704386 Add SamplerDPMPP_3M_SDE node. 2024-03-12 12:16:37 -04:00
comfyanonymous
e7b8e240f7 Add SamplerLMS node. 2024-03-12 04:34:34 -04:00
comfyanonymous
2a813c3b09 Switch some more prints to logging. 2024-03-11 16:34:58 -04:00
MoonRide303
4656273e72 Added additional nodes for CLIP merging 2024-03-09 19:32:33 +01:00
comfyanonymous
a9ee9589b7 Add SamplerEulerAncestral node. 2024-03-09 08:21:43 -05:00
comfyanonymous
55f37baae8 Move some stable cascade nodes outside of _for_testing. 2024-03-07 01:49:20 -05:00
comfyanonymous
3f75419e2e Add a node to use the super resolution controlnet. 2024-03-07 01:48:31 -05:00
Dmytro Mishkin
6d8834f08f
Add Morphology nodes from kornia (#2781)
* import kornia

* Added morphology nodexs

* Add kornia to requirements

* fix choices

* options, also move to postprocessors

* fix placing and step
2024-03-04 12:50:28 -05:00
comfyanonymous
0490ce8244 Fix differential diffusion node for batches. 2024-03-04 00:43:09 -05:00
comfyanonymous
b2e1744a16 Add a ThresholdMask node. 2024-03-04 00:31:59 -05:00
comfyanonymous
12c1080ebc Simplify differential diffusion code. 2024-03-03 15:34:42 -05:00
Shiimizu
727021bdea
Implement Differential Diffusion (#2876)
* Implement Differential Diffusion

* Cleanup.

* Fix.

* Masks should be applied at full strength.

* Fix colors.

* Register the node.

* Cleaner code.

* Fix issue with getting unipc sampler.

* Adjust thresholds.

* Switch to linear thresholds.

* Only calculate nearest_idx on valid thresholds.
2024-03-03 15:34:13 -05:00
comfyanonymous
d46583ecec Playground V2.5 support with ModelSamplingContinuousEDM node.
Use ModelSamplingContinuousEDM with edm_playground_v2.5 selected.
2024-02-27 15:12:33 -05:00
comfyanonymous
877a8f7a3c Merge branch 'patch-1' of https://github.com/feffy380/ComfyUI 2024-02-22 16:23:50 -05:00
comfyanonymous
7faa4507ec ModelSamplingDiscrete: x0 model support that predict a denoised image. 2024-02-21 08:05:43 -05:00
feffy380
820807c8ed
Fix Perp-Neg math
adjust perp-neg implementation to match the paper
2024-02-21 10:33:03 +01:00
comfyanonymous
a311524969 Node to make stable cascade image to image easier. 2024-02-19 13:36:20 -05:00
comfyanonymous
dbe0979b3f Larger range for min/max compression for StableCascade_EmptyLatentImage. 2024-02-19 08:59:53 -05:00
comfyanonymous
8b60d33bb7 Add ModelSamplingStableCascade to control the shift sampling parameter.
shift is 2.0 by default on Stage C and 1.0 by default on Stage B.
2024-02-18 00:55:23 -05:00
comfyanonymous
667c92814e Stable Cascade Stage B. 2024-02-16 13:02:03 -05:00
comfyanonymous
0c9bc19768 Add ImageFromBatch. 2024-02-12 12:46:15 -05:00
comfyanonymous
20e3da6b31 Add a node to give the controlnet a prompt different from the unet. 2024-02-10 08:27:05 -05:00
FizzleDorf
f2bae7463e
changed default of LatentBatchSeedBehavior to fixed 2024-02-02 18:31:35 +09:00
comfyanonymous
7f4725f6b3 Fix some issues with --gpu-only 2024-01-27 02:51:27 -05:00
comfyanonymous
fc196aac80 Add a LatentBatchSeedBehavior node.
This lets you set it so the latents can use the same seed for the sampling
on every image in the batch.
2024-01-26 23:13:02 -05:00
comfyanonymous
d1533d9c0f Add experimental photomaker nodes.
Put the model file in models/photomaker and use PhotoMakerLoader.

Then use PhotoMakerEncode with the keyword "photomaker" to apply the image
2024-01-24 09:51:42 -05:00
comfyanonymous
f2d432f9a7 Fix potential turbo scheduler model patching issue. 2024-01-22 00:28:13 -05:00
comfyanonymous
9fff3c46b4 Move some nodes to model_patches section. 2024-01-18 15:57:35 -05:00
comfyanonymous
d76a04b6ea Add unfinished ImageOnlyCheckpointSave node to save a SVD checkpoint.
This node is unfinished, SVD checkpoints saved with this node will
work with ComfyUI but not with anything else.
2024-01-17 19:46:21 -05:00
comfyanonymous
d4edd9bfa8 Fix hypertile issue with high depths. 2024-01-11 15:13:38 -05:00
comfyanonymous
b4e915e745 Skip SAG when latent is too small. 2024-01-10 04:08:43 -05:00
comfyanonymous
2c80d9acb9 Round up to nearest power of 2 in SAG node to fix some resolution issues. 2024-01-09 15:12:12 -05:00
comfyanonymous
7c9a0f7e0a Fix BasicScheduler issue with Loras. 2024-01-05 12:31:13 -05:00
comfyanonymous
35322a3766 StableZero123_Conditioning_Batched node.
This node lets you generate a batch of images with different elevations or
azimuths by setting the elevation_batch_increment and/or
azimuth_batch_increment.

It also sets the batch index for the latents so that the same init noise is
used on each frame.
2024-01-05 04:20:03 -05:00
comfyanonymous
8c6493578b Implement noise augmentation for SD 4X upscale model. 2024-01-03 14:27:11 -05:00
comfyanonymous
ef4f6037cb Fix model patches not working in custom sampling scheduler nodes. 2024-01-03 12:16:30 -05:00
comfyanonymous
a7874d1a8b Add support for the stable diffusion x4 upscaling model.
This is an old model.

Load the checkpoint like a regular one and use the new
SD_4XUpscale_Conditioning node.
2024-01-03 03:37:56 -05:00
comfyanonymous
d1f3637a5a Add a denoise parameter to BasicScheduler node. 2023-12-31 15:37:20 -05:00
comfyanonymous
6781b181ef Fix potential tensor device issue with ImageCompositeMasked. 2023-12-21 02:35:01 -05:00
comfyanonymous
5f54614e7f Add a RebatchImages node. 2023-12-20 16:22:18 -05:00
comfyanonymous
e82942cc29 Add a denoise parameter to the SDTurboScheduler. 2023-12-20 02:54:25 -05:00
comfyanonymous
571ea8cdcc Fix SAG not working with cfg 1.0 2023-12-18 17:03:32 -05:00
comfyanonymous
d2f322902c Fix wrong Stable Zero123 node name. 2023-12-18 03:59:50 -05:00
comfyanonymous
2258f85159 Support stable zero 123 model.
To use it use the ImageOnlyCheckpointLoader to load the checkpoint and
the new Stable_Zero123 node.
2023-12-18 03:48:04 -05:00
comfyanonymous
a036b94075 Move SaveAnimated nodes to image->animation. 2023-12-17 02:37:22 -05:00
comfyanonymous
574efd3782 Fix perpneg not working on SDXL. 2023-12-16 02:30:16 -05:00
comfyanonymous
172984db01 Fix SAG not working on certain resolutions. 2023-12-16 01:29:57 -05:00
comfyanonymous
6596654d47 Add a LatentBatch node. 2023-12-16 01:21:00 -05:00
comfyanonymous
adc40e3d7b Forgot this. 2023-12-15 15:46:23 -05:00
comfyanonymous
014c8bf2f2 Refactor LCM to support more model types. 2023-12-15 15:26:12 -05:00
comfyanonymous
9cad2f06ff Make perp neg take a conditioning input instead of a CLIP one. 2023-12-15 14:40:57 -05:00
Hari
574363a8a6 Implement Perp-Neg 2023-12-16 00:28:16 +05:30
comfyanonymous
a5056cfb1f Remove useless code. 2023-12-15 01:28:16 -05:00
comfyanonymous
b12b48e170 cleanup. 2023-12-14 20:11:46 -05:00
comfyanonymous
ba04a87d10 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
6761233e9d
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
9ac0b487ac Make --gpu-only put intermediate values in GPU memory instead of cpu. 2023-12-08 02:35:45 -05:00
comfyanonymous
cdff081023 Fix hypertile. 2023-12-07 15:22:35 -05:00
asagi4
03eadbb53c Make HyperTile deterministic 2023-12-06 21:17:56 +02:00
comfyanonymous
57d7f4464f Add SDTurboScheduler node. 2023-11-28 13:35:32 -05:00
comfyanonymous
f30b992b18 .sigma and .timestep now return tensors on the same device as the input. 2023-11-27 16:41:33 -05:00
comfyanonymous
488de0b4df ModelSamplingDiscreteLCM -> ModelSamplingDiscreteDistilled 2023-11-27 16:32:03 -05:00
comfyanonymous
e020ab61f9 Fix output APNG not working with ffmpeg. 2023-11-24 18:24:19 -05:00
comfyanonymous
8ad5d494d5 Fix APNG not working in ffmpeg. 2023-11-24 18:14:17 -05:00
comfyanonymous
916e9c998c Use same default fps as webp node. 2023-11-24 11:19:23 -05:00
comfyanonymous
eff24ea6aa Add a node to save animated PNG files. These work in ffpmeg unlike webp. 2023-11-24 11:12:10 -05:00
comfyanonymous
02ffbb2de3 Fix typo. 2023-11-23 23:20:07 -05:00
comfyanonymous
42dfae6331 Nodes to properly use the SDV img2vid checkpoint.
The img2vid model is conditioned on clip vision output only which means
there's no CLIP model which is why I added a ImageOnlyCheckpointLoader to
load it. Note that the unClipCheckpointLoader can also load it because it
also has a CLIP_VISION output.

SDV_img2vid_Conditioning is the node used to pass the right conditioning
to the img2vid model.

VideoLinearCFGGuidance applies a linearly decreasing CFG scale to each
video frame from the cfg set in the sampler node to min_cfg.

SDV_img2vid_Conditioning can be found in conditioning->video_models
ImageOnlyCheckpointLoader can be found in loaders->video_models
VideoLinearCFGGuidance can be found in sampling->video_models
2023-11-23 19:48:49 -05:00
comfyanonymous
871cc20e13 Support SVD img2vid model. 2023-11-23 19:41:33 -05:00
comfyanonymous
022033a0e7 Fix SaveAnimatedWEBP not working when metadata is disabled. 2023-11-23 15:39:35 -05:00
comfyanonymous
a657f96c5c Add a node to save animated webp. 2023-11-23 14:28:41 -05:00
comfyanonymous
c3ae99a749 Allow controlling downscale and upscale methods in PatchModelAddDownscale. 2023-11-22 03:23:16 -05:00
comfyanonymous
31c5ea7b2c Add LatentInterpolate to interpolate between latents. 2023-11-20 03:55:51 -05:00
comfyanonymous
dba4f3b4fc Add a RepeatImageBatch node. 2023-11-19 06:09:01 -05:00
comfyanonymous
d9d8702d8d percent_to_sigma now returns a float instead of a tensor. 2023-11-18 23:20:29 -05:00
comfyanonymous
8a451234b3 Add ImageCrop node. 2023-11-18 04:44:17 -05:00
comfyanonymous
7e3fe3ad28 Make deep shrink behave like it should. 2023-11-16 15:26:28 -05:00
comfyanonymous
bd07ad1861 Add PatchModelAddDownscale (Kohya Deep Shrink) node.
By adding a downscale to the unet in the first timesteps this node lets
you generate images at higher resolutions with less consistency issues.
2023-11-16 13:25:46 -05:00
comfyanonymous
dcec1047e6 Invert the start and end percentages in the code.
This doesn't affect how percentages behave in the frontend but breaks
things if you relied on them in the backend.

percent_to_sigma goes from 0 to 1.0 instead of 1.0 to 0 for less confusion.

Make percent 0 return an extremely large sigma and percent 1.0 return a
zero one to fix imprecision.
2023-11-16 04:23:44 -05:00
comfyanonymous
420beeeb05 Clean up and refactor sampler code.
This should make it much easier to write custom nodes with kdiffusion type
samplers.
2023-11-14 00:39:34 -05:00
comfyanonymous
8509bd58b4 Reorganize custom_sampling nodes. 2023-11-13 21:45:23 -05:00
comfyanonymous
61112c81b9 Add a node to flip the sigmas for unsampling. 2023-11-13 21:45:08 -05:00
comfyanonymous
ca2812bae0 Fix RescaleCFG for batch size > 1. 2023-11-10 22:05:25 -05:00
comfyanonymous
58d5d71a93 Working RescaleCFG node.
This was broken because of recent changes so I fixed it and moved it from
the experiments repo.
2023-11-10 20:52:10 -05:00
comfyanonymous
002aefa382 Support lcm models.
Use the "lcm" sampler to sample them, you also have to use the
ModelSamplingDiscrete node to set them as lcm models to use them properly.
2023-11-09 18:30:22 -05:00
comfyanonymous
ca71e542d2 Lower cfg step to 0.1 in sampler nodes. 2023-11-09 17:35:17 -05:00
comfyanonymous
844dbf97a7 Add: advanced->model->ModelSamplingDiscrete node.
This allows changing the sampling parameters of the model (eps or vpred)
or set the model to use zsnr.
2023-11-07 03:28:53 -05:00
matt3o
4acfc11a80 add difference blend mode 2023-11-05 19:00:23 +01:00
comfyanonymous
ee74ef5c9e Increase maximum batch size in LatentRebatch. 2023-11-02 13:07:41 -04:00
tsone
23c5d17837 Added Bayer dithering to Quantize node. 2023-10-31 22:22:40 +01:00
comfyanonymous
1443caf373 HyperTile node, can be found in: _for_testing->HyperTile 2023-10-21 05:16:38 -04:00
comfyanonymous
c2bb34d865 Implement updated FreeU as _for_testing->FreeU_V2 node 2023-10-18 02:06:49 -04:00
comfyanonymous
f8caa24bcc Support hypernetwork with mish activation function and layer norm. 2023-10-17 12:08:03 -04:00
Jairo Correa
b5fa3d28d7 Fix MaskComposite 2023-10-13 13:40:53 -03:00
Jairo Correa
87097a11c3 Fix FeatherMask 2023-10-13 12:26:54 -03:00
comfyanonymous
20d3852aa1 Pull some small changes from the other repo. 2023-10-11 20:38:48 -04:00
comfyanonymous
877553843f Add a CLIPSave node to save CLIP model weights. 2023-10-10 01:24:49 -04:00
comfyanonymous
7bb9f6b7e8 Add a VAESave node. 2023-10-09 01:42:15 -04:00
comfyanonymous
c16f5744e3 Fix SplitImageWithAlpha and JoinImageWithAlpha. 2023-10-08 15:52:10 -04:00
comfyanonymous
69a824e9a4 Move _for_testing/custom_sampling nodes to sampling/custom_sampling. 2023-10-08 03:20:35 -04:00
comfyanonymous
0e763e880f JoinImageWithAlpha now works with any mask shape. 2023-10-04 15:54:34 -04:00