Skip to content

▷Efficiency Nodes 💬ExtendeD - Expansion of Efficiency Nodes for ComfyUI. Significant UX improvements.

License

Notifications You must be signed in to change notification settings

NyaamZ/efficiency-nodes-ED

Repository files navigation

[한국어]

✨🍬An extension pack that adds functionality to Efficiency Nodes, enhancing the user experience. The original version can be found at: https://github.com/jags111/efficiency-nodes-comfyui 🍬

Efficiency Nodes 💬ExtendeD (V8)

 

Workflow Examples:

  • Main Workflow

    (EXIF included)

  • Regional Workflow

    (EXIF included)

  • Flux Workflow

    (EXIF included)

  • Qwen Workflow

    (EXIF included)

 

Basic Overview:

  • Context:

    Unlike the original Efficiency Nodes, 💬ED Nodes exchange the context link.

    Think of the context link as a bundle combining multiple links like model, clip, vae, conditioning, etc.

    • When creating workflows, you might end up with spaghetti-like connections like this:

    • Using the context link simplifies it:

    • It’s not limited to 💬ED Nodes - other nodes can use it too.

      (EXIF included)

    • The context link output by Efficient Loader 💬ED includes the following:

      context
      model
      clip
      vae
      positive conditioning
      negative conditioning
      latent
      image
      seed
      step_refiner Instead contains batch_size
      cfg
      ckpt_name
      clip_width image width
      clip_height image height
      text_pos_g positive prompt
      text_neg_g negative prompt
      mask

 

  • Checkpoint, LoRA, and Embedding Thumbnails:

    Efficient Loader 💬ED, LoRA Stacker 💬ED, and Embedding Stacker 💬ED display thumbnails when selecting models.

    • Thumbnail Style

    • Tree Style

    • In settings > Appearance > Thumbnails > 💬ED Thumbnails display mode, you can choose the style

    • Thumbnails may not appear initially. To enable them:

      Click ℹ️ in the widget of the Efficient Loader 💬ED or LoRA Stacker 💬ED node.

      after fetch info from civitai click,

      Click the Use as preview button at the bottom to save it. (You can also directly specify the MODEL FILENAME with .jpg or .png)

    • If settings > pyssss > ModelInfo > Model Info - Image Preview Max NSFW Level is set to PG or PG13, it is considered that pyssss’ Model Info is not used. When fetch info from civitai is clicked, the SHA and TXT files will be deleted.

 

  • Wildcards:

    Efficiency Nodes 💬ED supports wildcards.

    • Usage

      • Use Select to add wildcard in Get booru Tag 💬ED to easily add wildcards.

      • Wildcards are shared with Impact Pack’s wildcards: ComfyUI\custom_nodes\comfyui-impact-pack\wildcards

      • All common wildcard syntax can be used. LoRA is also supported, but nested wildcards inside a wildcard are not allowed.

      • LoRA can be used in the following formats: <lora:File>, <lora:File:0.7>, or <lora:File:0.2:0.4>.

      • The LoRA ‘File’ name can be found in the LoRA information screen under File.

      • Wildcard encoding is handled by Efficient Loader 💬ED, so Get booru Tag 💬ED is not strictly required.

      • Supports comments: #, //, /* */.

    • Sequential Wildcards

      • In Get booru Tag 💬ED, write __wildcard__#ASC0 in the text_b field.

      • #ASCXX iterates upward from the specified number (stops at max).

      • #DSCXX iterates downward from the specified number (stops at 0). (If unsure of the max, use #DSC1000 as a rough estimate.)

      • #FIXXX fixes the value

      • Sequential wildcards are only available via Get booru Tag 💬ED.

 

  • Regional Prompt:

    Regional prompts allow different prompts for specific areas. (Regional Workflow)

    Requires installation of A8R8 ComfyUI Nodes.

    • Regional Prompt - Text 2 Image

      1. Right-click Regional Stacker 💬ED, input aspect ratio, and click Create empty image. This auto-fills dimensions in Efficient Loader 💬ED and loads an empty image into Load Image connected to Regional Script 💬ED.

      2. Define regions with masks and write prompts. (Attach LoRA Stacker 💬ED if needed.)

      3. Write a base prompt and execute the queue.

      4. Result:

        (EXIF included)

    • Regional Prompt - Image 2 Image

      1. If ComfyUI-ImageGallery-ED is installed, double-clicking an image opens the gallery.

      2. Click the red section to load the current image into Load Image connected to Regional Script 💬ED.

      3. Define masks, write prompts, and queue.

 

  • ControlNet:

    Attach Control Net Stacker to Efficient Loader 💬ED to use ControlNet.

    ControlNet and Regional Script can be used simultaneously.

 

  • Get booru Tag:

    1. If you find a good image on Danbooru or Gelbooru, copy its URL:

    2. Paste it into the url field of Get booru Tag 💬ED:

    3. Tags are extracted in real-time (comments are marked with /* */):

      Supported booru site:
    4. When there are too many tags and it feels overwhelming, you can use the Group tags by category widget in the Get booru Tag 💬ED node.

    5. Clicking it will group the tags by category.

    6. The inputs text_a and text_c are simply combined and output as text.

 

  • Set_seed_cfg_sampler:

    Nodes like KSampler (Efficient) 💬ED, FaceDetailer 💬ED, and Ultimate SD Upscale 💬ED include the set_seed_cfg_sampler widget.

    Configure seed, cfg, sampler, and scheduler once in Efficient Loader 💬ED - no need to set them repeatedly.

    • from context: Uses settings from context output by Efficient Loader 💬ED.
    • from node to ctx: Exports current node settings to context.
    • from node only: Uses current node settings without saving to context.

 

  • XY Plot:

    XY plots help find optimal settings (e.g., for cfg or sampler).

    1. Right-click KSampler (Efficient) 💬ED > Add script > XY plot.

    2. Set ksampler_output_image to Plot.

      Right-click XY plot > Add X input > XY Input: Sampler/Scheduler

      Right-click XY plot > Add Y input > XY Input: Sampler/Scheduler

    3. Running the queue displays optimal settings at a glance:

 

  • Refiner script:

    Adapted from KSampler (Advanced).

    • Uses Cases

      1. Hires FIx

        • Faster and less distortion compared to Ultimate SD Upscale 💬ED.
      2. Refining with Different Models:

        • Adjust colors, textures, etc.
    • Hires Fix with Refiner Script

      1. Upscale 2x using Load Image 💬ED (with upscale_method and keep_proportions).

        (Setting keep_proportions to 2x automatically adjusts the width and height without needing to input them manually.)

      2. Right-click KSampler (Efficient) 💬ED > Add script > Refiner Script 💬ED.

        Set steps, denoise, and start_at_step.

      3. You can attach the LoRA Stacker 💬ED to the Refiner Script 💬ED.

        (This is an additional LoRA used during refining. If a different model is loaded, only this LoRA will be used. For example, if the character becomes distorted or the proportions look off after Hires Fix, using a LoRA like this one can help improve the result.)

      4. Run the queue.

        (EXIF included)

 

  • 💬ED Node Descriptions:

    Efficient Loader 💬ED

    • Combines Load Checkpoint, CLIP Set Last Layer, Empty Latent Image, and Repeat Latent Batch into one node with enhanced functionality.
    • Switch between Txt2Img, Img2Img, and Inpaint with one click.
      (Txt2Img mode auto-sets denoise=1 in connected KSampler (Efficient) 💬ED.)
    • Inpaint(MaskDetailer) mode: Uses Impact Pack’s MaskDetailer for better quality (avoids degradation)
    • Saves seed, cfg, sampler, and scheduler to context for reuse in other nodes.
    • Click ℹ️ on the checkpoint to view the model information. (Run fetch info from civitai first.)


      (When running fetch info from civitai, large models may load slowly the first time while searching for the hash value. It is recommended to click "Use as preview" once during the initial run.)

    • Right-click menu:

      📐 Aspect Ratio... Auto-fills image_width/image_height with preset ratios (◆ = recommended).

    • Tiled VAE Encoding

      - In the Property Panel, setting Use tiled VAE encode to true enables the use of Tiled VAE
    • Supports lora_stack and cnet_stack connections.
    • In the Property Panel, you can configure the prompt encoding method using Token normalization and Weight interpretation.
    • Use Latent Rebatch (default: true) splits batch processing for stability.
    • Clip skip=0 disables CLIP skip.
    KSampler (Efficient) 💬ED

      - Modified to accept context input. Outputs sampled images to CONTEXT and OUTPUT_IMAGE; steps to STEPS_INT.

    • Tiled VAE Decode
      - Enable Use tiled VAE decode in Properties Panel for large images
    Inpaint(MaskDetailer) Mode

      - When you select Inpaint (MaskDetailer) mode in Efficient Loader 💬ED, the Efficient Sampler 💬ED switches to Mask Detailer mode.

      - Integrates Impact Pack’s MaskDetailer for good quality.

      - Can configure drop size, cycle, inpaint model, noise mask feather in Properties Panel.

    Load Image 💬ED

      - Combines image loading and upscaling. Extracts prompt text from metadata.

    • Upscale: Select method in upscale_method, input width/height.

    • You can upscale an image while preserving its aspect ratio using keep_proportions.
    • Values like 1.5x, 2x, or 3x ignore the width and height settings and automatically adjust the dimensions according to the aspect ratio.
    • based on width keeps the specified width and automatically adjusts the height according to the aspect ratio.
    • - When the queue runs, the prompt and seed are displayed as shown below.

    Save Image 🔔ED

      - Modified Save Image node with context input and audible notification.

    • Toggle sound in Properties Panel (Play sound, Sound Volume 0–1).

    • To change the notification sound, replace the file at efficiency-nodes-comfyui\js\assets\notify.mp3.

    LoRA Stacker 💬ED

      - Loads up to 9 LoRAs simultaneously.

    • Folder-based submenus with previews

    • Click the toggle button to turn individual LoRAs on or off.

    • Click ℹ️ in the LoRA widget to conveniently find trigger words (Trained Words) as shown below.

    Embedding Stacker 💬ED

      - As a simple feature, Efficient Loader 💬ED appends embedding strings to the end of both positive and negative prompts.

    • Works only with Efficient Loader 💬ED.
    • Just like the LoRA Stacker, click ℹ️ in the selection window to view information.

    Wildcard Encode 💬ED

      - The node that handles wildcards when Efficient Loader 💬ED's Use Latent Rebatch is set to true.
      (It was created to apply wildcards separately for each batch.)

    • It looks similar to the Context node and performs the same function.
    • If you set Turn on Apply Lora to true in the Properties Panel, you can delay the timing of Lora application.

    TIPO Script 💬ED

      - A modified version of the TIPO node that can accept context as an input.

      - This is a node that randomly creates prompts. For more details, refer to this link.

      - To use this, you need to install z-tipo-extension.

    Regional Stacker 💬ED, Regional Script 💬ED

      - Nodes used for regional prompts.

      - The url in Regional Script 💬ED functions the same as the url in Get booru Tag 💬ED. It can get tags from Gelbooru or Danbooru.

      - Regional Script 💬ED supports wildcard input.

    Refiner Script 💬ED

      - A node that adds a refining process to the KSampler (Efficient) 💬ED node.

      - By attaching a Load Checkpoint node, you can perform refining with a different model as shown below.

      - Setting ignore_batch_size to true means the operation runs only once, ignoring ibatch_size.

      - do_refine_only set to true means only refining is done; set to false means the image is sampled first, then refined.

    Int Holder 💬ED

      - A node that remembers the steps used when generating an image with KSampler (Efficient) 💬ED and stores it in context when running Hires Fix.

      - If steps exists in context, FaceDetailer 💬ED and Ultimate SD Upscale 💬ED will prioritize using it.

      - A node created to avoid the hassle of entering steps manually each time.

    FaceDetailer 💬ED

    - FaceDetailer addon from Impact pack.

    - A modified version that can accept context as input.

MaskDetailer 💬ED

    - MaskDetailer addon from Impact pack.

    - A modified version that can accept context as input.

Detailer (SEGS) 💬ED

    - Detailer (SEGS) addon from Impact pack.

    - A modified version that can accept context as input.

Ultimate SD Upscale 💬ED

    - Ultimate SD Upscale addon.

    - A modified version that can accept context as input.

SUPIR 💬ED

    - An addon for ComfyUI-SUPIR. While SUPIR excels at High-res Fix, it normally requires six nodes, but this addon reduces them to just two.

    - SUPIR requires a dedicated model. For downloading the model and more details, refer to this link

    - Installation of ComfyUI-SUPIR is required.

    - Example video

    chrome_qE5DA7ZfXi.mp4

 

Installation:

  1. In Manager > Custom Node Manager > Search, install the following:

    ComfyUI Impact Pack (Optional)

    ComfyUI Impact Subpack (Optional)

    ComfyUI-Custom-Scripts (Optional)

    ComfyUI_UltimateSDUpscale (Optional)

    rgthree-comfy (Absolutely Required!)

    efficiency-nodes-comfyui (Absolutely Required!)

    efficiency-nodes-ED (This Nodes)

    ComfyUI-ImageGallery-ED (It's more convenient when used together)

    ComfyUI_BiRefNet_ll (Optional)

    z-tipo-extension (Optional)

    A8R8 ComfyUI Nodes (Optional)

  2. After installation > restart > Run ComfyUI\custom_nodes\efficiency-nodes-ED\start.bat

 

How to fix errors

  • The issue where the steps in FaceDetailer 💬ED and Ultimate SD Upscale 💬ED gets fixed unexpectedly is caused by this node: Int Holder 💬ED.

    This node remembers the steps used when generating an image with Sampler (Efficient) 💬ED and stores it in context during Hires Fix. Since FaceDetailer 💬ED and Ultimate SD Upscale 💬ED prioritize using the steps stored in context, it avoids having to input steps manually every time.

    If this behavior is unnecessary or if you want to input steps manually, simply mute this node (Ctrl+M) or delete it.

 

Known bug

...

About

▷Efficiency Nodes 💬ExtendeD - Expansion of Efficiency Nodes for ComfyUI. Significant UX improvements.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published