Note, only relatively significant changes to user-visible functionality will be included here. Most recent changes at the top.
- Added support for Wan 2.2 video previews.
- The
BlehTAEVideoEncodeshould work for encoding single images or numbers of frames that aren't a multiple of the video latent temporal compression size. The input will be padded with the last frame.
This set of changes involves refactoring parts of the previewer. Please create an issue if you experience problems.
- It's now possible to set the previewer dtype, see the
preview_dtypesetting. Note: Previews probably have been using float32 which is likely slower/more memory intensive than necessary. I'd recommend setting it tovae,bfloat16orfloat16. - The previewer can show a visual representation of ACE-Steps latents (audio model). If you don't like it then you can add
aceaudioto theblacklist_formatslist in your configuration. - You can set
throttle_secs_fallbackto use a different throttle setting for the fallback previewer (which includes stuff like the ACE-Steps previewer). - Basic support for SpargeAttention, see README and https://github.com/thu-ml/SpargeAttn
- The blend mode system has been rewritten.
- Added more blend modes. Partial list as I don't remember exactly what I did: probinject, probsubtract_b, inject_difference, inject_copysign_a, inject_copysign_b, inject_avoidsign_a, inject_avoidsign_b, slice_X (where x may be dimension, flat, etc), loplerp_X, cosinesimilarity (and variants - basically reinvented SLERP here), hybrid_lerp_cosinesimilarity, subtract_b, subtract_b_scaleup_a
- Added a
BlehCFGInitSamplersampler wrapper than can be used to skip steps like CFGZeroStar zero init, but without the cost of calling the model. - Added
BlehImageAsLatentandBlehLatentAsImagenodes that let you convert IMAGE to LATENT vice versa. Note this is just to allow running image operations on latents or latent operations on images, it doesn't really convert anything. - Added a
BlehModelPatchFastTerminatenode that speeds up catching attempts to interrupt a generation. Mostly useful for video models where steps can take a very long time.
This is a fairly large set of changes. Please create an issue if you experience problems.
- Support for TAE video models/video previewing.
- Added
BlehTAEVideoEncodeandBlehTAEVideoDecodenodes for fast video latent encoding/decoding. - Added many more blend modes.
- Added
BlehEnsurePreviewernode (for use when other custom node packs overwrite Bleh's previewer).
- Added OOM fallback to the previewer.
- Added ability to compile the previewer (and a few other related options).
- Added
BlehEnsurePreviewernode that can be used to ensure Bleh's previewer is used if some other custom node overrides it.
- Fixed SageAttention 1.x support and setting
tensor_layoutshould work properly for SageAttention 2.x now. Please create an issue if you experience problems.
- Added
BlehLatentBlendnode. - Added
BlehCastnode that lets crazy people connect things that shouldn't be connected. - Added
BlehSetSigmasnode. - Some BlockOps functions have expanded capabilities now.
- The strategy the SageAttention nodes use to patch ComfyUI's attention should work for third-party custom nodes more reliably now. Please create an issue if you experience problems.
- The SageAttention nodes can now take advantage of SageAttention 2.0.1 which supports head sizes up to 128.
- Fixed an issue which prevented SageAttention from applying to models like Flux.
- Added the
BlehGlobalSageAttentionandBlehSageAttentionSamplernodes. See the README for details.
- Added the
BlehSetSamplerPresetnode and sampler presets feature.
- Added
seed_offsetparameter toBlehDisableNoiseandBlehForceSeedSamplernodes. This is to avoid a case where the same noise would be used during sampling as the initial noise. Note: Changes seeds. You can setseed_offsetto 0 to get the same behavior as before.
- Added the
BlehBlockCFGnode (see README for usage and details). - More scaling/blending types. Some of them don't work well with scaling and will be filtered, you can set the environment variable
COMFYUI_BLEH_OVERRIDE_NO_SCALEif you want the full list to be available (but you might just get garbage if you try to use them for scaling). - Possibly better normalization function (may change seeds). Set the environment variable
COMFYUI_BLEH_ORIG_NORMALIZEto disable. - TAESD previews should be faster. Also now can dynamically set the number of upscale layers to skip based on the preview size limits. Additionally it's possible to set the max preview width/height seperately - see the YAML example config.
- Add many new scaling types.
- Add enhancements that can be combined with scaling, also
apply_enhancementblockops function.
- Added
BlehPlugandBlehDisableNoise(see README for usage and description). - Increased the available upscale/downscale types for
BlehDeepShrink.
- Added
BlehBlockOpsandBlehLatentOpsnodes.
- Added
BlehRefinerAfternode.
- Added
BlehForceSeedSamplernode.
- Added
BlehModelPatchConditionalnode (see README for usage and description).
- Added
BlehInsaneChainSamplernode. - Added ability to run previews on a specific device and skip TAESD upscale layers for increased TAESD decoding performance (see README).
- Added
BlehDiscardPenultimateSigmanode.
- Added
BlehDeepShrinknode (see README for usage and description) - Add more upscale/downscale methods to the Deep Shrink node, allow setting a higher downscale factor, allow enabling antialiasing for
bilinearandbicubicmodes.
- Removed CUDA-specific stuff from TAESD previewer as the performance gains were marginal and it had a major effect on VRAM usage.
- (Hopefully) improved heuristics for batch preview layout.
- Added
maxed_batch_step_modesetting for TAESD previewer. - Fixed reversed HyperTile default start/end step values.
- Allow only applying HyperTile at a step interval.