/efficiency-nodes-comfyui

A collection of ComfyUI custom nodes. ⚠️ WARNING: This repo is no longer maintained.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

⚠️ IMPORTANT: This repository is no longer receiving updates or maintenance. For ongoing development, check out the fork of this project maintained by jags111.

Efficiency Nodes for ComfyUI

A collection of ComfyUI custom nodes to help streamline workflows and reduce total node count.

Nodes:

Efficient Loader & Eff. Loader SDXL
  • Nodes that can load & cache Checkpoint, VAE, & LoRA type models. (cache settings found in config file 'node_settings.json')
  • Able to apply LoRA & Control Net stacks via their lora_stack and cnet_stack inputs.
  • Come with positive and negative prompt text boxes. You can also set the way you want the prompt to be encoded via the token_normalization and weight_interpretation widgets.
  • These node's also feature a variety of custom menu options as shown below.

    note: "🔍 View model info..." requires ComfyUI-Custom-Scripts to be installed to function.

  • These loaders are used by the XY Plot node for many of its plot type dependencies.

KSampler (Efficient), KSampler Adv. (Efficient), KSampler SDXL (Eff.)
  • Modded KSamplers with the ability to live preview generations and/or vae decode images.
  • Feature a special seed box that allows for a clearer management of seeds. (-1 seed to apply the selected seed behavior)
  • Can execute a variety of scripts, such as the XY Plot script. To activate the script, simply connect the input connection.

           

Script Nodes
  • A group of node's that are used in conjuction with the Efficient KSamplers to execute a variety of 'pre-wired' set of actions.

  • Script nodes can be chained if their input/outputs allow it. Multiple instances of the same Script Node in a chain does nothing.

    XY Plot
    • Node that allows users to specify parameters for the Efficiency KSamplers to plot on a grid.

    HighRes-Fix
    • Node that the gives user the ability to upscale KSampler results through variety of different methods.
    • Comes out of the box with popular Neural Network Latent Upscalers such as Ttl's ComfyUi_NNLatentUpscale and City96's SD-Latent-Upscaler.
    • Supports ControlNet guided latent upscaling. (You must have Fannovel's comfyui_controlnet_aux installed to unlock this feature)

    Noise Control
    • This node gives the user the ability to manipulate noise sources in a variety of ways, such as the sampling's RNG source.
    • The CFG Denoiser noise hijack was developed by smZ, it allows you to get closer recreating Automatic1111 results.
    • Note: The CFG Denoiser does not work with a variety of conditioning types such as ControlNet & GLIGEN

    • This node also allows you to add noise Seed Variations to your generations.
    • For trying to replicate Automatic1111 images, this node will help you achieve it. Encode your prompt using "length+mean" token_normalization with "A1111" weight_interpretation, set the Noise Control Script node's rng_source to "gpu", and turn the cfg_denoiser to true.

    Tiled Upscaler
    • The Tiled Upscaler script attempts to encompas BlenderNeko's ComfyUI_TiledKSampler workflow into 1 node.
    • Script supports Tiled ControlNet help via the options.
    • Strongly recommend the preview_method be "vae_decoded_only" when running the script.

    AnimateDiff
    • To unlock the AnimateDiff script it is required you have installed Kosinkadink's ComfyUI-AnimateDiff-Evolved.
    • The latent batch_size when running this script becomes your frame count.

Image Overlay
  • Node that allows for flexible image overlaying. Works also with image batches.

SimpleEval Nodes
  • A collection of nodes that allows users to write simple Python expressions for a variety of data types using the simpleeval library.
  • To activate you must have installed the simpleeval library in your Python workspace.
  • pip install simpleeval

       

Workflow Examples:

  1. HiRes-Fixing

  2. SDXL Refining & Noise Control Script

  3. XY Plot: LoRA model_strength vs clip_strength

  4. Stacking Scripts: XY Plot + Noise Control + HiRes-Fix

  5. Stacking Scripts: AnimateDiff + HiRes-Fix (with ControlNet)

Dependencies

The python library simpleeval is required to be installed if you wish to use the Simpleeval Nodes.

pip install simpleeval

Install:

To install, drop the "efficiency-nodes-comfyui" folder into the "...\ComfyUI\ComfyUI\custom_nodes" directory and restart UI.