{ "KSampler": { "input": { "required": { "model": [ "MODEL", { "tooltip": "The model used for denoising the input latent." } ], "seed": [ "INT", { "default": 0, "min": 0, "max": 18446744073709551615, "control_after_generate": true, "tooltip": "The random seed used for creating the noise." } ], "steps": [ "INT", { "default": 20, "min": 1, "max": 10000, "tooltip": "The number of steps used in the denoising process." } ], "cfg": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01, "tooltip": "The Classifier-Free Guidance scale balances creativity and adherence to the prompt. Higher values result in images more closely matching the prompt however too high values will negatively impact quality." } ], "sampler_name": [ [ "euler", "euler_cfg_pp", "euler_ancestral", "euler_ancestral_cfg_pp", "heun", "heunpp2", "dpm_2", "dpm_2_ancestral", "lms", "dpm_fast", "dpm_adaptive", "dpmpp_2s_ancestral", "dpmpp_2s_ancestral_cfg_pp", "dpmpp_sde", "dpmpp_sde_gpu", "dpmpp_2m", "dpmpp_2m_cfg_pp", "dpmpp_2m_sde", "dpmpp_2m_sde_gpu", "dpmpp_3m_sde", "dpmpp_3m_sde_gpu", "ddpm", "lcm", "ipndm", "ipndm_v", "deis", "res_multistep", "res_multistep_cfg_pp", "res_multistep_ancestral", "res_multistep_ancestral_cfg_pp", "gradient_estimation", "er_sde", "ddim", "uni_pc", "uni_pc_bh2" ], { "tooltip": "The algorithm used when sampling, this can affect the quality, speed, and style of the generated output." } ], "scheduler": [ [ "normal", "karras", "exponential", "sgm_uniform", "simple", "ddim_uniform", "beta", "linear_quadratic", "kl_optimal" ], { "tooltip": "The scheduler controls how noise is gradually removed to form the image." } ], "positive": [ "CONDITIONING", { "tooltip": "The conditioning describing the attributes you want to include in the image." } ], "negative": [ "CONDITIONING", { "tooltip": "The conditioning describing the attributes you want to exclude from the image." } ], "latent_image": [ "LATENT", { "tooltip": "The latent image to denoise." } ], "denoise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "tooltip": "The amount of denoising applied, lower values will maintain the structure of the initial image allowing for image to image sampling." } ] } }, "input_order": { "required": [ "model", "seed", "steps", "cfg", "sampler_name", "scheduler", "positive", "negative", "latent_image", "denoise" ] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "KSampler", "display_name": "KSampler", "description": "Uses the provided model, positive and negative conditioning to denoise the latent image.", "python_module": "nodes", "category": "sampling", "output_node": false, "output_tooltips": ["The denoised latent."] }, "CheckpointLoaderSimple": { "input": { "required": { "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ], { "tooltip": "The name of the checkpoint (model) to load." } ] } }, "input_order": { "required": ["ckpt_name"] }, "output": ["MODEL", "CLIP", "VAE"], "output_is_list": [false, false, false], "output_name": ["MODEL", "CLIP", "VAE"], "name": "CheckpointLoaderSimple", "display_name": "Load Checkpoint", "description": "Loads a diffusion model checkpoint, diffusion models are used to denoise latents.", "python_module": "nodes", "category": "loaders", "output_node": false, "output_tooltips": [ "The model used for denoising latents.", "The CLIP model used for encoding text prompts.", "The VAE model used for encoding and decoding images to and from latent space." ] }, "CLIPTextEncode": { "input": { "required": { "text": [ "STRING", { "multiline": true, "dynamicPrompts": true, "tooltip": "The text to be encoded." } ], "clip": [ "CLIP", { "tooltip": "The CLIP model used for encoding the text." } ] } }, "input_order": { "required": ["text", "clip"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncode", "display_name": "CLIP Text Encode (Prompt)", "description": "Encodes a text prompt using a CLIP model into an embedding that can be used to guide the diffusion model towards generating specific images.", "python_module": "nodes", "category": "conditioning", "output_node": false, "output_tooltips": [ "A conditioning containing the embedded text used to guide the diffusion model." ] }, "CLIPSetLastLayer": { "input": { "required": { "clip": ["CLIP"], "stop_at_clip_layer": [ "INT", { "default": -1, "min": -24, "max": -1, "step": 1 } ] } }, "input_order": { "required": ["clip", "stop_at_clip_layer"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPSetLastLayer", "display_name": "CLIP Set Last Layer", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "VAEDecode": { "input": { "required": { "samples": ["LATENT", { "tooltip": "The latent to be decoded." }], "vae": [ "VAE", { "tooltip": "The VAE model used for decoding the latent." } ] } }, "input_order": { "required": ["samples", "vae"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "VAEDecode", "display_name": "VAE Decode", "description": "Decodes latent images back into pixel space images.", "python_module": "nodes", "category": "latent", "output_node": false, "output_tooltips": ["The decoded image."] }, "VAEEncode": { "input": { "required": { "pixels": ["IMAGE"], "vae": ["VAE"] } }, "input_order": { "required": ["pixels", "vae"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "VAEEncode", "display_name": "VAE Encode", "description": "", "python_module": "nodes", "category": "latent", "output_node": false }, "VAEEncodeForInpaint": { "input": { "required": { "pixels": ["IMAGE"], "vae": ["VAE"], "mask": ["MASK"], "grow_mask_by": [ "INT", { "default": 6, "min": 0, "max": 64, "step": 1 } ] } }, "input_order": { "required": ["pixels", "vae", "mask", "grow_mask_by"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "VAEEncodeForInpaint", "display_name": "VAE Encode (for Inpainting)", "description": "", "python_module": "nodes", "category": "latent/inpaint", "output_node": false }, "VAELoader": { "input": { "required": { "vae_name": [ [ "ae.safetensors", "sdxl_vae.safetensors", "vae-ft-mse-840000-ema-pruned.ckpt" ] ] } }, "input_order": { "required": ["vae_name"] }, "output": ["VAE"], "output_is_list": [false], "output_name": ["VAE"], "name": "VAELoader", "display_name": "Load VAE", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "EmptyLatentImage": { "input": { "required": { "width": [ "INT", { "default": 512, "min": 16, "max": 16384, "step": 8, "tooltip": "The width of the latent images in pixels." } ], "height": [ "INT", { "default": 512, "min": 16, "max": 16384, "step": 8, "tooltip": "The height of the latent images in pixels." } ], "batch_size": [ "INT", { "default": 1, "min": 1, "max": 4096, "tooltip": "The number of latent images in the batch." } ] } }, "input_order": { "required": ["width", "height", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyLatentImage", "display_name": "Empty Latent Image", "description": "Create a new batch of empty latent images to be denoised via sampling.", "python_module": "nodes", "category": "latent", "output_node": false, "output_tooltips": ["The empty latent image batch."] }, "LatentUpscale": { "input": { "required": { "samples": ["LATENT"], "upscale_method": [ ["nearest-exact", "bilinear", "area", "bicubic", "bislerp"] ], "width": ["INT", { "default": 512, "min": 0, "max": 16384, "step": 8 }], "height": [ "INT", { "default": 512, "min": 0, "max": 16384, "step": 8 } ], "crop": [["disabled", "center"]] } }, "input_order": { "required": ["samples", "upscale_method", "width", "height", "crop"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentUpscale", "display_name": "Upscale Latent", "description": "", "python_module": "nodes", "category": "latent", "output_node": false }, "LatentUpscaleBy": { "input": { "required": { "samples": ["LATENT"], "upscale_method": [ ["nearest-exact", "bilinear", "area", "bicubic", "bislerp"] ], "scale_by": [ "FLOAT", { "default": 1.5, "min": 0.01, "max": 8.0, "step": 0.01 } ] } }, "input_order": { "required": ["samples", "upscale_method", "scale_by"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentUpscaleBy", "display_name": "Upscale Latent By", "description": "", "python_module": "nodes", "category": "latent", "output_node": false }, "LatentFromBatch": { "input": { "required": { "samples": ["LATENT"], "batch_index": ["INT", { "default": 0, "min": 0, "max": 63 }], "length": ["INT", { "default": 1, "min": 1, "max": 64 }] } }, "input_order": { "required": ["samples", "batch_index", "length"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentFromBatch", "display_name": "Latent From Batch", "description": "", "python_module": "nodes", "category": "latent/batch", "output_node": false }, "RepeatLatentBatch": { "input": { "required": { "samples": ["LATENT"], "amount": ["INT", { "default": 1, "min": 1, "max": 64 }] } }, "input_order": { "required": ["samples", "amount"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "RepeatLatentBatch", "display_name": "Repeat Latent Batch", "description": "", "python_module": "nodes", "category": "latent/batch", "output_node": false }, "SaveImage": { "input": { "required": { "images": ["IMAGE", { "tooltip": "The images to save." }], "filename_prefix": [ "STRING", { "default": "ComfyUI", "tooltip": "The prefix for the file to save. This may include formatting information such as %date:yyyy-MM-dd% or %Empty Latent Image.width% to include values from nodes." } ] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["images", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveImage", "display_name": "Save Image", "description": "Saves the input images to your ComfyUI output directory.", "python_module": "nodes", "category": "image", "output_node": true }, "PreviewImage": { "input": { "required": { "images": ["IMAGE"] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["images"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "PreviewImage", "display_name": "Preview Image", "description": "Saves the input images to your ComfyUI output directory.", "python_module": "nodes", "category": "image", "output_node": true }, "LoadImage": { "input": { "required": { "image": [[], { "image_upload": true }] } }, "input_order": { "required": ["image"] }, "output": ["IMAGE", "MASK"], "output_is_list": [false, false], "output_name": ["IMAGE", "MASK"], "name": "LoadImage", "display_name": "Load Image", "description": "", "python_module": "nodes", "category": "image", "output_node": false }, "LoadImageMask": { "input": { "required": { "image": [[], { "image_upload": true }], "channel": [["alpha", "red", "green", "blue"]] } }, "input_order": { "required": ["image", "channel"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "LoadImageMask", "display_name": "Load Image (as Mask)", "description": "", "python_module": "nodes", "category": "mask", "output_node": false }, "LoadImageOutput": { "input": { "required": { "image": [ "COMBO", { "image_upload": true, "image_folder": "output", "remote": { "route": "/internal/files/output", "refresh_button": true, "control_after_refresh": "first" } } ] } }, "input_order": { "required": ["image"] }, "output": ["IMAGE", "MASK"], "output_is_list": [false, false], "output_name": ["IMAGE", "MASK"], "name": "LoadImageOutput", "display_name": "Load Image (from Outputs)", "description": "Load an image from the output folder. When the refresh button is clicked, the node will update the image list and automatically select the first image, allowing for easy iteration.", "python_module": "nodes", "category": "image", "output_node": false, "experimental": true }, "ImageScale": { "input": { "required": { "image": ["IMAGE"], "upscale_method": [ ["nearest-exact", "bilinear", "area", "bicubic", "lanczos"] ], "width": ["INT", { "default": 512, "min": 0, "max": 16384, "step": 1 }], "height": [ "INT", { "default": 512, "min": 0, "max": 16384, "step": 1 } ], "crop": [["disabled", "center"]] } }, "input_order": { "required": ["image", "upscale_method", "width", "height", "crop"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageScale", "display_name": "Upscale Image", "description": "", "python_module": "nodes", "category": "image/upscaling", "output_node": false }, "ImageScaleBy": { "input": { "required": { "image": ["IMAGE"], "upscale_method": [ ["nearest-exact", "bilinear", "area", "bicubic", "lanczos"] ], "scale_by": [ "FLOAT", { "default": 1.0, "min": 0.01, "max": 8.0, "step": 0.01 } ] } }, "input_order": { "required": ["image", "upscale_method", "scale_by"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageScaleBy", "display_name": "Upscale Image By", "description": "", "python_module": "nodes", "category": "image/upscaling", "output_node": false }, "ImageInvert": { "input": { "required": { "image": ["IMAGE"] } }, "input_order": { "required": ["image"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageInvert", "display_name": "Invert Image", "description": "", "python_module": "nodes", "category": "image", "output_node": false }, "ImageBatch": { "input": { "required": { "image1": ["IMAGE"], "image2": ["IMAGE"] } }, "input_order": { "required": ["image1", "image2"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageBatch", "display_name": "Batch Images", "description": "", "python_module": "nodes", "category": "image", "output_node": false }, "ImagePadForOutpaint": { "input": { "required": { "image": ["IMAGE"], "left": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "top": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "right": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "bottom": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "feathering": [ "INT", { "default": 40, "min": 0, "max": 16384, "step": 1 } ] } }, "input_order": { "required": ["image", "left", "top", "right", "bottom", "feathering"] }, "output": ["IMAGE", "MASK"], "output_is_list": [false, false], "output_name": ["IMAGE", "MASK"], "name": "ImagePadForOutpaint", "display_name": "Pad Image for Outpainting", "description": "", "python_module": "nodes", "category": "image", "output_node": false }, "EmptyImage": { "input": { "required": { "width": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }], "height": [ "INT", { "default": 512, "min": 1, "max": 16384, "step": 1 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }], "color": [ "INT", { "default": 0, "min": 0, "max": 16777215, "step": 1, "display": "color" } ] } }, "input_order": { "required": ["width", "height", "batch_size", "color"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "EmptyImage", "display_name": "EmptyImage", "description": "", "python_module": "nodes", "category": "image", "output_node": false }, "ConditioningAverage": { "input": { "required": { "conditioning_to": ["CONDITIONING"], "conditioning_from": ["CONDITIONING"], "conditioning_to_strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "conditioning_to", "conditioning_from", "conditioning_to_strength" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningAverage", "display_name": "ConditioningAverage", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningCombine": { "input": { "required": { "conditioning_1": ["CONDITIONING"], "conditioning_2": ["CONDITIONING"] } }, "input_order": { "required": ["conditioning_1", "conditioning_2"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningCombine", "display_name": "Conditioning (Combine)", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningConcat": { "input": { "required": { "conditioning_to": ["CONDITIONING"], "conditioning_from": ["CONDITIONING"] } }, "input_order": { "required": ["conditioning_to", "conditioning_from"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningConcat", "display_name": "Conditioning (Concat)", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningSetArea": { "input": { "required": { "conditioning": ["CONDITIONING"], "width": ["INT", { "default": 64, "min": 64, "max": 16384, "step": 8 }], "height": [ "INT", { "default": 64, "min": 64, "max": 16384, "step": 8 } ], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["conditioning", "width", "height", "x", "y", "strength"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetArea", "display_name": "Conditioning (Set Area)", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningSetAreaPercentage": { "input": { "required": { "conditioning": ["CONDITIONING"], "width": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ], "height": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ], "x": ["FLOAT", { "default": 0, "min": 0, "max": 1.0, "step": 0.01 }], "y": ["FLOAT", { "default": 0, "min": 0, "max": 1.0, "step": 0.01 }], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["conditioning", "width", "height", "x", "y", "strength"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetAreaPercentage", "display_name": "Conditioning (Set Area with Percentage)", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningSetAreaStrength": { "input": { "required": { "conditioning": ["CONDITIONING"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["conditioning", "strength"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetAreaStrength", "display_name": "ConditioningSetAreaStrength", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ConditioningSetMask": { "input": { "required": { "conditioning": ["CONDITIONING"], "mask": ["MASK"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "set_cond_area": [["default", "mask bounds"]] } }, "input_order": { "required": ["conditioning", "mask", "strength", "set_cond_area"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetMask", "display_name": "Conditioning (Set Mask)", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "KSamplerAdvanced": { "input": { "required": { "model": ["MODEL"], "add_noise": [["enable", "disable"]], "noise_seed": [ "INT", { "default": 0, "min": 0, "max": 18446744073709551615, "control_after_generate": true } ], "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "cfg": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ], "sampler_name": [ [ "euler", "euler_cfg_pp", "euler_ancestral", "euler_ancestral_cfg_pp", "heun", "heunpp2", "dpm_2", "dpm_2_ancestral", "lms", "dpm_fast", "dpm_adaptive", "dpmpp_2s_ancestral", "dpmpp_2s_ancestral_cfg_pp", "dpmpp_sde", "dpmpp_sde_gpu", "dpmpp_2m", "dpmpp_2m_cfg_pp", "dpmpp_2m_sde", "dpmpp_2m_sde_gpu", "dpmpp_3m_sde", "dpmpp_3m_sde_gpu", "ddpm", "lcm", "ipndm", "ipndm_v", "deis", "res_multistep", "res_multistep_cfg_pp", "res_multistep_ancestral", "res_multistep_ancestral_cfg_pp", "gradient_estimation", "er_sde", "ddim", "uni_pc", "uni_pc_bh2" ] ], "scheduler": [ [ "normal", "karras", "exponential", "sgm_uniform", "simple", "ddim_uniform", "beta", "linear_quadratic", "kl_optimal" ] ], "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "latent_image": ["LATENT"], "start_at_step": ["INT", { "default": 0, "min": 0, "max": 10000 }], "end_at_step": ["INT", { "default": 10000, "min": 0, "max": 10000 }], "return_with_leftover_noise": [["disable", "enable"]] } }, "input_order": { "required": [ "model", "add_noise", "noise_seed", "steps", "cfg", "sampler_name", "scheduler", "positive", "negative", "latent_image", "start_at_step", "end_at_step", "return_with_leftover_noise" ] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "KSamplerAdvanced", "display_name": "KSampler (Advanced)", "description": "", "python_module": "nodes", "category": "sampling", "output_node": false }, "SetLatentNoiseMask": { "input": { "required": { "samples": ["LATENT"], "mask": ["MASK"] } }, "input_order": { "required": ["samples", "mask"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "SetLatentNoiseMask", "display_name": "Set Latent Noise Mask", "description": "", "python_module": "nodes", "category": "latent/inpaint", "output_node": false }, "LatentComposite": { "input": { "required": { "samples_to": ["LATENT"], "samples_from": ["LATENT"], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "feather": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }] } }, "input_order": { "required": ["samples_to", "samples_from", "x", "y", "feather"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentComposite", "display_name": "Latent Composite", "description": "", "python_module": "nodes", "category": "latent", "output_node": false }, "LatentBlend": { "input": { "required": { "samples1": ["LATENT"], "samples2": ["LATENT"], "blend_factor": [ "FLOAT", { "default": 0.5, "min": 0, "max": 1, "step": 0.01 } ] } }, "input_order": { "required": ["samples1", "samples2", "blend_factor"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentBlend", "display_name": "Latent Blend", "description": "", "python_module": "nodes", "category": "_for_testing", "output_node": false }, "LatentRotate": { "input": { "required": { "samples": ["LATENT"], "rotation": [["none", "90 degrees", "180 degrees", "270 degrees"]] } }, "input_order": { "required": ["samples", "rotation"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentRotate", "display_name": "Rotate Latent", "description": "", "python_module": "nodes", "category": "latent/transform", "output_node": false }, "LatentFlip": { "input": { "required": { "samples": ["LATENT"], "flip_method": [["x-axis: vertically", "y-axis: horizontally"]] } }, "input_order": { "required": ["samples", "flip_method"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentFlip", "display_name": "Flip Latent", "description": "", "python_module": "nodes", "category": "latent/transform", "output_node": false }, "LatentCrop": { "input": { "required": { "samples": ["LATENT"], "width": [ "INT", { "default": 512, "min": 64, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 512, "min": 64, "max": 16384, "step": 8 } ], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }] } }, "input_order": { "required": ["samples", "width", "height", "x", "y"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentCrop", "display_name": "Crop Latent", "description": "", "python_module": "nodes", "category": "latent/transform", "output_node": false }, "LoraLoader": { "input": { "required": { "model": [ "MODEL", { "tooltip": "The diffusion model the LoRA will be applied to." } ], "clip": [ "CLIP", { "tooltip": "The CLIP model the LoRA will be applied to." } ], "lora_name": [ [ "Characters/Cortana/Cortana(revAnimated).safetensors", "Characters/Cortana/Cortana.safetensors", "Characters/Cortana/Cortana_XL.safetensors", "Characters/Cortana/cortana_xl_v3.safetensors", "Characters/D.va/DVaOWXL - by KillerUwU13_AI.safetensors", "Characters/D.va/DVaPony.safetensors", "Characters/Lara Croft/ClassicLara.safetensors", "Characters/Lara Croft/LaraCroft_character-20.safetensors", "Characters/Lara Croft/lara_croft_xl_v2.safetensors", "Characters/Peni Parker/32dim-MR_PeniParker-PONY.safetensors", "Characters/Peni Parker/PeniParkerRivals-10.safetensors", "Characters/Peni Parker/Peni_Parker-000007.safetensors", "Characters/Peni Parker/Peni_parker_marvel_rivels.safetensors", "Characters/Samus Aran/Samus AranPonyLora.safetensors", "Characters/Samus Aran/samus aran.safetensors", "Characters/Samus Aran/samus-09.safetensors", "Characters/Scarlett Johansson/Scarlett-v20.safetensors", "Characters/Scarlett Johansson/Scarlett4.safetensors", "Characters/Widowmaker/SDXL_ow1 Windowmaker.safetensors", "Characters/Widowmaker/WidowmakerPonyLoRA.safetensors", "Characters/Widowmaker/Widowmaker_cgi.safetensors", "Characters/princess_xl_v2.safetensors", "Characters/princess_zelda.safetensors", "Citron Pony Styles/80s_Pop_PDXL.safetensors", "Citron Pony Styles/Alola_Style_PDXL.safetensors", "Citron Pony Styles/BoldToon.safetensors", "Citron Pony Styles/CandyCuteStylePDXL.safetensors", "Citron Pony Styles/CatalystStylePDXL.safetensors", "Citron Pony Styles/Citron3D_PDXL.safetensors", "Citron Pony Styles/CitronAnimeTreasure-07.safetensors", "Citron Pony Styles/EnergyCAT.safetensors", "Citron Pony Styles/FlatAnimeP1.safetensors", "Citron Pony Styles/LunarCAT_Style.safetensors", "Citron Pony Styles/RealisticAnime.safetensors", "Citron Pony Styles/Smooth.safetensors", "Citron Pony Styles/Vivid.safetensors", "Expressive_H-000001.safetensors", "Hand v2.safetensors", "LogoRedmondV2-Logo-LogoRedmAF.safetensors", "NSFW/2025/cheekbulge.safetensors", "NSFW/2025/closedmouthfullofcum.safetensors", "NSFW/2025/doublepenetration_r1.safetensors", "NSFW/2025/xray (1).safetensors", "NSFW/Acts/LapBlowLyingV1.safetensors", "NSFW/Acts/Long tongue fellatio.safetensors", "NSFW/Acts/Proper_Grinding.safetensors", "NSFW/Acts/Vacuum felaltio-000009.safetensors", "NSFW/Acts/assworship.safetensors", "NSFW/Acts/boobsuck.safetensors", "NSFW/Acts/breasts_squeezed_together_v02.safetensors", "NSFW/Acts/chikan_v31.safetensors", "NSFW/Acts/concept_sideboobpeek_ponyXL.safetensors", "NSFW/Acts/covering privates_XL_V10.safetensors", "NSFW/Acts/facesit_pov_pdxl_goofy.safetensors", "NSFW/Acts/grinding_pony_V10.safetensors", "NSFW/Acts/hand_milking_pdxl_goofy.safetensors", "NSFW/Acts/mating_press_v02-pony.safetensors", "NSFW/Acts/pantjob.safetensors", "NSFW/Acts/undressing_another_v05.safetensors", "NSFW/All the way through tentacles.safetensors", "NSFW/Deep_Throat_JAV_MIAA572_PONY_V1.safetensors", "NSFW/FComic_1to1000_Pony_V1.safetensors", "NSFW/FComic_HardCore_Pony_V1.safetensors", "NSFW/Poses/Double anal back-000006.safetensors", "NSFW/Poses/Double penetration suspended LORA-000009.safetensors", "NSFW/Poses/Missionary DP 2-000008.safetensors", "NSFW/Poses/Piledrive pov-000008.safetensors", "NSFW/Poses/Pressed_Missionary_Feet_On_Chest.safetensors", "NSFW/Poses/Pretzel.safetensors", "NSFW/Poses/Reverse spitroast.safetensors", "NSFW/Poses/chokesex.safetensors", "NSFW/Poses/dp_from_behind_v01b.safetensors", "NSFW/Poses/leg_up_side_matsubamuzushi_pony_V10.safetensors", "NSFW/Poses/suspended_congress_kiben_pony_V10.safetensors", "NSFW/Poses/suspensionPony.safetensors", "NSFW/Poses/top-down_doggystyle_v02-pony.safetensors", "NSFW/Poses/wheel_barrow_oshiguruma_pony_V10.safetensors", "NSFW/Rough_Sex_Any_position.safetensors", "NSFW/Saya-spread pussy(fingers).safetensors", "NSFW/X-ray anal 3.safetensors", "NSFW/closeprone.safetensors", "NSFW/cumontongue.safetensors", "NSFW/helpbj.safetensors", "NSFW/micro_bra_pdxl_goofy.safetensors", "NSFW/mouthful.safetensors", "NSFW/projectile_cum_v02.safetensors", "NSFW/pussy_sandwich_v02-pony.safetensors", "NSFW/restroom_v02a.safetensors", "NSFW/spp_spreadpussy-W-V1.safetensors", "Vixon's Pony Styles/Sh4rd4n1cXLP.safetensors", "Vixon's Pony Styles/ch33s3XLP.safetensors", "Vixon's Pony Styles/itsyelizXLP.safetensors", "Vixon's Pony Styles/lalangheejXLP.safetensors", "Vixon's Pony Styles/nikkileeismeXLP.safetensors", "Vixon's Pony Styles/tomidoronXLP.safetensors", "WowifierXL-V2.safetensors", "detailed_notrigger.safetensors", "detailxl.safetensors" ], { "tooltip": "The name of the LoRA." } ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -100.0, "max": 100.0, "step": 0.01, "tooltip": "How strongly to modify the diffusion model. This value can be negative." } ], "strength_clip": [ "FLOAT", { "default": 1.0, "min": -100.0, "max": 100.0, "step": 0.01, "tooltip": "How strongly to modify the CLIP model. This value can be negative." } ] } }, "input_order": { "required": [ "model", "clip", "lora_name", "strength_model", "strength_clip" ] }, "output": ["MODEL", "CLIP"], "output_is_list": [false, false], "output_name": ["MODEL", "CLIP"], "name": "LoraLoader", "display_name": "Load LoRA", "description": "LoRAs are used to modify diffusion and CLIP models, altering the way in which latents are denoised such as applying styles. Multiple LoRA nodes can be linked together.", "python_module": "nodes", "category": "loaders", "output_node": false, "output_tooltips": [ "The modified diffusion model.", "The modified CLIP model." ] }, "CLIPLoader": { "input": { "required": { "clip_name": [[]], "type": [ [ "stable_diffusion", "stable_cascade", "sd3", "stable_audio", "mochi", "ltxv", "pixart", "cosmos", "lumina2", "wan" ] ] }, "optional": { "device": [["default", "cpu"], { "advanced": true }] } }, "input_order": { "required": ["clip_name", "type"], "optional": ["device"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPLoader", "display_name": "Load CLIP", "description": "[Recipes]\n\nstable_diffusion: clip-l\nstable_cascade: clip-g\nsd3: t5 xxl/ clip-g / clip-l\nstable_audio: t5 base\nmochi: t5 xxl\ncosmos: old t5 xxl\nlumina2: gemma 2 2B\nwan: umt5 xxl", "python_module": "nodes", "category": "advanced/loaders", "output_node": false }, "UNETLoader": { "input": { "required": { "unet_name": [[]], "weight_dtype": [ ["default", "fp8_e4m3fn", "fp8_e4m3fn_fast", "fp8_e5m2"] ] } }, "input_order": { "required": ["unet_name", "weight_dtype"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "UNETLoader", "display_name": "Load Diffusion Model", "description": "", "python_module": "nodes", "category": "advanced/loaders", "output_node": false }, "DualCLIPLoader": { "input": { "required": { "clip_name1": [[]], "clip_name2": [[]], "type": [["sdxl", "sd3", "flux", "hunyuan_video"]] }, "optional": { "device": [["default", "cpu"], { "advanced": true }] } }, "input_order": { "required": ["clip_name1", "clip_name2", "type"], "optional": ["device"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "DualCLIPLoader", "display_name": "DualCLIPLoader", "description": "[Recipes]\n\nsdxl: clip-l, clip-g\nsd3: clip-l, clip-g / clip-l, t5 / clip-g, t5\nflux: clip-l, t5", "python_module": "nodes", "category": "advanced/loaders", "output_node": false }, "CLIPVisionEncode": { "input": { "required": { "clip_vision": ["CLIP_VISION"], "image": ["IMAGE"], "crop": [["center", "none"]] } }, "input_order": { "required": ["clip_vision", "image", "crop"] }, "output": ["CLIP_VISION_OUTPUT"], "output_is_list": [false], "output_name": ["CLIP_VISION_OUTPUT"], "name": "CLIPVisionEncode", "display_name": "CLIP Vision Encode", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "StyleModelApply": { "input": { "required": { "conditioning": ["CONDITIONING"], "style_model": ["STYLE_MODEL"], "clip_vision_output": ["CLIP_VISION_OUTPUT"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.001 } ], "strength_type": [["multiply", "attn_bias"]] } }, "input_order": { "required": [ "conditioning", "style_model", "clip_vision_output", "strength", "strength_type" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "StyleModelApply", "display_name": "Apply Style Model", "description": "", "python_module": "nodes", "category": "conditioning/style_model", "output_node": false }, "unCLIPConditioning": { "input": { "required": { "conditioning": ["CONDITIONING"], "clip_vision_output": ["CLIP_VISION_OUTPUT"], "strength": [ "FLOAT", { "default": 1.0, "min": -10.0, "max": 10.0, "step": 0.01 } ], "noise_augmentation": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "conditioning", "clip_vision_output", "strength", "noise_augmentation" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "unCLIPConditioning", "display_name": "unCLIPConditioning", "description": "", "python_module": "nodes", "category": "conditioning", "output_node": false }, "ControlNetApply": { "input": { "required": { "conditioning": ["CONDITIONING"], "control_net": ["CONTROL_NET"], "image": ["IMAGE"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["conditioning", "control_net", "image", "strength"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ControlNetApply", "display_name": "Apply ControlNet (OLD)", "description": "", "python_module": "nodes", "category": "conditioning/controlnet", "output_node": false, "deprecated": true }, "ControlNetApplyAdvanced": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "control_net": ["CONTROL_NET"], "image": ["IMAGE"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] }, "optional": { "vae": ["VAE"] } }, "input_order": { "required": [ "positive", "negative", "control_net", "image", "strength", "start_percent", "end_percent" ], "optional": ["vae"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "ControlNetApplyAdvanced", "display_name": "Apply ControlNet", "description": "", "python_module": "nodes", "category": "conditioning/controlnet", "output_node": false }, "ControlNetLoader": { "input": { "required": { "control_net_name": [[]] } }, "input_order": { "required": ["control_net_name"] }, "output": ["CONTROL_NET"], "output_is_list": [false], "output_name": ["CONTROL_NET"], "name": "ControlNetLoader", "display_name": "Load ControlNet Model", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "DiffControlNetLoader": { "input": { "required": { "model": ["MODEL"], "control_net_name": [[]] } }, "input_order": { "required": ["model", "control_net_name"] }, "output": ["CONTROL_NET"], "output_is_list": [false], "output_name": ["CONTROL_NET"], "name": "DiffControlNetLoader", "display_name": "Load ControlNet Model (diff)", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "StyleModelLoader": { "input": { "required": { "style_model_name": [[]] } }, "input_order": { "required": ["style_model_name"] }, "output": ["STYLE_MODEL"], "output_is_list": [false], "output_name": ["STYLE_MODEL"], "name": "StyleModelLoader", "display_name": "Load Style Model", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "CLIPVisionLoader": { "input": { "required": { "clip_name": [[]] } }, "input_order": { "required": ["clip_name"] }, "output": ["CLIP_VISION"], "output_is_list": [false], "output_name": ["CLIP_VISION"], "name": "CLIPVisionLoader", "display_name": "Load CLIP Vision", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "VAEDecodeTiled": { "input": { "required": { "samples": ["LATENT"], "vae": ["VAE"], "tile_size": [ "INT", { "default": 512, "min": 64, "max": 4096, "step": 32 } ], "overlap": [ "INT", { "default": 64, "min": 0, "max": 4096, "step": 32 } ], "temporal_size": [ "INT", { "default": 64, "min": 8, "max": 4096, "step": 4, "tooltip": "Only used for video VAEs: Amount of frames to decode at a time." } ], "temporal_overlap": [ "INT", { "default": 8, "min": 4, "max": 4096, "step": 4, "tooltip": "Only used for video VAEs: Amount of frames to overlap." } ] } }, "input_order": { "required": [ "samples", "vae", "tile_size", "overlap", "temporal_size", "temporal_overlap" ] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "VAEDecodeTiled", "display_name": "VAE Decode (Tiled)", "description": "", "python_module": "nodes", "category": "_for_testing", "output_node": false }, "VAEEncodeTiled": { "input": { "required": { "pixels": ["IMAGE"], "vae": ["VAE"], "tile_size": [ "INT", { "default": 512, "min": 64, "max": 4096, "step": 64 } ], "overlap": [ "INT", { "default": 64, "min": 0, "max": 4096, "step": 32 } ], "temporal_size": [ "INT", { "default": 64, "min": 8, "max": 4096, "step": 4, "tooltip": "Only used for video VAEs: Amount of frames to encode at a time." } ], "temporal_overlap": [ "INT", { "default": 8, "min": 4, "max": 4096, "step": 4, "tooltip": "Only used for video VAEs: Amount of frames to overlap." } ] } }, "input_order": { "required": [ "pixels", "vae", "tile_size", "overlap", "temporal_size", "temporal_overlap" ] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "VAEEncodeTiled", "display_name": "VAE Encode (Tiled)", "description": "", "python_module": "nodes", "category": "_for_testing", "output_node": false }, "unCLIPCheckpointLoader": { "input": { "required": { "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ] ] } }, "input_order": { "required": ["ckpt_name"] }, "output": ["MODEL", "CLIP", "VAE", "CLIP_VISION"], "output_is_list": [false, false, false, false], "output_name": ["MODEL", "CLIP", "VAE", "CLIP_VISION"], "name": "unCLIPCheckpointLoader", "display_name": "unCLIPCheckpointLoader", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "GLIGENLoader": { "input": { "required": { "gligen_name": [[]] } }, "input_order": { "required": ["gligen_name"] }, "output": ["GLIGEN"], "output_is_list": [false], "output_name": ["GLIGEN"], "name": "GLIGENLoader", "display_name": "GLIGENLoader", "description": "", "python_module": "nodes", "category": "loaders", "output_node": false }, "GLIGENTextBoxApply": { "input": { "required": { "conditioning_to": ["CONDITIONING"], "clip": ["CLIP"], "gligen_textbox_model": ["GLIGEN"], "text": ["STRING", { "multiline": true, "dynamicPrompts": true }], "width": ["INT", { "default": 64, "min": 8, "max": 16384, "step": 8 }], "height": ["INT", { "default": 64, "min": 8, "max": 16384, "step": 8 }], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }] } }, "input_order": { "required": [ "conditioning_to", "clip", "gligen_textbox_model", "text", "width", "height", "x", "y" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "GLIGENTextBoxApply", "display_name": "GLIGENTextBoxApply", "description": "", "python_module": "nodes", "category": "conditioning/gligen", "output_node": false }, "InpaintModelConditioning": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "vae": ["VAE"], "pixels": ["IMAGE"], "mask": ["MASK"], "noise_mask": [ "BOOLEAN", { "default": true, "tooltip": "Add a noise mask to the latent so sampling will only happen within the mask. Might improve results or completely break things depending on the model." } ] } }, "input_order": { "required": [ "positive", "negative", "vae", "pixels", "mask", "noise_mask" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "InpaintModelConditioning", "display_name": "InpaintModelConditioning", "description": "", "python_module": "nodes", "category": "conditioning/inpaint", "output_node": false }, "CheckpointLoader": { "input": { "required": { "config_name": [ [ "anything_v3.yaml", "v1-inference.yaml", "v1-inference_clip_skip_2.yaml", "v1-inference_clip_skip_2_fp16.yaml", "v1-inference_fp16.yaml", "v1-inpainting-inference.yaml", "v2-inference-v.yaml", "v2-inference-v_fp32.yaml", "v2-inference.yaml", "v2-inference_fp32.yaml", "v2-inpainting-inference.yaml" ] ], "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ] ] } }, "input_order": { "required": ["config_name", "ckpt_name"] }, "output": ["MODEL", "CLIP", "VAE"], "output_is_list": [false, false, false], "output_name": ["MODEL", "CLIP", "VAE"], "name": "CheckpointLoader", "display_name": "Load Checkpoint With Config (DEPRECATED)", "description": "", "python_module": "nodes", "category": "advanced/loaders", "output_node": false, "deprecated": true }, "DiffusersLoader": { "input": { "required": { "model_path": [[]] } }, "input_order": { "required": ["model_path"] }, "output": ["MODEL", "CLIP", "VAE"], "output_is_list": [false, false, false], "output_name": ["MODEL", "CLIP", "VAE"], "name": "DiffusersLoader", "display_name": "DiffusersLoader", "description": "", "python_module": "nodes", "category": "advanced/loaders/deprecated", "output_node": false }, "LoadLatent": { "input": { "required": { "latent": [[]] } }, "input_order": { "required": ["latent"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LoadLatent", "display_name": "LoadLatent", "description": "", "python_module": "nodes", "category": "_for_testing", "output_node": false }, "SaveLatent": { "input": { "required": { "samples": ["LATENT"], "filename_prefix": ["STRING", { "default": "latents/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["samples", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveLatent", "display_name": "SaveLatent", "description": "", "python_module": "nodes", "category": "_for_testing", "output_node": true }, "ConditioningZeroOut": { "input": { "required": { "conditioning": ["CONDITIONING"] } }, "input_order": { "required": ["conditioning"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningZeroOut", "display_name": "ConditioningZeroOut", "description": "", "python_module": "nodes", "category": "advanced/conditioning", "output_node": false }, "ConditioningSetTimestepRange": { "input": { "required": { "conditioning": ["CONDITIONING"], "start": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": ["conditioning", "start", "end"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetTimestepRange", "display_name": "ConditioningSetTimestepRange", "description": "", "python_module": "nodes", "category": "advanced/conditioning", "output_node": false }, "LoraLoaderModelOnly": { "input": { "required": { "model": ["MODEL"], "lora_name": [ [ "Characters/Cortana/Cortana(revAnimated).safetensors", "Characters/Cortana/Cortana.safetensors", "Characters/Cortana/Cortana_XL.safetensors", "Characters/Cortana/cortana_xl_v3.safetensors", "Characters/D.va/DVaOWXL - by KillerUwU13_AI.safetensors", "Characters/D.va/DVaPony.safetensors", "Characters/Lara Croft/ClassicLara.safetensors", "Characters/Lara Croft/LaraCroft_character-20.safetensors", "Characters/Lara Croft/lara_croft_xl_v2.safetensors", "Characters/Peni Parker/32dim-MR_PeniParker-PONY.safetensors", "Characters/Peni Parker/PeniParkerRivals-10.safetensors", "Characters/Peni Parker/Peni_Parker-000007.safetensors", "Characters/Peni Parker/Peni_parker_marvel_rivels.safetensors", "Characters/Samus Aran/Samus AranPonyLora.safetensors", "Characters/Samus Aran/samus aran.safetensors", "Characters/Samus Aran/samus-09.safetensors", "Characters/Scarlett Johansson/Scarlett-v20.safetensors", "Characters/Scarlett Johansson/Scarlett4.safetensors", "Characters/Widowmaker/SDXL_ow1 Windowmaker.safetensors", "Characters/Widowmaker/WidowmakerPonyLoRA.safetensors", "Characters/Widowmaker/Widowmaker_cgi.safetensors", "Characters/princess_xl_v2.safetensors", "Characters/princess_zelda.safetensors", "Citron Pony Styles/80s_Pop_PDXL.safetensors", "Citron Pony Styles/Alola_Style_PDXL.safetensors", "Citron Pony Styles/BoldToon.safetensors", "Citron Pony Styles/CandyCuteStylePDXL.safetensors", "Citron Pony Styles/CatalystStylePDXL.safetensors", "Citron Pony Styles/Citron3D_PDXL.safetensors", "Citron Pony Styles/CitronAnimeTreasure-07.safetensors", "Citron Pony Styles/EnergyCAT.safetensors", "Citron Pony Styles/FlatAnimeP1.safetensors", "Citron Pony Styles/LunarCAT_Style.safetensors", "Citron Pony Styles/RealisticAnime.safetensors", "Citron Pony Styles/Smooth.safetensors", "Citron Pony Styles/Vivid.safetensors", "Expressive_H-000001.safetensors", "Hand v2.safetensors", "LogoRedmondV2-Logo-LogoRedmAF.safetensors", "NSFW/2025/cheekbulge.safetensors", "NSFW/2025/closedmouthfullofcum.safetensors", "NSFW/2025/doublepenetration_r1.safetensors", "NSFW/2025/xray (1).safetensors", "NSFW/Acts/LapBlowLyingV1.safetensors", "NSFW/Acts/Long tongue fellatio.safetensors", "NSFW/Acts/Proper_Grinding.safetensors", "NSFW/Acts/Vacuum felaltio-000009.safetensors", "NSFW/Acts/assworship.safetensors", "NSFW/Acts/boobsuck.safetensors", "NSFW/Acts/breasts_squeezed_together_v02.safetensors", "NSFW/Acts/chikan_v31.safetensors", "NSFW/Acts/concept_sideboobpeek_ponyXL.safetensors", "NSFW/Acts/covering privates_XL_V10.safetensors", "NSFW/Acts/facesit_pov_pdxl_goofy.safetensors", "NSFW/Acts/grinding_pony_V10.safetensors", "NSFW/Acts/hand_milking_pdxl_goofy.safetensors", "NSFW/Acts/mating_press_v02-pony.safetensors", "NSFW/Acts/pantjob.safetensors", "NSFW/Acts/undressing_another_v05.safetensors", "NSFW/All the way through tentacles.safetensors", "NSFW/Deep_Throat_JAV_MIAA572_PONY_V1.safetensors", "NSFW/FComic_1to1000_Pony_V1.safetensors", "NSFW/FComic_HardCore_Pony_V1.safetensors", "NSFW/Poses/Double anal back-000006.safetensors", "NSFW/Poses/Double penetration suspended LORA-000009.safetensors", "NSFW/Poses/Missionary DP 2-000008.safetensors", "NSFW/Poses/Piledrive pov-000008.safetensors", "NSFW/Poses/Pressed_Missionary_Feet_On_Chest.safetensors", "NSFW/Poses/Pretzel.safetensors", "NSFW/Poses/Reverse spitroast.safetensors", "NSFW/Poses/chokesex.safetensors", "NSFW/Poses/dp_from_behind_v01b.safetensors", "NSFW/Poses/leg_up_side_matsubamuzushi_pony_V10.safetensors", "NSFW/Poses/suspended_congress_kiben_pony_V10.safetensors", "NSFW/Poses/suspensionPony.safetensors", "NSFW/Poses/top-down_doggystyle_v02-pony.safetensors", "NSFW/Poses/wheel_barrow_oshiguruma_pony_V10.safetensors", "NSFW/Rough_Sex_Any_position.safetensors", "NSFW/Saya-spread pussy(fingers).safetensors", "NSFW/X-ray anal 3.safetensors", "NSFW/closeprone.safetensors", "NSFW/cumontongue.safetensors", "NSFW/helpbj.safetensors", "NSFW/micro_bra_pdxl_goofy.safetensors", "NSFW/mouthful.safetensors", "NSFW/projectile_cum_v02.safetensors", "NSFW/pussy_sandwich_v02-pony.safetensors", "NSFW/restroom_v02a.safetensors", "NSFW/spp_spreadpussy-W-V1.safetensors", "Vixon's Pony Styles/Sh4rd4n1cXLP.safetensors", "Vixon's Pony Styles/ch33s3XLP.safetensors", "Vixon's Pony Styles/itsyelizXLP.safetensors", "Vixon's Pony Styles/lalangheejXLP.safetensors", "Vixon's Pony Styles/nikkileeismeXLP.safetensors", "Vixon's Pony Styles/tomidoronXLP.safetensors", "WowifierXL-V2.safetensors", "detailed_notrigger.safetensors", "detailxl.safetensors" ] ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -100.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "lora_name", "strength_model"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "LoraLoaderModelOnly", "display_name": "LoraLoaderModelOnly", "description": "LoRAs are used to modify diffusion and CLIP models, altering the way in which latents are denoised such as applying styles. Multiple LoRA nodes can be linked together.", "python_module": "nodes", "category": "loaders", "output_node": false, "output_tooltips": [ "The modified diffusion model.", "The modified CLIP model." ] }, "LatentAdd": { "input": { "required": { "samples1": ["LATENT"], "samples2": ["LATENT"] } }, "input_order": { "required": ["samples1", "samples2"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentAdd", "display_name": "LatentAdd", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced", "output_node": false }, "LatentSubtract": { "input": { "required": { "samples1": ["LATENT"], "samples2": ["LATENT"] } }, "input_order": { "required": ["samples1", "samples2"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentSubtract", "display_name": "LatentSubtract", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced", "output_node": false }, "LatentMultiply": { "input": { "required": { "samples": ["LATENT"], "multiplier": [ "FLOAT", { "default": 1.0, "min": -10.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["samples", "multiplier"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentMultiply", "display_name": "LatentMultiply", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced", "output_node": false }, "LatentInterpolate": { "input": { "required": { "samples1": ["LATENT"], "samples2": ["LATENT"], "ratio": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["samples1", "samples2", "ratio"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentInterpolate", "display_name": "LatentInterpolate", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced", "output_node": false }, "LatentBatch": { "input": { "required": { "samples1": ["LATENT"], "samples2": ["LATENT"] } }, "input_order": { "required": ["samples1", "samples2"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentBatch", "display_name": "LatentBatch", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/batch", "output_node": false }, "LatentBatchSeedBehavior": { "input": { "required": { "samples": ["LATENT"], "seed_behavior": [["random", "fixed"], { "default": "fixed" }] } }, "input_order": { "required": ["samples", "seed_behavior"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentBatchSeedBehavior", "display_name": "LatentBatchSeedBehavior", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced", "output_node": false }, "LatentApplyOperation": { "input": { "required": { "samples": ["LATENT"], "operation": ["LATENT_OPERATION"] } }, "input_order": { "required": ["samples", "operation"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentApplyOperation", "display_name": "LatentApplyOperation", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced/operations", "output_node": false, "experimental": true }, "LatentApplyOperationCFG": { "input": { "required": { "model": ["MODEL"], "operation": ["LATENT_OPERATION"] } }, "input_order": { "required": ["model", "operation"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "LatentApplyOperationCFG", "display_name": "LatentApplyOperationCFG", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced/operations", "output_node": false, "experimental": true }, "LatentOperationTonemapReinhard": { "input": { "required": { "multiplier": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["multiplier"] }, "output": ["LATENT_OPERATION"], "output_is_list": [false], "output_name": ["LATENT_OPERATION"], "name": "LatentOperationTonemapReinhard", "display_name": "LatentOperationTonemapReinhard", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced/operations", "output_node": false, "experimental": true }, "LatentOperationSharpen": { "input": { "required": { "sharpen_radius": [ "INT", { "default": 9, "min": 1, "max": 31, "step": 1 } ], "sigma": [ "FLOAT", { "default": 1.0, "min": 0.1, "max": 10.0, "step": 0.1 } ], "alpha": [ "FLOAT", { "default": 0.1, "min": 0.0, "max": 5.0, "step": 0.01 } ] } }, "input_order": { "required": ["sharpen_radius", "sigma", "alpha"] }, "output": ["LATENT_OPERATION"], "output_is_list": [false], "output_name": ["LATENT_OPERATION"], "name": "LatentOperationSharpen", "display_name": "LatentOperationSharpen", "description": "", "python_module": "comfy_extras.nodes_latent", "category": "latent/advanced/operations", "output_node": false, "experimental": true }, "HypernetworkLoader": { "input": { "required": { "model": ["MODEL"], "hypernetwork_name": [[]], "strength": [ "FLOAT", { "default": 1.0, "min": -10.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "hypernetwork_name", "strength"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "HypernetworkLoader", "display_name": "HypernetworkLoader", "description": "", "python_module": "comfy_extras.nodes_hypernetwork", "category": "loaders", "output_node": false }, "UpscaleModelLoader": { "input": { "required": { "model_name": [ [ "4x-AnimeSharp.pth", "4x-UltraSharp.pth", "4xNMKDSuperscale_4xNMKDSuperscale.pt", "ESRGAN_4x.pth", "GFPGANv1.4.pth", "RealESRGAN_x4plus.pth", "RealESRGAN_x4plus_anime_6B.pth", "SwinIR_4x.pth" ] ] } }, "input_order": { "required": ["model_name"] }, "output": ["UPSCALE_MODEL"], "output_is_list": [false], "output_name": ["UPSCALE_MODEL"], "name": "UpscaleModelLoader", "display_name": "Load Upscale Model", "description": "", "python_module": "comfy_extras.nodes_upscale_model", "category": "loaders", "output_node": false }, "ImageUpscaleWithModel": { "input": { "required": { "upscale_model": ["UPSCALE_MODEL"], "image": ["IMAGE"] } }, "input_order": { "required": ["upscale_model", "image"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageUpscaleWithModel", "display_name": "Upscale Image (using Model)", "description": "", "python_module": "comfy_extras.nodes_upscale_model", "category": "image/upscaling", "output_node": false }, "ImageBlend": { "input": { "required": { "image1": ["IMAGE"], "image2": ["IMAGE"], "blend_factor": [ "FLOAT", { "default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blend_mode": [ [ "normal", "multiply", "screen", "overlay", "soft_light", "difference" ] ] } }, "input_order": { "required": ["image1", "image2", "blend_factor", "blend_mode"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageBlend", "display_name": "Image Blend", "description": "", "python_module": "comfy_extras.nodes_post_processing", "category": "image/postprocessing", "output_node": false }, "ImageBlur": { "input": { "required": { "image": ["IMAGE"], "blur_radius": [ "INT", { "default": 1, "min": 1, "max": 31, "step": 1 } ], "sigma": [ "FLOAT", { "default": 1.0, "min": 0.1, "max": 10.0, "step": 0.1 } ] } }, "input_order": { "required": ["image", "blur_radius", "sigma"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageBlur", "display_name": "Image Blur", "description": "", "python_module": "comfy_extras.nodes_post_processing", "category": "image/postprocessing", "output_node": false }, "ImageQuantize": { "input": { "required": { "image": ["IMAGE"], "colors": ["INT", { "default": 256, "min": 1, "max": 256, "step": 1 }], "dither": [ [ "none", "floyd-steinberg", "bayer-2", "bayer-4", "bayer-8", "bayer-16" ] ] } }, "input_order": { "required": ["image", "colors", "dither"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageQuantize", "display_name": "Image Quantize", "description": "", "python_module": "comfy_extras.nodes_post_processing", "category": "image/postprocessing", "output_node": false }, "ImageSharpen": { "input": { "required": { "image": ["IMAGE"], "sharpen_radius": [ "INT", { "default": 1, "min": 1, "max": 31, "step": 1 } ], "sigma": [ "FLOAT", { "default": 1.0, "min": 0.1, "max": 10.0, "step": 0.01 } ], "alpha": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 5.0, "step": 0.01 } ] } }, "input_order": { "required": ["image", "sharpen_radius", "sigma", "alpha"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageSharpen", "display_name": "Image Sharpen", "description": "", "python_module": "comfy_extras.nodes_post_processing", "category": "image/postprocessing", "output_node": false }, "ImageScaleToTotalPixels": { "input": { "required": { "image": ["IMAGE"], "upscale_method": [ ["nearest-exact", "bilinear", "area", "bicubic", "lanczos"] ], "megapixels": [ "FLOAT", { "default": 1.0, "min": 0.01, "max": 16.0, "step": 0.01 } ] } }, "input_order": { "required": ["image", "upscale_method", "megapixels"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageScaleToTotalPixels", "display_name": "Scale Image to Total Pixels", "description": "", "python_module": "comfy_extras.nodes_post_processing", "category": "image/upscaling", "output_node": false }, "LatentCompositeMasked": { "input": { "required": { "destination": ["LATENT"], "source": ["LATENT"], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 8 }], "resize_source": ["BOOLEAN", { "default": false }] }, "optional": { "mask": ["MASK"] } }, "input_order": { "required": ["destination", "source", "x", "y", "resize_source"], "optional": ["mask"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "LatentCompositeMasked", "display_name": "LatentCompositeMasked", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "latent", "output_node": false }, "ImageCompositeMasked": { "input": { "required": { "destination": ["IMAGE"], "source": ["IMAGE"], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "resize_source": ["BOOLEAN", { "default": false }] }, "optional": { "mask": ["MASK"] } }, "input_order": { "required": ["destination", "source", "x", "y", "resize_source"], "optional": ["mask"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageCompositeMasked", "display_name": "ImageCompositeMasked", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "image", "output_node": false }, "MaskToImage": { "input": { "required": { "mask": ["MASK"] } }, "input_order": { "required": ["mask"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "MaskToImage", "display_name": "Convert Mask to Image", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "ImageToMask": { "input": { "required": { "image": ["IMAGE"], "channel": [["red", "green", "blue", "alpha"]] } }, "input_order": { "required": ["image", "channel"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "ImageToMask", "display_name": "Convert Image to Mask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "ImageColorToMask": { "input": { "required": { "image": ["IMAGE"], "color": [ "INT", { "default": 0, "min": 0, "max": 16777215, "step": 1, "display": "color" } ] } }, "input_order": { "required": ["image", "color"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "ImageColorToMask", "display_name": "ImageColorToMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "SolidMask": { "input": { "required": { "value": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "width": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }], "height": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }] } }, "input_order": { "required": ["value", "width", "height"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "SolidMask", "display_name": "SolidMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "InvertMask": { "input": { "required": { "mask": ["MASK"] } }, "input_order": { "required": ["mask"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "InvertMask", "display_name": "InvertMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "CropMask": { "input": { "required": { "mask": ["MASK"], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "width": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }], "height": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }] } }, "input_order": { "required": ["mask", "x", "y", "width", "height"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "CropMask", "display_name": "CropMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "MaskComposite": { "input": { "required": { "destination": ["MASK"], "source": ["MASK"], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "operation": [["multiply", "add", "subtract", "and", "or", "xor"]] } }, "input_order": { "required": ["destination", "source", "x", "y", "operation"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "MaskComposite", "display_name": "MaskComposite", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "FeatherMask": { "input": { "required": { "mask": ["MASK"], "left": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "top": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "right": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "bottom": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }] } }, "input_order": { "required": ["mask", "left", "top", "right", "bottom"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "FeatherMask", "display_name": "FeatherMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "GrowMask": { "input": { "required": { "mask": ["MASK"], "expand": [ "INT", { "default": 0, "min": -16384, "max": 16384, "step": 1 } ], "tapered_corners": ["BOOLEAN", { "default": true }] } }, "input_order": { "required": ["mask", "expand", "tapered_corners"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "GrowMask", "display_name": "GrowMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "ThresholdMask": { "input": { "required": { "mask": ["MASK"], "value": [ "FLOAT", { "default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["mask", "value"] }, "output": ["MASK"], "output_is_list": [false], "output_name": ["MASK"], "name": "ThresholdMask", "display_name": "ThresholdMask", "description": "", "python_module": "comfy_extras.nodes_mask", "category": "mask", "output_node": false }, "PorterDuffImageComposite": { "input": { "required": { "source": ["IMAGE"], "source_alpha": ["MASK"], "destination": ["IMAGE"], "destination_alpha": ["MASK"], "mode": [ [ "ADD", "CLEAR", "DARKEN", "DST", "DST_ATOP", "DST_IN", "DST_OUT", "DST_OVER", "LIGHTEN", "MULTIPLY", "OVERLAY", "SCREEN", "SRC", "SRC_ATOP", "SRC_IN", "SRC_OUT", "SRC_OVER", "XOR" ], { "default": "DST" } ] } }, "input_order": { "required": [ "source", "source_alpha", "destination", "destination_alpha", "mode" ] }, "output": ["IMAGE", "MASK"], "output_is_list": [false, false], "output_name": ["IMAGE", "MASK"], "name": "PorterDuffImageComposite", "display_name": "Porter-Duff Image Composite", "description": "", "python_module": "comfy_extras.nodes_compositing", "category": "mask/compositing", "output_node": false }, "SplitImageWithAlpha": { "input": { "required": { "image": ["IMAGE"] } }, "input_order": { "required": ["image"] }, "output": ["IMAGE", "MASK"], "output_is_list": [false, false], "output_name": ["IMAGE", "MASK"], "name": "SplitImageWithAlpha", "display_name": "Split Image with Alpha", "description": "", "python_module": "comfy_extras.nodes_compositing", "category": "mask/compositing", "output_node": false }, "JoinImageWithAlpha": { "input": { "required": { "image": ["IMAGE"], "alpha": ["MASK"] } }, "input_order": { "required": ["image", "alpha"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "JoinImageWithAlpha", "display_name": "Join Image with Alpha", "description": "", "python_module": "comfy_extras.nodes_compositing", "category": "mask/compositing", "output_node": false }, "RebatchLatents": { "input": { "required": { "latents": ["LATENT"], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["latents", "batch_size"] }, "output": ["LATENT"], "output_is_list": [true], "output_name": ["LATENT"], "name": "RebatchLatents", "display_name": "Rebatch Latents", "description": "", "python_module": "comfy_extras.nodes_rebatch", "category": "latent/batch", "output_node": false }, "RebatchImages": { "input": { "required": { "images": ["IMAGE"], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["images", "batch_size"] }, "output": ["IMAGE"], "output_is_list": [true], "output_name": ["IMAGE"], "name": "RebatchImages", "display_name": "Rebatch Images", "description": "", "python_module": "comfy_extras.nodes_rebatch", "category": "image/batch", "output_node": false }, "ModelMergeSimple": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "ratio": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model1", "model2", "ratio"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSimple", "display_name": "ModelMergeSimple", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "ModelMergeBlocks": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "input": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "out": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model1", "model2", "input", "middle", "out"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeBlocks", "display_name": "ModelMergeBlocks", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "ModelMergeSubtract": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "multiplier": [ "FLOAT", { "default": 1.0, "min": -10.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model1", "model2", "multiplier"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSubtract", "display_name": "ModelMergeSubtract", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "ModelMergeAdd": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"] } }, "input_order": { "required": ["model1", "model2"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeAdd", "display_name": "ModelMergeAdd", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "CheckpointSave": { "input": { "required": { "model": ["MODEL"], "clip": ["CLIP"], "vae": ["VAE"], "filename_prefix": ["STRING", { "default": "checkpoints/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["model", "clip", "vae", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "CheckpointSave", "display_name": "Save Checkpoint", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": true }, "CLIPMergeSimple": { "input": { "required": { "clip1": ["CLIP"], "clip2": ["CLIP"], "ratio": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["clip1", "clip2", "ratio"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPMergeSimple", "display_name": "CLIPMergeSimple", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "CLIPMergeSubtract": { "input": { "required": { "clip1": ["CLIP"], "clip2": ["CLIP"], "multiplier": [ "FLOAT", { "default": 1.0, "min": -10.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["clip1", "clip2", "multiplier"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPMergeSubtract", "display_name": "CLIPMergeSubtract", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "CLIPMergeAdd": { "input": { "required": { "clip1": ["CLIP"], "clip2": ["CLIP"] } }, "input_order": { "required": ["clip1", "clip2"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPMergeAdd", "display_name": "CLIPMergeAdd", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": false }, "CLIPSave": { "input": { "required": { "clip": ["CLIP"], "filename_prefix": ["STRING", { "default": "clip/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["clip", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "CLIPSave", "display_name": "CLIPSave", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": true }, "VAESave": { "input": { "required": { "vae": ["VAE"], "filename_prefix": ["STRING", { "default": "vae/ComfyUI_vae" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["vae", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "VAESave", "display_name": "VAESave", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": true }, "ModelSave": { "input": { "required": { "model": ["MODEL"], "filename_prefix": ["STRING", { "default": "diffusion_models/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["model", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "ModelSave", "display_name": "ModelSave", "description": "", "python_module": "comfy_extras.nodes_model_merging", "category": "advanced/model_merging", "output_node": true }, "TomePatchModel": { "input": { "required": { "model": ["MODEL"], "ratio": [ "FLOAT", { "default": 0.3, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "ratio"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "TomePatchModel", "display_name": "TomePatchModel", "description": "", "python_module": "comfy_extras.nodes_tomesd", "category": "model_patches/unet", "output_node": false }, "CLIPTextEncodeSDXLRefiner": { "input": { "required": { "ascore": [ "FLOAT", { "default": 6.0, "min": 0.0, "max": 1000.0, "step": 0.01 } ], "width": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "height": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "text": ["STRING", { "multiline": true, "dynamicPrompts": true }], "clip": ["CLIP"] } }, "input_order": { "required": ["ascore", "width", "height", "text", "clip"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeSDXLRefiner", "display_name": "CLIPTextEncodeSDXLRefiner", "description": "", "python_module": "comfy_extras.nodes_clip_sdxl", "category": "advanced/conditioning", "output_node": false }, "CLIPTextEncodeSDXL": { "input": { "required": { "clip": ["CLIP"], "width": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "height": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "crop_w": ["INT", { "default": 0, "min": 0, "max": 16384 }], "crop_h": ["INT", { "default": 0, "min": 0, "max": 16384 }], "target_width": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "target_height": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "text_g": ["STRING", { "multiline": true, "dynamicPrompts": true }], "text_l": ["STRING", { "multiline": true, "dynamicPrompts": true }] } }, "input_order": { "required": [ "clip", "width", "height", "crop_w", "crop_h", "target_width", "target_height", "text_g", "text_l" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeSDXL", "display_name": "CLIPTextEncodeSDXL", "description": "", "python_module": "comfy_extras.nodes_clip_sdxl", "category": "advanced/conditioning", "output_node": false }, "Canny": { "input": { "required": { "image": ["IMAGE"], "low_threshold": [ "FLOAT", { "default": 0.4, "min": 0.01, "max": 0.99, "step": 0.01 } ], "high_threshold": [ "FLOAT", { "default": 0.8, "min": 0.01, "max": 0.99, "step": 0.01 } ] } }, "input_order": { "required": ["image", "low_threshold", "high_threshold"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "Canny", "display_name": "Canny", "description": "", "python_module": "comfy_extras.nodes_canny", "category": "image/preprocessors", "output_node": false }, "FreeU": { "input": { "required": { "model": ["MODEL"], "b1": [ "FLOAT", { "default": 1.1, "min": 0.0, "max": 10.0, "step": 0.01 } ], "b2": [ "FLOAT", { "default": 1.2, "min": 0.0, "max": 10.0, "step": 0.01 } ], "s1": [ "FLOAT", { "default": 0.9, "min": 0.0, "max": 10.0, "step": 0.01 } ], "s2": [ "FLOAT", { "default": 0.2, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "b1", "b2", "s1", "s2"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "FreeU", "display_name": "FreeU", "description": "", "python_module": "comfy_extras.nodes_freelunch", "category": "model_patches/unet", "output_node": false }, "FreeU_V2": { "input": { "required": { "model": ["MODEL"], "b1": [ "FLOAT", { "default": 1.3, "min": 0.0, "max": 10.0, "step": 0.01 } ], "b2": [ "FLOAT", { "default": 1.4, "min": 0.0, "max": 10.0, "step": 0.01 } ], "s1": [ "FLOAT", { "default": 0.9, "min": 0.0, "max": 10.0, "step": 0.01 } ], "s2": [ "FLOAT", { "default": 0.2, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "b1", "b2", "s1", "s2"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "FreeU_V2", "display_name": "FreeU_V2", "description": "", "python_module": "comfy_extras.nodes_freelunch", "category": "model_patches/unet", "output_node": false }, "SamplerCustom": { "input": { "required": { "model": ["MODEL"], "add_noise": ["BOOLEAN", { "default": true }], "noise_seed": [ "INT", { "default": 0, "min": 0, "max": 18446744073709551615, "control_after_generate": true } ], "cfg": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ], "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "sampler": ["SAMPLER"], "sigmas": ["SIGMAS"], "latent_image": ["LATENT"] } }, "input_order": { "required": [ "model", "add_noise", "noise_seed", "cfg", "positive", "negative", "sampler", "sigmas", "latent_image" ] }, "output": ["LATENT", "LATENT"], "output_is_list": [false, false], "output_name": ["output", "denoised_output"], "name": "SamplerCustom", "display_name": "SamplerCustom", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling", "output_node": false }, "BasicScheduler": { "input": { "required": { "model": ["MODEL"], "scheduler": [ [ "normal", "karras", "exponential", "sgm_uniform", "simple", "ddim_uniform", "beta", "linear_quadratic", "kl_optimal" ] ], "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "denoise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "scheduler", "steps", "denoise"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "BasicScheduler", "display_name": "BasicScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "KarrasScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "sigma_max": [ "FLOAT", { "default": 14.614642, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.0291675, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "rho": [ "FLOAT", { "default": 7.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["steps", "sigma_max", "sigma_min", "rho"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "KarrasScheduler", "display_name": "KarrasScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "ExponentialScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "sigma_max": [ "FLOAT", { "default": 14.614642, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.0291675, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["steps", "sigma_max", "sigma_min"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "ExponentialScheduler", "display_name": "ExponentialScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "PolyexponentialScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "sigma_max": [ "FLOAT", { "default": 14.614642, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.0291675, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "rho": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["steps", "sigma_max", "sigma_min", "rho"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "PolyexponentialScheduler", "display_name": "PolyexponentialScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "LaplaceScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "sigma_max": [ "FLOAT", { "default": 14.614642, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.0291675, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "mu": [ "FLOAT", { "default": 0.0, "min": -10.0, "max": 10.0, "step": 0.1, "round": false } ], "beta": [ "FLOAT", { "default": 0.5, "min": 0.0, "max": 10.0, "step": 0.1, "round": false } ] } }, "input_order": { "required": ["steps", "sigma_max", "sigma_min", "mu", "beta"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "LaplaceScheduler", "display_name": "LaplaceScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "VPScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "beta_d": [ "FLOAT", { "default": 19.9, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "beta_min": [ "FLOAT", { "default": 0.1, "min": 0.0, "max": 5000.0, "step": 0.01, "round": false } ], "eps_s": [ "FLOAT", { "default": 0.001, "min": 0.0, "max": 1.0, "step": 0.0001, "round": false } ] } }, "input_order": { "required": ["steps", "beta_d", "beta_min", "eps_s"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "VPScheduler", "display_name": "VPScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "BetaSamplingScheduler": { "input": { "required": { "model": ["MODEL"], "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "alpha": [ "FLOAT", { "default": 0.6, "min": 0.0, "max": 50.0, "step": 0.01, "round": false } ], "beta": [ "FLOAT", { "default": 0.6, "min": 0.0, "max": 50.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["model", "steps", "alpha", "beta"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "BetaSamplingScheduler", "display_name": "BetaSamplingScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "SDTurboScheduler": { "input": { "required": { "model": ["MODEL"], "steps": ["INT", { "default": 1, "min": 1, "max": 10 }], "denoise": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "steps", "denoise"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "SDTurboScheduler", "display_name": "SDTurboScheduler", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "KSamplerSelect": { "input": { "required": { "sampler_name": [ [ "euler", "euler_cfg_pp", "euler_ancestral", "euler_ancestral_cfg_pp", "heun", "heunpp2", "dpm_2", "dpm_2_ancestral", "lms", "dpm_fast", "dpm_adaptive", "dpmpp_2s_ancestral", "dpmpp_2s_ancestral_cfg_pp", "dpmpp_sde", "dpmpp_sde_gpu", "dpmpp_2m", "dpmpp_2m_cfg_pp", "dpmpp_2m_sde", "dpmpp_2m_sde_gpu", "dpmpp_3m_sde", "dpmpp_3m_sde_gpu", "ddpm", "lcm", "ipndm", "ipndm_v", "deis", "res_multistep", "res_multistep_cfg_pp", "res_multistep_ancestral", "res_multistep_ancestral_cfg_pp", "gradient_estimation", "er_sde", "ddim", "uni_pc", "uni_pc_bh2" ] ] } }, "input_order": { "required": ["sampler_name"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "KSamplerSelect", "display_name": "KSamplerSelect", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerEulerAncestral": { "input": { "required": { "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["eta", "s_noise"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerEulerAncestral", "display_name": "SamplerEulerAncestral", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerEulerAncestralCFGPP": { "input": { "required": { "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["eta", "s_noise"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerEulerAncestralCFGPP", "display_name": "SamplerEulerAncestralCFG++", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerLMS": { "input": { "required": { "order": ["INT", { "default": 4, "min": 1, "max": 100 }] } }, "input_order": { "required": ["order"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerLMS", "display_name": "SamplerLMS", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerDPMPP_3M_SDE": { "input": { "required": { "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "noise_device": [["gpu", "cpu"]] } }, "input_order": { "required": ["eta", "s_noise", "noise_device"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerDPMPP_3M_SDE", "display_name": "SamplerDPMPP_3M_SDE", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerDPMPP_2M_SDE": { "input": { "required": { "solver_type": [["midpoint", "heun"]], "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "noise_device": [["gpu", "cpu"]] } }, "input_order": { "required": ["solver_type", "eta", "s_noise", "noise_device"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerDPMPP_2M_SDE", "display_name": "SamplerDPMPP_2M_SDE", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerDPMPP_SDE": { "input": { "required": { "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "r": [ "FLOAT", { "default": 0.5, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "noise_device": [["gpu", "cpu"]] } }, "input_order": { "required": ["eta", "s_noise", "r", "noise_device"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerDPMPP_SDE", "display_name": "SamplerDPMPP_SDE", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerDPMPP_2S_Ancestral": { "input": { "required": { "eta": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": ["eta", "s_noise"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerDPMPP_2S_Ancestral", "display_name": "SamplerDPMPP_2S_Ancestral", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerDPMAdaptative": { "input": { "required": { "order": ["INT", { "default": 3, "min": 2, "max": 3 }], "rtol": [ "FLOAT", { "default": 0.05, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "atol": [ "FLOAT", { "default": 0.0078, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "h_init": [ "FLOAT", { "default": 0.05, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "pcoeff": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "icoeff": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "dcoeff": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "accept_safety": [ "FLOAT", { "default": 0.81, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "eta": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ], "s_noise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": false } ] } }, "input_order": { "required": [ "order", "rtol", "atol", "h_init", "pcoeff", "icoeff", "dcoeff", "accept_safety", "eta", "s_noise" ] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerDPMAdaptative", "display_name": "SamplerDPMAdaptative", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SplitSigmas": { "input": { "required": { "sigmas": ["SIGMAS"], "step": ["INT", { "default": 0, "min": 0, "max": 10000 }] } }, "input_order": { "required": ["sigmas", "step"] }, "output": ["SIGMAS", "SIGMAS"], "output_is_list": [false, false], "output_name": ["high_sigmas", "low_sigmas"], "name": "SplitSigmas", "display_name": "SplitSigmas", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/sigmas", "output_node": false }, "SplitSigmasDenoise": { "input": { "required": { "sigmas": ["SIGMAS"], "denoise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["sigmas", "denoise"] }, "output": ["SIGMAS", "SIGMAS"], "output_is_list": [false, false], "output_name": ["high_sigmas", "low_sigmas"], "name": "SplitSigmasDenoise", "display_name": "SplitSigmasDenoise", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/sigmas", "output_node": false }, "FlipSigmas": { "input": { "required": { "sigmas": ["SIGMAS"] } }, "input_order": { "required": ["sigmas"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "FlipSigmas", "display_name": "FlipSigmas", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/sigmas", "output_node": false }, "SetFirstSigma": { "input": { "required": { "sigmas": ["SIGMAS"], "sigma": [ "FLOAT", { "default": 136.0, "min": 0.0, "max": 20000.0, "step": 0.001, "round": false } ] } }, "input_order": { "required": ["sigmas", "sigma"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "SetFirstSigma", "display_name": "SetFirstSigma", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/sigmas", "output_node": false }, "CFGGuider": { "input": { "required": { "model": ["MODEL"], "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "cfg": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ] } }, "input_order": { "required": ["model", "positive", "negative", "cfg"] }, "output": ["GUIDER"], "output_is_list": [false], "output_name": ["GUIDER"], "name": "CFGGuider", "display_name": "CFGGuider", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/guiders", "output_node": false }, "DualCFGGuider": { "input": { "required": { "model": ["MODEL"], "cond1": ["CONDITIONING"], "cond2": ["CONDITIONING"], "negative": ["CONDITIONING"], "cfg_conds": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ], "cfg_cond2_negative": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ] } }, "input_order": { "required": [ "model", "cond1", "cond2", "negative", "cfg_conds", "cfg_cond2_negative" ] }, "output": ["GUIDER"], "output_is_list": [false], "output_name": ["GUIDER"], "name": "DualCFGGuider", "display_name": "DualCFGGuider", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/guiders", "output_node": false }, "BasicGuider": { "input": { "required": { "model": ["MODEL"], "conditioning": ["CONDITIONING"] } }, "input_order": { "required": ["model", "conditioning"] }, "output": ["GUIDER"], "output_is_list": [false], "output_name": ["GUIDER"], "name": "BasicGuider", "display_name": "BasicGuider", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/guiders", "output_node": false }, "RandomNoise": { "input": { "required": { "noise_seed": [ "INT", { "default": 0, "min": 0, "max": 18446744073709551615, "control_after_generate": true } ] } }, "input_order": { "required": ["noise_seed"] }, "output": ["NOISE"], "output_is_list": [false], "output_name": ["NOISE"], "name": "RandomNoise", "display_name": "RandomNoise", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/noise", "output_node": false }, "DisableNoise": { "input": { "required": {} }, "input_order": { "required": [] }, "output": ["NOISE"], "output_is_list": [false], "output_name": ["NOISE"], "name": "DisableNoise", "display_name": "DisableNoise", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling/noise", "output_node": false }, "AddNoise": { "input": { "required": { "model": ["MODEL"], "noise": ["NOISE"], "sigmas": ["SIGMAS"], "latent_image": ["LATENT"] } }, "input_order": { "required": ["model", "noise", "sigmas", "latent_image"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "AddNoise", "display_name": "AddNoise", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "_for_testing/custom_sampling/noise", "output_node": false }, "SamplerCustomAdvanced": { "input": { "required": { "noise": ["NOISE"], "guider": ["GUIDER"], "sampler": ["SAMPLER"], "sigmas": ["SIGMAS"], "latent_image": ["LATENT"] } }, "input_order": { "required": ["noise", "guider", "sampler", "sigmas", "latent_image"] }, "output": ["LATENT", "LATENT"], "output_is_list": [false, false], "output_name": ["output", "denoised_output"], "name": "SamplerCustomAdvanced", "display_name": "SamplerCustomAdvanced", "description": "", "python_module": "comfy_extras.nodes_custom_sampler", "category": "sampling/custom_sampling", "output_node": false }, "HyperTile": { "input": { "required": { "model": ["MODEL"], "tile_size": ["INT", { "default": 256, "min": 1, "max": 2048 }], "swap_size": ["INT", { "default": 2, "min": 1, "max": 128 }], "max_depth": ["INT", { "default": 0, "min": 0, "max": 10 }], "scale_depth": ["BOOLEAN", { "default": false }] } }, "input_order": { "required": [ "model", "tile_size", "swap_size", "max_depth", "scale_depth" ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "HyperTile", "display_name": "HyperTile", "description": "", "python_module": "comfy_extras.nodes_hypertile", "category": "model_patches/unet", "output_node": false }, "ModelSamplingDiscrete": { "input": { "required": { "model": ["MODEL"], "sampling": [["eps", "v_prediction", "lcm", "x0"]], "zsnr": ["BOOLEAN", { "default": false }] } }, "input_order": { "required": ["model", "sampling", "zsnr"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingDiscrete", "display_name": "ModelSamplingDiscrete", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingContinuousEDM": { "input": { "required": { "model": ["MODEL"], "sampling": [["v_prediction", "edm", "edm_playground_v2.5", "eps"]], "sigma_max": [ "FLOAT", { "default": 120.0, "min": 0.0, "max": 1000.0, "step": 0.001, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.002, "min": 0.0, "max": 1000.0, "step": 0.001, "round": false } ] } }, "input_order": { "required": ["model", "sampling", "sigma_max", "sigma_min"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingContinuousEDM", "display_name": "ModelSamplingContinuousEDM", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingContinuousV": { "input": { "required": { "model": ["MODEL"], "sampling": [["v_prediction"]], "sigma_max": [ "FLOAT", { "default": 500.0, "min": 0.0, "max": 1000.0, "step": 0.001, "round": false } ], "sigma_min": [ "FLOAT", { "default": 0.03, "min": 0.0, "max": 1000.0, "step": 0.001, "round": false } ] } }, "input_order": { "required": ["model", "sampling", "sigma_max", "sigma_min"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingContinuousV", "display_name": "ModelSamplingContinuousV", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingStableCascade": { "input": { "required": { "model": ["MODEL"], "shift": [ "FLOAT", { "default": 2.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "shift"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingStableCascade", "display_name": "ModelSamplingStableCascade", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingSD3": { "input": { "required": { "model": ["MODEL"], "shift": [ "FLOAT", { "default": 3.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "shift"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingSD3", "display_name": "ModelSamplingSD3", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingAuraFlow": { "input": { "required": { "model": ["MODEL"], "shift": [ "FLOAT", { "default": 1.73, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "shift"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingAuraFlow", "display_name": "ModelSamplingAuraFlow", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelSamplingFlux": { "input": { "required": { "model": ["MODEL"], "max_shift": [ "FLOAT", { "default": 1.15, "min": 0.0, "max": 100.0, "step": 0.01 } ], "base_shift": [ "FLOAT", { "default": 0.5, "min": 0.0, "max": 100.0, "step": 0.01 } ], "width": [ "INT", { "default": 1024, "min": 16, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 1024, "min": 16, "max": 16384, "step": 8 } ] } }, "input_order": { "required": ["model", "max_shift", "base_shift", "width", "height"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingFlux", "display_name": "ModelSamplingFlux", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "RescaleCFG": { "input": { "required": { "model": ["MODEL"], "multiplier": [ "FLOAT", { "default": 0.7, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "multiplier"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "RescaleCFG", "display_name": "RescaleCFG", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/model", "output_node": false }, "ModelComputeDtype": { "input": { "required": { "model": ["MODEL"], "dtype": [["default", "fp32", "fp16", "bf16"]] } }, "input_order": { "required": ["model", "dtype"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelComputeDtype", "display_name": "ModelComputeDtype", "description": "", "python_module": "comfy_extras.nodes_model_advanced", "category": "advanced/debug/model", "output_node": false }, "PatchModelAddDownscale": { "input": { "required": { "model": ["MODEL"], "block_number": [ "INT", { "default": 3, "min": 1, "max": 32, "step": 1 } ], "downscale_factor": [ "FLOAT", { "default": 2.0, "min": 0.1, "max": 9.0, "step": 0.001 } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 0.35, "min": 0.0, "max": 1.0, "step": 0.001 } ], "downscale_after_skip": ["BOOLEAN", { "default": true }], "downscale_method": [ ["bicubic", "nearest-exact", "bilinear", "area", "bislerp"] ], "upscale_method": [ ["bicubic", "nearest-exact", "bilinear", "area", "bislerp"] ] } }, "input_order": { "required": [ "model", "block_number", "downscale_factor", "start_percent", "end_percent", "downscale_after_skip", "downscale_method", "upscale_method" ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "PatchModelAddDownscale", "display_name": "PatchModelAddDownscale (Kohya Deep Shrink)", "description": "", "python_module": "comfy_extras.nodes_model_downscale", "category": "model_patches/unet", "output_node": false }, "ImageCrop": { "input": { "required": { "image": ["IMAGE"], "width": ["INT", { "default": 512, "min": 1, "max": 16384, "step": 1 }], "height": [ "INT", { "default": 512, "min": 1, "max": 16384, "step": 1 } ], "x": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "y": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }] } }, "input_order": { "required": ["image", "width", "height", "x", "y"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageCrop", "display_name": "Image Crop", "description": "", "python_module": "comfy_extras.nodes_images", "category": "image/transform", "output_node": false }, "RepeatImageBatch": { "input": { "required": { "image": ["IMAGE"], "amount": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["image", "amount"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "RepeatImageBatch", "display_name": "RepeatImageBatch", "description": "", "python_module": "comfy_extras.nodes_images", "category": "image/batch", "output_node": false }, "ImageFromBatch": { "input": { "required": { "image": ["IMAGE"], "batch_index": ["INT", { "default": 0, "min": 0, "max": 4095 }], "length": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["image", "batch_index", "length"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "ImageFromBatch", "display_name": "ImageFromBatch", "description": "", "python_module": "comfy_extras.nodes_images", "category": "image/batch", "output_node": false }, "SaveAnimatedWEBP": { "input": { "required": { "images": ["IMAGE"], "filename_prefix": ["STRING", { "default": "ComfyUI" }], "fps": [ "FLOAT", { "default": 6.0, "min": 0.01, "max": 1000.0, "step": 0.01 } ], "lossless": ["BOOLEAN", { "default": true }], "quality": ["INT", { "default": 80, "min": 0, "max": 100 }], "method": [["default", "fastest", "slowest"]] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": [ "images", "filename_prefix", "fps", "lossless", "quality", "method" ], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveAnimatedWEBP", "display_name": "SaveAnimatedWEBP", "description": "", "python_module": "comfy_extras.nodes_images", "category": "image/animation", "output_node": true }, "SaveAnimatedPNG": { "input": { "required": { "images": ["IMAGE"], "filename_prefix": ["STRING", { "default": "ComfyUI" }], "fps": [ "FLOAT", { "default": 6.0, "min": 0.01, "max": 1000.0, "step": 0.01 } ], "compress_level": ["INT", { "default": 4, "min": 0, "max": 9 }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["images", "filename_prefix", "fps", "compress_level"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveAnimatedPNG", "display_name": "SaveAnimatedPNG", "description": "", "python_module": "comfy_extras.nodes_images", "category": "image/animation", "output_node": true }, "ImageOnlyCheckpointLoader": { "input": { "required": { "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ] ] } }, "input_order": { "required": ["ckpt_name"] }, "output": ["MODEL", "CLIP_VISION", "VAE"], "output_is_list": [false, false, false], "output_name": ["MODEL", "CLIP_VISION", "VAE"], "name": "ImageOnlyCheckpointLoader", "display_name": "Image Only Checkpoint Loader (img2vid model)", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "loaders/video_models", "output_node": false }, "SVD_img2vid_Conditioning": { "input": { "required": { "clip_vision": ["CLIP_VISION"], "init_image": ["IMAGE"], "vae": ["VAE"], "width": [ "INT", { "default": 1024, "min": 16, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 576, "min": 16, "max": 16384, "step": 8 } ], "video_frames": ["INT", { "default": 14, "min": 1, "max": 4096 }], "motion_bucket_id": ["INT", { "default": 127, "min": 1, "max": 1023 }], "fps": ["INT", { "default": 6, "min": 1, "max": 1024 }], "augmentation_level": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": [ "clip_vision", "init_image", "vae", "width", "height", "video_frames", "motion_bucket_id", "fps", "augmentation_level" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "SVD_img2vid_Conditioning", "display_name": "SVD_img2vid_Conditioning", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "conditioning/video_models", "output_node": false }, "VideoLinearCFGGuidance": { "input": { "required": { "model": ["MODEL"], "min_cfg": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.5, "round": 0.01 } ] } }, "input_order": { "required": ["model", "min_cfg"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "VideoLinearCFGGuidance", "display_name": "VideoLinearCFGGuidance", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "sampling/video_models", "output_node": false }, "VideoTriangleCFGGuidance": { "input": { "required": { "model": ["MODEL"], "min_cfg": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.5, "round": 0.01 } ] } }, "input_order": { "required": ["model", "min_cfg"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "VideoTriangleCFGGuidance", "display_name": "VideoTriangleCFGGuidance", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "sampling/video_models", "output_node": false }, "ImageOnlyCheckpointSave": { "input": { "required": { "model": ["MODEL"], "clip_vision": ["CLIP_VISION"], "vae": ["VAE"], "filename_prefix": ["STRING", { "default": "checkpoints/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["model", "clip_vision", "vae", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "ImageOnlyCheckpointSave", "display_name": "ImageOnlyCheckpointSave", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "advanced/model_merging", "output_node": true }, "ConditioningSetAreaPercentageVideo": { "input": { "required": { "conditioning": ["CONDITIONING"], "width": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ], "height": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ], "temporal": [ "FLOAT", { "default": 1.0, "min": 0, "max": 1.0, "step": 0.01 } ], "x": ["FLOAT", { "default": 0, "min": 0, "max": 1.0, "step": 0.01 }], "y": ["FLOAT", { "default": 0, "min": 0, "max": 1.0, "step": 0.01 }], "z": ["FLOAT", { "default": 0, "min": 0, "max": 1.0, "step": 0.01 }], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": [ "conditioning", "width", "height", "temporal", "x", "y", "z", "strength" ] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetAreaPercentageVideo", "display_name": "ConditioningSetAreaPercentageVideo", "description": "", "python_module": "comfy_extras.nodes_video_model", "category": "conditioning", "output_node": false }, "SelfAttentionGuidance": { "input": { "required": { "model": ["MODEL"], "scale": [ "FLOAT", { "default": 0.5, "min": -2.0, "max": 5.0, "step": 0.01 } ], "blur_sigma": [ "FLOAT", { "default": 2.0, "min": 0.0, "max": 10.0, "step": 0.1 } ] } }, "input_order": { "required": ["model", "scale", "blur_sigma"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "SelfAttentionGuidance", "display_name": "Self-Attention Guidance", "description": "", "python_module": "comfy_extras.nodes_sag", "category": "_for_testing", "output_node": false }, "PerpNeg": { "input": { "required": { "model": ["MODEL"], "empty_conditioning": ["CONDITIONING"], "neg_scale": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "empty_conditioning", "neg_scale"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "PerpNeg", "display_name": "Perp-Neg (DEPRECATED by PerpNegGuider)", "description": "", "python_module": "comfy_extras.nodes_perpneg", "category": "_for_testing", "output_node": false, "deprecated": true }, "PerpNegGuider": { "input": { "required": { "model": ["MODEL"], "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "empty_conditioning": ["CONDITIONING"], "cfg": [ "FLOAT", { "default": 8.0, "min": 0.0, "max": 100.0, "step": 0.1, "round": 0.01 } ], "neg_scale": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model", "positive", "negative", "empty_conditioning", "cfg", "neg_scale" ] }, "output": ["GUIDER"], "output_is_list": [false], "output_name": ["GUIDER"], "name": "PerpNegGuider", "display_name": "PerpNegGuider", "description": "", "python_module": "comfy_extras.nodes_perpneg", "category": "_for_testing", "output_node": false }, "StableZero123_Conditioning": { "input": { "required": { "clip_vision": ["CLIP_VISION"], "init_image": ["IMAGE"], "vae": ["VAE"], "width": [ "INT", { "default": 256, "min": 16, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 256, "min": 16, "max": 16384, "step": 8 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }], "elevation": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ], "azimuth": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ] } }, "input_order": { "required": [ "clip_vision", "init_image", "vae", "width", "height", "batch_size", "elevation", "azimuth" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "StableZero123_Conditioning", "display_name": "StableZero123_Conditioning", "description": "", "python_module": "comfy_extras.nodes_stable3d", "category": "conditioning/3d_models", "output_node": false }, "StableZero123_Conditioning_Batched": { "input": { "required": { "clip_vision": ["CLIP_VISION"], "init_image": ["IMAGE"], "vae": ["VAE"], "width": [ "INT", { "default": 256, "min": 16, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 256, "min": 16, "max": 16384, "step": 8 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }], "elevation": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ], "azimuth": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ], "elevation_batch_increment": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ], "azimuth_batch_increment": [ "FLOAT", { "default": 0.0, "min": -180.0, "max": 180.0, "step": 0.1, "round": false } ] } }, "input_order": { "required": [ "clip_vision", "init_image", "vae", "width", "height", "batch_size", "elevation", "azimuth", "elevation_batch_increment", "azimuth_batch_increment" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "StableZero123_Conditioning_Batched", "display_name": "StableZero123_Conditioning_Batched", "description": "", "python_module": "comfy_extras.nodes_stable3d", "category": "conditioning/3d_models", "output_node": false }, "SV3D_Conditioning": { "input": { "required": { "clip_vision": ["CLIP_VISION"], "init_image": ["IMAGE"], "vae": ["VAE"], "width": [ "INT", { "default": 576, "min": 16, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 576, "min": 16, "max": 16384, "step": 8 } ], "video_frames": ["INT", { "default": 21, "min": 1, "max": 4096 }], "elevation": [ "FLOAT", { "default": 0.0, "min": -90.0, "max": 90.0, "step": 0.1, "round": false } ] } }, "input_order": { "required": [ "clip_vision", "init_image", "vae", "width", "height", "video_frames", "elevation" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "SV3D_Conditioning", "display_name": "SV3D_Conditioning", "description": "", "python_module": "comfy_extras.nodes_stable3d", "category": "conditioning/3d_models", "output_node": false }, "SD_4XUpscale_Conditioning": { "input": { "required": { "images": ["IMAGE"], "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "scale_ratio": [ "FLOAT", { "default": 4.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "noise_augmentation": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": [ "images", "positive", "negative", "scale_ratio", "noise_augmentation" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "SD_4XUpscale_Conditioning", "display_name": "SD_4XUpscale_Conditioning", "description": "", "python_module": "comfy_extras.nodes_sdupscale", "category": "conditioning/upscale_diffusion", "output_node": false }, "PhotoMakerLoader": { "input": { "required": { "photomaker_model_name": [[]] } }, "input_order": { "required": ["photomaker_model_name"] }, "output": ["PHOTOMAKER"], "output_is_list": [false], "output_name": ["PHOTOMAKER"], "name": "PhotoMakerLoader", "display_name": "PhotoMakerLoader", "description": "", "python_module": "comfy_extras.nodes_photomaker", "category": "_for_testing/photomaker", "output_node": false }, "PhotoMakerEncode": { "input": { "required": { "photomaker": ["PHOTOMAKER"], "image": ["IMAGE"], "clip": ["CLIP"], "text": [ "STRING", { "multiline": true, "dynamicPrompts": true, "default": "photograph of photomaker" } ] } }, "input_order": { "required": ["photomaker", "image", "clip", "text"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "PhotoMakerEncode", "display_name": "PhotoMakerEncode", "description": "", "python_module": "comfy_extras.nodes_photomaker", "category": "_for_testing/photomaker", "output_node": false }, "CLIPTextEncodePixArtAlpha": { "input": { "required": { "width": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "height": ["INT", { "default": 1024.0, "min": 0, "max": 16384 }], "text": ["STRING", { "multiline": true, "dynamicPrompts": true }], "clip": ["CLIP"] } }, "input_order": { "required": ["width", "height", "text", "clip"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodePixArtAlpha", "display_name": "CLIPTextEncodePixArtAlpha", "description": "Encodes text and sets the resolution conditioning for PixArt Alpha. Does not apply to PixArt Sigma.", "python_module": "comfy_extras.nodes_pixart", "category": "advanced/conditioning", "output_node": false }, "CLIPTextEncodeControlnet": { "input": { "required": { "clip": ["CLIP"], "conditioning": ["CONDITIONING"], "text": ["STRING", { "multiline": true, "dynamicPrompts": true }] } }, "input_order": { "required": ["clip", "conditioning", "text"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeControlnet", "display_name": "CLIPTextEncodeControlnet", "description": "", "python_module": "comfy_extras.nodes_cond", "category": "_for_testing/conditioning", "output_node": false }, "Morphology": { "input": { "required": { "image": ["IMAGE"], "operation": [ [ "erode", "dilate", "open", "close", "gradient", "bottom_hat", "top_hat" ] ], "kernel_size": [ "INT", { "default": 3, "min": 3, "max": 999, "step": 1 } ] } }, "input_order": { "required": ["image", "operation", "kernel_size"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "Morphology", "display_name": "ImageMorphology", "description": "", "python_module": "comfy_extras.nodes_morphology", "category": "image/postprocessing", "output_node": false }, "StableCascade_EmptyLatentImage": { "input": { "required": { "width": [ "INT", { "default": 1024, "min": 256, "max": 16384, "step": 8 } ], "height": [ "INT", { "default": 1024, "min": 256, "max": 16384, "step": 8 } ], "compression": [ "INT", { "default": 42, "min": 4, "max": 128, "step": 1 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "compression", "batch_size"] }, "output": ["LATENT", "LATENT"], "output_is_list": [false, false], "output_name": ["stage_c", "stage_b"], "name": "StableCascade_EmptyLatentImage", "display_name": "StableCascade_EmptyLatentImage", "description": "", "python_module": "comfy_extras.nodes_stable_cascade", "category": "latent/stable_cascade", "output_node": false }, "StableCascade_StageB_Conditioning": { "input": { "required": { "conditioning": ["CONDITIONING"], "stage_c": ["LATENT"] } }, "input_order": { "required": ["conditioning", "stage_c"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "StableCascade_StageB_Conditioning", "display_name": "StableCascade_StageB_Conditioning", "description": "", "python_module": "comfy_extras.nodes_stable_cascade", "category": "conditioning/stable_cascade", "output_node": false }, "StableCascade_StageC_VAEEncode": { "input": { "required": { "image": ["IMAGE"], "vae": ["VAE"], "compression": [ "INT", { "default": 42, "min": 4, "max": 128, "step": 1 } ] } }, "input_order": { "required": ["image", "vae", "compression"] }, "output": ["LATENT", "LATENT"], "output_is_list": [false, false], "output_name": ["stage_c", "stage_b"], "name": "StableCascade_StageC_VAEEncode", "display_name": "StableCascade_StageC_VAEEncode", "description": "", "python_module": "comfy_extras.nodes_stable_cascade", "category": "latent/stable_cascade", "output_node": false }, "StableCascade_SuperResolutionControlnet": { "input": { "required": { "image": ["IMAGE"], "vae": ["VAE"] } }, "input_order": { "required": ["image", "vae"] }, "output": ["IMAGE", "LATENT", "LATENT"], "output_is_list": [false, false, false], "output_name": ["controlnet_input", "stage_c", "stage_b"], "name": "StableCascade_SuperResolutionControlnet", "display_name": "StableCascade_SuperResolutionControlnet", "description": "", "python_module": "comfy_extras.nodes_stable_cascade", "category": "_for_testing/stable_cascade", "output_node": false, "experimental": true }, "DifferentialDiffusion": { "input": { "required": { "model": ["MODEL"] } }, "input_order": { "required": ["model"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "DifferentialDiffusion", "display_name": "Differential Diffusion", "description": "", "python_module": "comfy_extras.nodes_differential_diffusion", "category": "_for_testing", "output_node": false }, "InstructPixToPixConditioning": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "vae": ["VAE"], "pixels": ["IMAGE"] } }, "input_order": { "required": ["positive", "negative", "vae", "pixels"] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "InstructPixToPixConditioning", "display_name": "InstructPixToPixConditioning", "description": "", "python_module": "comfy_extras.nodes_ip2p", "category": "conditioning/instructpix2pix", "output_node": false }, "ModelMergeSD1": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "time_embed.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "label_emb.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "out.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "time_embed.", "label_emb.", "input_blocks.0.", "input_blocks.1.", "input_blocks.2.", "input_blocks.3.", "input_blocks.4.", "input_blocks.5.", "input_blocks.6.", "input_blocks.7.", "input_blocks.8.", "input_blocks.9.", "input_blocks.10.", "input_blocks.11.", "middle_block.0.", "middle_block.1.", "middle_block.2.", "output_blocks.0.", "output_blocks.1.", "output_blocks.2.", "output_blocks.3.", "output_blocks.4.", "output_blocks.5.", "output_blocks.6.", "output_blocks.7.", "output_blocks.8.", "output_blocks.9.", "output_blocks.10.", "output_blocks.11.", "out." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSD1", "display_name": "ModelMergeSD1", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeSD2": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "time_embed.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "label_emb.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "out.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "time_embed.", "label_emb.", "input_blocks.0.", "input_blocks.1.", "input_blocks.2.", "input_blocks.3.", "input_blocks.4.", "input_blocks.5.", "input_blocks.6.", "input_blocks.7.", "input_blocks.8.", "input_blocks.9.", "input_blocks.10.", "input_blocks.11.", "middle_block.0.", "middle_block.1.", "middle_block.2.", "output_blocks.0.", "output_blocks.1.", "output_blocks.2.", "output_blocks.3.", "output_blocks.4.", "output_blocks.5.", "output_blocks.6.", "output_blocks.7.", "output_blocks.8.", "output_blocks.9.", "output_blocks.10.", "output_blocks.11.", "out." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSD2", "display_name": "ModelMergeSD2", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeSDXL": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "time_embed.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "label_emb.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.0": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.1": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.2": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.3": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.4": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.5": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.6": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.7": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "input_blocks.8": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.0": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.1": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "middle_block.2": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.0": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.1": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.2": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.3": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.4": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.5": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.6": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.7": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "output_blocks.8": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "out.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "time_embed.", "label_emb.", "input_blocks.0", "input_blocks.1", "input_blocks.2", "input_blocks.3", "input_blocks.4", "input_blocks.5", "input_blocks.6", "input_blocks.7", "input_blocks.8", "middle_block.0", "middle_block.1", "middle_block.2", "output_blocks.0", "output_blocks.1", "output_blocks.2", "output_blocks.3", "output_blocks.4", "output_blocks.5", "output_blocks.6", "output_blocks.7", "output_blocks.8", "out." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSDXL", "display_name": "ModelMergeSDXL", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeSD3_2B": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "pos_embed.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "x_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "context_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "y_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "pos_embed.", "x_embedder.", "context_embedder.", "y_embedder.", "t_embedder.", "joint_blocks.0.", "joint_blocks.1.", "joint_blocks.2.", "joint_blocks.3.", "joint_blocks.4.", "joint_blocks.5.", "joint_blocks.6.", "joint_blocks.7.", "joint_blocks.8.", "joint_blocks.9.", "joint_blocks.10.", "joint_blocks.11.", "joint_blocks.12.", "joint_blocks.13.", "joint_blocks.14.", "joint_blocks.15.", "joint_blocks.16.", "joint_blocks.17.", "joint_blocks.18.", "joint_blocks.19.", "joint_blocks.20.", "joint_blocks.21.", "joint_blocks.22.", "joint_blocks.23.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSD3_2B", "display_name": "ModelMergeSD3_2B", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeAuraflow": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "init_x_linear.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "positional_encoding": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "cond_seq_linear.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "register_tokens": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_layers.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_layers.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_layers.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_layers.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.28.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.29.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.30.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_layers.31.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "modF.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_linear.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "init_x_linear.", "positional_encoding", "cond_seq_linear.", "register_tokens", "t_embedder.", "double_layers.0.", "double_layers.1.", "double_layers.2.", "double_layers.3.", "single_layers.0.", "single_layers.1.", "single_layers.2.", "single_layers.3.", "single_layers.4.", "single_layers.5.", "single_layers.6.", "single_layers.7.", "single_layers.8.", "single_layers.9.", "single_layers.10.", "single_layers.11.", "single_layers.12.", "single_layers.13.", "single_layers.14.", "single_layers.15.", "single_layers.16.", "single_layers.17.", "single_layers.18.", "single_layers.19.", "single_layers.20.", "single_layers.21.", "single_layers.22.", "single_layers.23.", "single_layers.24.", "single_layers.25.", "single_layers.26.", "single_layers.27.", "single_layers.28.", "single_layers.29.", "single_layers.30.", "single_layers.31.", "modF.", "final_linear." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeAuraflow", "display_name": "ModelMergeAuraflow", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeFlux1": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "img_in.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "time_in.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "guidance_in": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "vector_in.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "txt_in.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "double_blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.28.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.29.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.30.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.31.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.32.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.33.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.34.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.35.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.36.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "single_blocks.37.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "img_in.", "time_in.", "guidance_in", "vector_in.", "txt_in.", "double_blocks.0.", "double_blocks.1.", "double_blocks.2.", "double_blocks.3.", "double_blocks.4.", "double_blocks.5.", "double_blocks.6.", "double_blocks.7.", "double_blocks.8.", "double_blocks.9.", "double_blocks.10.", "double_blocks.11.", "double_blocks.12.", "double_blocks.13.", "double_blocks.14.", "double_blocks.15.", "double_blocks.16.", "double_blocks.17.", "double_blocks.18.", "single_blocks.0.", "single_blocks.1.", "single_blocks.2.", "single_blocks.3.", "single_blocks.4.", "single_blocks.5.", "single_blocks.6.", "single_blocks.7.", "single_blocks.8.", "single_blocks.9.", "single_blocks.10.", "single_blocks.11.", "single_blocks.12.", "single_blocks.13.", "single_blocks.14.", "single_blocks.15.", "single_blocks.16.", "single_blocks.17.", "single_blocks.18.", "single_blocks.19.", "single_blocks.20.", "single_blocks.21.", "single_blocks.22.", "single_blocks.23.", "single_blocks.24.", "single_blocks.25.", "single_blocks.26.", "single_blocks.27.", "single_blocks.28.", "single_blocks.29.", "single_blocks.30.", "single_blocks.31.", "single_blocks.32.", "single_blocks.33.", "single_blocks.34.", "single_blocks.35.", "single_blocks.36.", "single_blocks.37.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeFlux1", "display_name": "ModelMergeFlux1", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeSD35_Large": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "pos_embed.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "x_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "context_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "y_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.28.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.29.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.30.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.31.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.32.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.33.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.34.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.35.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.36.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "joint_blocks.37.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "pos_embed.", "x_embedder.", "context_embedder.", "y_embedder.", "t_embedder.", "joint_blocks.0.", "joint_blocks.1.", "joint_blocks.2.", "joint_blocks.3.", "joint_blocks.4.", "joint_blocks.5.", "joint_blocks.6.", "joint_blocks.7.", "joint_blocks.8.", "joint_blocks.9.", "joint_blocks.10.", "joint_blocks.11.", "joint_blocks.12.", "joint_blocks.13.", "joint_blocks.14.", "joint_blocks.15.", "joint_blocks.16.", "joint_blocks.17.", "joint_blocks.18.", "joint_blocks.19.", "joint_blocks.20.", "joint_blocks.21.", "joint_blocks.22.", "joint_blocks.23.", "joint_blocks.24.", "joint_blocks.25.", "joint_blocks.26.", "joint_blocks.27.", "joint_blocks.28.", "joint_blocks.29.", "joint_blocks.30.", "joint_blocks.31.", "joint_blocks.32.", "joint_blocks.33.", "joint_blocks.34.", "joint_blocks.35.", "joint_blocks.36.", "joint_blocks.37.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeSD35_Large", "display_name": "ModelMergeSD35_Large", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeMochiPreview": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "pos_frequencies.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t5_y_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t5_yproj.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.28.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.29.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.30.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.31.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.32.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.33.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.34.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.35.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.36.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.37.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.38.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.39.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.40.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.41.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.42.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.43.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.44.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.45.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.46.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.47.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "pos_frequencies.", "t_embedder.", "t5_y_embedder.", "t5_yproj.", "blocks.0.", "blocks.1.", "blocks.2.", "blocks.3.", "blocks.4.", "blocks.5.", "blocks.6.", "blocks.7.", "blocks.8.", "blocks.9.", "blocks.10.", "blocks.11.", "blocks.12.", "blocks.13.", "blocks.14.", "blocks.15.", "blocks.16.", "blocks.17.", "blocks.18.", "blocks.19.", "blocks.20.", "blocks.21.", "blocks.22.", "blocks.23.", "blocks.24.", "blocks.25.", "blocks.26.", "blocks.27.", "blocks.28.", "blocks.29.", "blocks.30.", "blocks.31.", "blocks.32.", "blocks.33.", "blocks.34.", "blocks.35.", "blocks.36.", "blocks.37.", "blocks.38.", "blocks.39.", "blocks.40.", "blocks.41.", "blocks.42.", "blocks.43.", "blocks.44.", "blocks.45.", "blocks.46.", "blocks.47.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeMochiPreview", "display_name": "ModelMergeMochiPreview", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeLTXV": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "patchify_proj.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "adaln_single.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "caption_projection.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "transformer_blocks.27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "scale_shift_table": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "proj_out.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "patchify_proj.", "adaln_single.", "caption_projection.", "transformer_blocks.0.", "transformer_blocks.1.", "transformer_blocks.2.", "transformer_blocks.3.", "transformer_blocks.4.", "transformer_blocks.5.", "transformer_blocks.6.", "transformer_blocks.7.", "transformer_blocks.8.", "transformer_blocks.9.", "transformer_blocks.10.", "transformer_blocks.11.", "transformer_blocks.12.", "transformer_blocks.13.", "transformer_blocks.14.", "transformer_blocks.15.", "transformer_blocks.16.", "transformer_blocks.17.", "transformer_blocks.18.", "transformer_blocks.19.", "transformer_blocks.20.", "transformer_blocks.21.", "transformer_blocks.22.", "transformer_blocks.23.", "transformer_blocks.24.", "transformer_blocks.25.", "transformer_blocks.26.", "transformer_blocks.27.", "scale_shift_table", "proj_out." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeLTXV", "display_name": "ModelMergeLTXV", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeCosmos7B": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "pos_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "extra_pos_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "x_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "affline_norm.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "pos_embedder.", "extra_pos_embedder.", "x_embedder.", "t_embedder.", "affline_norm.", "blocks.block0.", "blocks.block1.", "blocks.block2.", "blocks.block3.", "blocks.block4.", "blocks.block5.", "blocks.block6.", "blocks.block7.", "blocks.block8.", "blocks.block9.", "blocks.block10.", "blocks.block11.", "blocks.block12.", "blocks.block13.", "blocks.block14.", "blocks.block15.", "blocks.block16.", "blocks.block17.", "blocks.block18.", "blocks.block19.", "blocks.block20.", "blocks.block21.", "blocks.block22.", "blocks.block23.", "blocks.block24.", "blocks.block25.", "blocks.block26.", "blocks.block27.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeCosmos7B", "display_name": "ModelMergeCosmos7B", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "ModelMergeCosmos14B": { "input": { "required": { "model1": ["MODEL"], "model2": ["MODEL"], "pos_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "extra_pos_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "x_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "t_embedder.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "affline_norm.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block0.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block1.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block2.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block3.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block4.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block5.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block6.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block7.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block8.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block9.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block10.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block11.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block12.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block13.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block14.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block15.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block16.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block17.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block18.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block19.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block20.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block21.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block22.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block23.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block24.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block25.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block26.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block27.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block28.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block29.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block30.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block31.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block32.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block33.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block34.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "blocks.block35.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ], "final_layer.": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model1", "model2", "pos_embedder.", "extra_pos_embedder.", "x_embedder.", "t_embedder.", "affline_norm.", "blocks.block0.", "blocks.block1.", "blocks.block2.", "blocks.block3.", "blocks.block4.", "blocks.block5.", "blocks.block6.", "blocks.block7.", "blocks.block8.", "blocks.block9.", "blocks.block10.", "blocks.block11.", "blocks.block12.", "blocks.block13.", "blocks.block14.", "blocks.block15.", "blocks.block16.", "blocks.block17.", "blocks.block18.", "blocks.block19.", "blocks.block20.", "blocks.block21.", "blocks.block22.", "blocks.block23.", "blocks.block24.", "blocks.block25.", "blocks.block26.", "blocks.block27.", "blocks.block28.", "blocks.block29.", "blocks.block30.", "blocks.block31.", "blocks.block32.", "blocks.block33.", "blocks.block34.", "blocks.block35.", "final_layer." ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelMergeCosmos14B", "display_name": "ModelMergeCosmos14B", "description": "", "python_module": "comfy_extras.nodes_model_merging_model_specific", "category": "advanced/model_merging/model_specific", "output_node": false }, "PerturbedAttentionGuidance": { "input": { "required": { "model": ["MODEL"], "scale": [ "FLOAT", { "default": 3.0, "min": 0.0, "max": 100.0, "step": 0.01, "round": 0.01 } ] } }, "input_order": { "required": ["model", "scale"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "PerturbedAttentionGuidance", "display_name": "PerturbedAttentionGuidance", "description": "", "python_module": "comfy_extras.nodes_pag", "category": "model_patches/unet", "output_node": false }, "AlignYourStepsScheduler": { "input": { "required": { "model_type": [["SD1", "SDXL", "SVD"]], "steps": ["INT", { "default": 10, "min": 1, "max": 10000 }], "denoise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["model_type", "steps", "denoise"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "AlignYourStepsScheduler", "display_name": "AlignYourStepsScheduler", "description": "", "python_module": "comfy_extras.nodes_align_your_steps", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "UNetSelfAttentionMultiply": { "input": { "required": { "model": ["MODEL"], "q": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "k": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "v": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "out": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "q", "k", "v", "out"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "UNetSelfAttentionMultiply", "display_name": "UNetSelfAttentionMultiply", "description": "", "python_module": "comfy_extras.nodes_attention_multiply", "category": "_for_testing/attention_experiments", "output_node": false }, "UNetCrossAttentionMultiply": { "input": { "required": { "model": ["MODEL"], "q": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "k": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "v": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "out": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "q", "k", "v", "out"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "UNetCrossAttentionMultiply", "display_name": "UNetCrossAttentionMultiply", "description": "", "python_module": "comfy_extras.nodes_attention_multiply", "category": "_for_testing/attention_experiments", "output_node": false }, "CLIPAttentionMultiply": { "input": { "required": { "clip": ["CLIP"], "q": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "k": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "v": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "out": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": ["clip", "q", "k", "v", "out"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "CLIPAttentionMultiply", "display_name": "CLIPAttentionMultiply", "description": "", "python_module": "comfy_extras.nodes_attention_multiply", "category": "_for_testing/attention_experiments", "output_node": false }, "UNetTemporalAttentionMultiply": { "input": { "required": { "model": ["MODEL"], "self_structural": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "self_temporal": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "cross_structural": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "cross_temporal": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model", "self_structural", "self_temporal", "cross_structural", "cross_temporal" ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "UNetTemporalAttentionMultiply", "display_name": "UNetTemporalAttentionMultiply", "description": "", "python_module": "comfy_extras.nodes_attention_multiply", "category": "_for_testing/attention_experiments", "output_node": false }, "SamplerLCMUpscale": { "input": { "required": { "scale_ratio": [ "FLOAT", { "default": 1.0, "min": 0.1, "max": 20.0, "step": 0.01 } ], "scale_steps": [ "INT", { "default": -1, "min": -1, "max": 1000, "step": 1 } ], "upscale_method": [ ["bislerp", "nearest-exact", "bilinear", "area", "bicubic"] ] } }, "input_order": { "required": ["scale_ratio", "scale_steps", "upscale_method"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerLCMUpscale", "display_name": "SamplerLCMUpscale", "description": "", "python_module": "comfy_extras.nodes_advanced_samplers", "category": "sampling/custom_sampling/samplers", "output_node": false }, "SamplerEulerCFGpp": { "input": { "required": { "version": [["regular", "alternative"]] } }, "input_order": { "required": ["version"] }, "output": ["SAMPLER"], "output_is_list": [false], "output_name": ["SAMPLER"], "name": "SamplerEulerCFGpp", "display_name": "SamplerEulerCFG++", "description": "", "python_module": "comfy_extras.nodes_advanced_samplers", "category": "_for_testing", "output_node": false }, "WebcamCapture": { "input": { "required": { "image": ["WEBCAM", {}], "width": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "height": ["INT", { "default": 0, "min": 0, "max": 16384, "step": 1 }], "capture_on_queue": ["BOOLEAN", { "default": true }] } }, "input_order": { "required": ["image", "width", "height", "capture_on_queue"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["IMAGE"], "name": "WebcamCapture", "display_name": "Webcam Capture", "description": "", "python_module": "comfy_extras.nodes_webcam", "category": "image", "output_node": false }, "EmptyLatentAudio": { "input": { "required": { "seconds": [ "FLOAT", { "default": 47.6, "min": 1.0, "max": 1000.0, "step": 0.1 } ], "batch_size": [ "INT", { "default": 1, "min": 1, "max": 4096, "tooltip": "The number of latent images in the batch." } ] } }, "input_order": { "required": ["seconds", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyLatentAudio", "display_name": "EmptyLatentAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "latent/audio", "output_node": false }, "VAEEncodeAudio": { "input": { "required": { "audio": ["AUDIO"], "vae": ["VAE"] } }, "input_order": { "required": ["audio", "vae"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "VAEEncodeAudio", "display_name": "VAEEncodeAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "latent/audio", "output_node": false }, "VAEDecodeAudio": { "input": { "required": { "samples": ["LATENT"], "vae": ["VAE"] } }, "input_order": { "required": ["samples", "vae"] }, "output": ["AUDIO"], "output_is_list": [false], "output_name": ["AUDIO"], "name": "VAEDecodeAudio", "display_name": "VAEDecodeAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "latent/audio", "output_node": false }, "SaveAudio": { "input": { "required": { "audio": ["AUDIO"], "filename_prefix": ["STRING", { "default": "audio/ComfyUI" }] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["audio", "filename_prefix"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveAudio", "display_name": "SaveAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "audio", "output_node": true }, "LoadAudio": { "input": { "required": { "audio": [[], { "audio_upload": true }] } }, "input_order": { "required": ["audio"] }, "output": ["AUDIO"], "output_is_list": [false], "output_name": ["AUDIO"], "name": "LoadAudio", "display_name": "LoadAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "audio", "output_node": false }, "PreviewAudio": { "input": { "required": { "audio": ["AUDIO"] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["audio"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "PreviewAudio", "display_name": "PreviewAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "audio", "output_node": true }, "ConditioningStableAudio": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "seconds_start": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1000.0, "step": 0.1 } ], "seconds_total": [ "FLOAT", { "default": 47.0, "min": 0.0, "max": 1000.0, "step": 0.1 } ] } }, "input_order": { "required": ["positive", "negative", "seconds_start", "seconds_total"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "ConditioningStableAudio", "display_name": "ConditioningStableAudio", "description": "", "python_module": "comfy_extras.nodes_audio", "category": "conditioning", "output_node": false }, "TripleCLIPLoader": { "input": { "required": { "clip_name1": [[]], "clip_name2": [[]], "clip_name3": [[]] } }, "input_order": { "required": ["clip_name1", "clip_name2", "clip_name3"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "TripleCLIPLoader", "display_name": "TripleCLIPLoader", "description": "[Recipes]\n\nsd3: clip-l, clip-g, t5", "python_module": "comfy_extras.nodes_sd3", "category": "advanced/loaders", "output_node": false }, "EmptySD3LatentImage": { "input": { "required": { "width": [ "INT", { "default": 1024, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 1024, "min": 16, "max": 16384, "step": 16 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptySD3LatentImage", "display_name": "EmptySD3LatentImage", "description": "", "python_module": "comfy_extras.nodes_sd3", "category": "latent/sd3", "output_node": false }, "CLIPTextEncodeSD3": { "input": { "required": { "clip": ["CLIP"], "clip_l": ["STRING", { "multiline": true, "dynamicPrompts": true }], "clip_g": ["STRING", { "multiline": true, "dynamicPrompts": true }], "t5xxl": ["STRING", { "multiline": true, "dynamicPrompts": true }], "empty_padding": [["none", "empty_prompt"]] } }, "input_order": { "required": ["clip", "clip_l", "clip_g", "t5xxl", "empty_padding"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeSD3", "display_name": "CLIPTextEncodeSD3", "description": "", "python_module": "comfy_extras.nodes_sd3", "category": "advanced/conditioning", "output_node": false }, "ControlNetApplySD3": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "control_net": ["CONTROL_NET"], "vae": ["VAE"], "image": ["IMAGE"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": [ "positive", "negative", "control_net", "vae", "image", "strength", "start_percent", "end_percent" ] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "ControlNetApplySD3", "display_name": "Apply Controlnet with VAE", "description": "", "python_module": "comfy_extras.nodes_sd3", "category": "conditioning/controlnet", "output_node": false, "deprecated": true }, "SkipLayerGuidanceSD3": { "input": { "required": { "model": ["MODEL"], "layers": ["STRING", { "default": "7, 8, 9", "multiline": false }], "scale": [ "FLOAT", { "default": 3.0, "min": 0.0, "max": 10.0, "step": 0.1 } ], "start_percent": [ "FLOAT", { "default": 0.01, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 0.15, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": ["model", "layers", "scale", "start_percent", "end_percent"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "SkipLayerGuidanceSD3", "display_name": "SkipLayerGuidanceSD3", "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", "python_module": "comfy_extras.nodes_sd3", "category": "advanced/guidance", "output_node": false, "experimental": true }, "GITSScheduler": { "input": { "required": { "coeff": [ "FLOAT", { "default": 1.2, "min": 0.8, "max": 1.5, "step": 0.05 } ], "steps": ["INT", { "default": 10, "min": 2, "max": 1000 }], "denoise": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": ["coeff", "steps", "denoise"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "GITSScheduler", "display_name": "GITSScheduler", "description": "", "python_module": "comfy_extras.nodes_gits", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "SetUnionControlNetType": { "input": { "required": { "control_net": ["CONTROL_NET"], "type": [ [ "auto", "openpose", "depth", "hed/pidi/scribble/ted", "canny/lineart/anime_lineart/mlsd", "normal", "segment", "tile", "repaint" ] ] } }, "input_order": { "required": ["control_net", "type"] }, "output": ["CONTROL_NET"], "output_is_list": [false], "output_name": ["CONTROL_NET"], "name": "SetUnionControlNetType", "display_name": "SetUnionControlNetType", "description": "", "python_module": "comfy_extras.nodes_controlnet", "category": "conditioning/controlnet", "output_node": false }, "ControlNetInpaintingAliMamaApply": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "control_net": ["CONTROL_NET"], "vae": ["VAE"], "image": ["IMAGE"], "mask": ["MASK"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": [ "positive", "negative", "control_net", "vae", "image", "mask", "strength", "start_percent", "end_percent" ] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "ControlNetInpaintingAliMamaApply", "display_name": "ControlNetInpaintingAliMamaApply", "description": "", "python_module": "comfy_extras.nodes_controlnet", "category": "conditioning/controlnet", "output_node": false }, "CLIPTextEncodeHunyuanDiT": { "input": { "required": { "clip": ["CLIP"], "bert": ["STRING", { "multiline": true, "dynamicPrompts": true }], "mt5xl": ["STRING", { "multiline": true, "dynamicPrompts": true }] } }, "input_order": { "required": ["clip", "bert", "mt5xl"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeHunyuanDiT", "display_name": "CLIPTextEncodeHunyuanDiT", "description": "", "python_module": "comfy_extras.nodes_hunyuan", "category": "advanced/conditioning", "output_node": false }, "TextEncodeHunyuanVideo_ImageToVideo": { "input": { "required": { "clip": ["CLIP"], "clip_vision_output": ["CLIP_VISION_OUTPUT"], "prompt": ["STRING", { "multiline": true, "dynamicPrompts": true }], "image_interleave": [ "INT", { "default": 2, "min": 1, "max": 512, "tooltip": "How much the image influences things vs the text prompt. Higher number means more influence from the text prompt." } ] } }, "input_order": { "required": ["clip", "clip_vision_output", "prompt", "image_interleave"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "TextEncodeHunyuanVideo_ImageToVideo", "display_name": "TextEncodeHunyuanVideo_ImageToVideo", "description": "", "python_module": "comfy_extras.nodes_hunyuan", "category": "advanced/conditioning", "output_node": false }, "EmptyHunyuanLatentVideo": { "input": { "required": { "width": [ "INT", { "default": 848, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 480, "min": 16, "max": 16384, "step": 16 } ], "length": ["INT", { "default": 25, "min": 1, "max": 16384, "step": 4 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "length", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyHunyuanLatentVideo", "display_name": "EmptyHunyuanLatentVideo", "description": "", "python_module": "comfy_extras.nodes_hunyuan", "category": "latent/video", "output_node": false }, "HunyuanImageToVideo": { "input": { "required": { "positive": ["CONDITIONING"], "vae": ["VAE"], "width": [ "INT", { "default": 848, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 480, "min": 16, "max": 16384, "step": 16 } ], "length": ["INT", { "default": 53, "min": 1, "max": 16384, "step": 4 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }], "guidance_type": [["v1 (concat)", "v2 (replace)"]] }, "optional": { "start_image": ["IMAGE"] } }, "input_order": { "required": [ "positive", "vae", "width", "height", "length", "batch_size", "guidance_type" ], "optional": ["start_image"] }, "output": ["CONDITIONING", "LATENT"], "output_is_list": [false, false], "output_name": ["positive", "latent"], "name": "HunyuanImageToVideo", "display_name": "HunyuanImageToVideo", "description": "", "python_module": "comfy_extras.nodes_hunyuan", "category": "conditioning/video_models", "output_node": false }, "CLIPTextEncodeFlux": { "input": { "required": { "clip": ["CLIP"], "clip_l": ["STRING", { "multiline": true, "dynamicPrompts": true }], "t5xxl": ["STRING", { "multiline": true, "dynamicPrompts": true }], "guidance": [ "FLOAT", { "default": 3.5, "min": 0.0, "max": 100.0, "step": 0.1 } ] } }, "input_order": { "required": ["clip", "clip_l", "t5xxl", "guidance"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeFlux", "display_name": "CLIPTextEncodeFlux", "description": "", "python_module": "comfy_extras.nodes_flux", "category": "advanced/conditioning/flux", "output_node": false }, "FluxGuidance": { "input": { "required": { "conditioning": ["CONDITIONING"], "guidance": [ "FLOAT", { "default": 3.5, "min": 0.0, "max": 100.0, "step": 0.1 } ] } }, "input_order": { "required": ["conditioning", "guidance"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "FluxGuidance", "display_name": "FluxGuidance", "description": "", "python_module": "comfy_extras.nodes_flux", "category": "advanced/conditioning/flux", "output_node": false }, "FluxDisableGuidance": { "input": { "required": { "conditioning": ["CONDITIONING"] } }, "input_order": { "required": ["conditioning"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "FluxDisableGuidance", "display_name": "FluxDisableGuidance", "description": "This node completely disables the guidance embed on Flux and Flux like models", "python_module": "comfy_extras.nodes_flux", "category": "advanced/conditioning/flux", "output_node": false }, "LoraSave": { "input": { "required": { "filename_prefix": [ "STRING", { "default": "loras/ComfyUI_extracted_lora" } ], "rank": ["INT", { "default": 8, "min": 1, "max": 4096, "step": 1 }], "lora_type": [["standard", "full_diff"]], "bias_diff": ["BOOLEAN", { "default": true }] }, "optional": { "model_diff": [ "MODEL", { "tooltip": "The ModelSubtract output to be converted to a lora." } ], "text_encoder_diff": [ "CLIP", { "tooltip": "The CLIPSubtract output to be converted to a lora." } ] } }, "input_order": { "required": ["filename_prefix", "rank", "lora_type", "bias_diff"], "optional": ["model_diff", "text_encoder_diff"] }, "output": [], "output_is_list": [], "output_name": [], "name": "LoraSave", "display_name": "Extract and Save Lora", "description": "", "python_module": "comfy_extras.nodes_lora_extract", "category": "_for_testing", "output_node": true }, "TorchCompileModel": { "input": { "required": { "model": ["MODEL"], "backend": [["inductor", "cudagraphs"]] } }, "input_order": { "required": ["model", "backend"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "TorchCompileModel", "display_name": "TorchCompileModel", "description": "", "python_module": "comfy_extras.nodes_torch_compile", "category": "_for_testing", "output_node": false, "experimental": true }, "EmptyMochiLatentVideo": { "input": { "required": { "width": [ "INT", { "default": 848, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 480, "min": 16, "max": 16384, "step": 16 } ], "length": ["INT", { "default": 25, "min": 7, "max": 16384, "step": 6 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "length", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyMochiLatentVideo", "display_name": "EmptyMochiLatentVideo", "description": "", "python_module": "comfy_extras.nodes_mochi", "category": "latent/video", "output_node": false }, "SkipLayerGuidanceDiT": { "input": { "required": { "model": ["MODEL"], "double_layers": [ "STRING", { "default": "7, 8, 9", "multiline": false } ], "single_layers": [ "STRING", { "default": "7, 8, 9", "multiline": false } ], "scale": [ "FLOAT", { "default": 3.0, "min": 0.0, "max": 10.0, "step": 0.1 } ], "start_percent": [ "FLOAT", { "default": 0.01, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 0.15, "min": 0.0, "max": 1.0, "step": 0.001 } ], "rescaling_scale": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 10.0, "step": 0.01 } ] } }, "input_order": { "required": [ "model", "double_layers", "single_layers", "scale", "start_percent", "end_percent", "rescaling_scale" ] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "SkipLayerGuidanceDiT", "display_name": "SkipLayerGuidanceDiT", "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", "python_module": "comfy_extras.nodes_slg", "category": "advanced/guidance", "output_node": false, "experimental": true }, "Mahiro": { "input": { "required": { "model": ["MODEL"] } }, "input_order": { "required": ["model"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["patched_model"], "name": "Mahiro", "display_name": "Mahiro is so cute that she deserves a better guidance function!! (\u3002\u30fb\u03c9\u30fb\u3002)", "description": "Modify the guidance to scale more on the 'direction' of the positive prompt rather than the difference between the negative prompt.", "python_module": "comfy_extras.nodes_mahiro", "category": "_for_testing", "output_node": false }, "EmptyLTXVLatentVideo": { "input": { "required": { "width": [ "INT", { "default": 768, "min": 64, "max": 16384, "step": 32 } ], "height": [ "INT", { "default": 512, "min": 64, "max": 16384, "step": 32 } ], "length": ["INT", { "default": 97, "min": 1, "max": 16384, "step": 8 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "length", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyLTXVLatentVideo", "display_name": "EmptyLTXVLatentVideo", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "latent/video/ltxv", "output_node": false }, "LTXVImgToVideo": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "vae": ["VAE"], "image": ["IMAGE"], "width": [ "INT", { "default": 768, "min": 64, "max": 16384, "step": 32 } ], "height": [ "INT", { "default": 512, "min": 64, "max": 16384, "step": 32 } ], "length": ["INT", { "default": 97, "min": 9, "max": 16384, "step": 8 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": [ "positive", "negative", "vae", "image", "width", "height", "length", "batch_size" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "LTXVImgToVideo", "display_name": "LTXVImgToVideo", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "conditioning/video_models", "output_node": false }, "ModelSamplingLTXV": { "input": { "required": { "model": ["MODEL"], "max_shift": [ "FLOAT", { "default": 2.05, "min": 0.0, "max": 100.0, "step": 0.01 } ], "base_shift": [ "FLOAT", { "default": 0.95, "min": 0.0, "max": 100.0, "step": 0.01 } ] }, "optional": { "latent": ["LATENT"] } }, "input_order": { "required": ["model", "max_shift", "base_shift"], "optional": ["latent"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "ModelSamplingLTXV", "display_name": "ModelSamplingLTXV", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "advanced/model", "output_node": false }, "LTXVConditioning": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "frame_rate": [ "FLOAT", { "default": 25.0, "min": 0.0, "max": 1000.0, "step": 0.01 } ] } }, "input_order": { "required": ["positive", "negative", "frame_rate"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "LTXVConditioning", "display_name": "LTXVConditioning", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "conditioning/video_models", "output_node": false }, "LTXVScheduler": { "input": { "required": { "steps": ["INT", { "default": 20, "min": 1, "max": 10000 }], "max_shift": [ "FLOAT", { "default": 2.05, "min": 0.0, "max": 100.0, "step": 0.01 } ], "base_shift": [ "FLOAT", { "default": 0.95, "min": 0.0, "max": 100.0, "step": 0.01 } ], "stretch": [ "BOOLEAN", { "default": true, "tooltip": "Stretch the sigmas to be in the range [terminal, 1]." } ], "terminal": [ "FLOAT", { "default": 0.1, "min": 0.0, "max": 0.99, "step": 0.01, "tooltip": "The terminal value of the sigmas after stretching." } ] }, "optional": { "latent": ["LATENT"] } }, "input_order": { "required": ["steps", "max_shift", "base_shift", "stretch", "terminal"], "optional": ["latent"] }, "output": ["SIGMAS"], "output_is_list": [false], "output_name": ["SIGMAS"], "name": "LTXVScheduler", "display_name": "LTXVScheduler", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "sampling/custom_sampling/schedulers", "output_node": false }, "LTXVAddGuide": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "vae": ["VAE"], "latent": ["LATENT"], "image": [ "IMAGE", { "tooltip": "Image or video to condition the latent video on. Must be 8*n + 1 frames.If the video is not 8*n + 1 frames, it will be cropped to the nearest 8*n + 1 frames." } ], "frame_idx": [ "INT", { "default": 0, "min": -9999, "max": 9999, "tooltip": "Frame index to start the conditioning at. For single-frame images or videos with 1-8 frames, any frame_idx value is acceptable. For videos with 9+ frames, frame_idx must be divisible by 8, otherwise it will be rounded down to the nearest multiple of 8. Negative values are counted from the end of the video." } ], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01 } ] } }, "input_order": { "required": [ "positive", "negative", "vae", "latent", "image", "frame_idx", "strength" ] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "LTXVAddGuide", "display_name": "LTXVAddGuide", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "conditioning/video_models", "output_node": false }, "LTXVPreprocess": { "input": { "required": { "image": ["IMAGE"], "img_compression": [ "INT", { "default": 35, "min": 0, "max": 100, "tooltip": "Amount of compression to apply on image." } ] } }, "input_order": { "required": ["image", "img_compression"] }, "output": ["IMAGE"], "output_is_list": [false], "output_name": ["output_image"], "name": "LTXVPreprocess", "display_name": "LTXVPreprocess", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "image", "output_node": false }, "LTXVCropGuides": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "latent": ["LATENT"] } }, "input_order": { "required": ["positive", "negative", "latent"] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "LTXVCropGuides", "display_name": "LTXVCropGuides", "description": "", "python_module": "comfy_extras.nodes_lt", "category": "conditioning/video_models", "output_node": false }, "CreateHookLora": { "input": { "required": { "lora_name": [ [ "Characters/Cortana/Cortana(revAnimated).safetensors", "Characters/Cortana/Cortana.safetensors", "Characters/Cortana/Cortana_XL.safetensors", "Characters/Cortana/cortana_xl_v3.safetensors", "Characters/D.va/DVaOWXL - by KillerUwU13_AI.safetensors", "Characters/D.va/DVaPony.safetensors", "Characters/Lara Croft/ClassicLara.safetensors", "Characters/Lara Croft/LaraCroft_character-20.safetensors", "Characters/Lara Croft/lara_croft_xl_v2.safetensors", "Characters/Peni Parker/32dim-MR_PeniParker-PONY.safetensors", "Characters/Peni Parker/PeniParkerRivals-10.safetensors", "Characters/Peni Parker/Peni_Parker-000007.safetensors", "Characters/Peni Parker/Peni_parker_marvel_rivels.safetensors", "Characters/Samus Aran/Samus AranPonyLora.safetensors", "Characters/Samus Aran/samus aran.safetensors", "Characters/Samus Aran/samus-09.safetensors", "Characters/Scarlett Johansson/Scarlett-v20.safetensors", "Characters/Scarlett Johansson/Scarlett4.safetensors", "Characters/Widowmaker/SDXL_ow1 Windowmaker.safetensors", "Characters/Widowmaker/WidowmakerPonyLoRA.safetensors", "Characters/Widowmaker/Widowmaker_cgi.safetensors", "Characters/princess_xl_v2.safetensors", "Characters/princess_zelda.safetensors", "Citron Pony Styles/80s_Pop_PDXL.safetensors", "Citron Pony Styles/Alola_Style_PDXL.safetensors", "Citron Pony Styles/BoldToon.safetensors", "Citron Pony Styles/CandyCuteStylePDXL.safetensors", "Citron Pony Styles/CatalystStylePDXL.safetensors", "Citron Pony Styles/Citron3D_PDXL.safetensors", "Citron Pony Styles/CitronAnimeTreasure-07.safetensors", "Citron Pony Styles/EnergyCAT.safetensors", "Citron Pony Styles/FlatAnimeP1.safetensors", "Citron Pony Styles/LunarCAT_Style.safetensors", "Citron Pony Styles/RealisticAnime.safetensors", "Citron Pony Styles/Smooth.safetensors", "Citron Pony Styles/Vivid.safetensors", "Expressive_H-000001.safetensors", "Hand v2.safetensors", "LogoRedmondV2-Logo-LogoRedmAF.safetensors", "NSFW/2025/cheekbulge.safetensors", "NSFW/2025/closedmouthfullofcum.safetensors", "NSFW/2025/doublepenetration_r1.safetensors", "NSFW/2025/xray (1).safetensors", "NSFW/Acts/LapBlowLyingV1.safetensors", "NSFW/Acts/Long tongue fellatio.safetensors", "NSFW/Acts/Proper_Grinding.safetensors", "NSFW/Acts/Vacuum felaltio-000009.safetensors", "NSFW/Acts/assworship.safetensors", "NSFW/Acts/boobsuck.safetensors", "NSFW/Acts/breasts_squeezed_together_v02.safetensors", "NSFW/Acts/chikan_v31.safetensors", "NSFW/Acts/concept_sideboobpeek_ponyXL.safetensors", "NSFW/Acts/covering privates_XL_V10.safetensors", "NSFW/Acts/facesit_pov_pdxl_goofy.safetensors", "NSFW/Acts/grinding_pony_V10.safetensors", "NSFW/Acts/hand_milking_pdxl_goofy.safetensors", "NSFW/Acts/mating_press_v02-pony.safetensors", "NSFW/Acts/pantjob.safetensors", "NSFW/Acts/undressing_another_v05.safetensors", "NSFW/All the way through tentacles.safetensors", "NSFW/Deep_Throat_JAV_MIAA572_PONY_V1.safetensors", "NSFW/FComic_1to1000_Pony_V1.safetensors", "NSFW/FComic_HardCore_Pony_V1.safetensors", "NSFW/Poses/Double anal back-000006.safetensors", "NSFW/Poses/Double penetration suspended LORA-000009.safetensors", "NSFW/Poses/Missionary DP 2-000008.safetensors", "NSFW/Poses/Piledrive pov-000008.safetensors", "NSFW/Poses/Pressed_Missionary_Feet_On_Chest.safetensors", "NSFW/Poses/Pretzel.safetensors", "NSFW/Poses/Reverse spitroast.safetensors", "NSFW/Poses/chokesex.safetensors", "NSFW/Poses/dp_from_behind_v01b.safetensors", "NSFW/Poses/leg_up_side_matsubamuzushi_pony_V10.safetensors", "NSFW/Poses/suspended_congress_kiben_pony_V10.safetensors", "NSFW/Poses/suspensionPony.safetensors", "NSFW/Poses/top-down_doggystyle_v02-pony.safetensors", "NSFW/Poses/wheel_barrow_oshiguruma_pony_V10.safetensors", "NSFW/Rough_Sex_Any_position.safetensors", "NSFW/Saya-spread pussy(fingers).safetensors", "NSFW/X-ray anal 3.safetensors", "NSFW/closeprone.safetensors", "NSFW/cumontongue.safetensors", "NSFW/helpbj.safetensors", "NSFW/micro_bra_pdxl_goofy.safetensors", "NSFW/mouthful.safetensors", "NSFW/projectile_cum_v02.safetensors", "NSFW/pussy_sandwich_v02-pony.safetensors", "NSFW/restroom_v02a.safetensors", "NSFW/spp_spreadpussy-W-V1.safetensors", "Vixon's Pony Styles/Sh4rd4n1cXLP.safetensors", "Vixon's Pony Styles/ch33s3XLP.safetensors", "Vixon's Pony Styles/itsyelizXLP.safetensors", "Vixon's Pony Styles/lalangheejXLP.safetensors", "Vixon's Pony Styles/nikkileeismeXLP.safetensors", "Vixon's Pony Styles/tomidoronXLP.safetensors", "WowifierXL-V2.safetensors", "detailed_notrigger.safetensors", "detailxl.safetensors" ] ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ], "strength_clip": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ] }, "optional": { "prev_hooks": ["HOOKS"] } }, "input_order": { "required": ["lora_name", "strength_model", "strength_clip"], "optional": ["prev_hooks"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CreateHookLora", "display_name": "Create Hook LoRA", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/create", "output_node": false, "experimental": true }, "CreateHookLoraModelOnly": { "input": { "required": { "lora_name": [ [ "Characters/Cortana/Cortana(revAnimated).safetensors", "Characters/Cortana/Cortana.safetensors", "Characters/Cortana/Cortana_XL.safetensors", "Characters/Cortana/cortana_xl_v3.safetensors", "Characters/D.va/DVaOWXL - by KillerUwU13_AI.safetensors", "Characters/D.va/DVaPony.safetensors", "Characters/Lara Croft/ClassicLara.safetensors", "Characters/Lara Croft/LaraCroft_character-20.safetensors", "Characters/Lara Croft/lara_croft_xl_v2.safetensors", "Characters/Peni Parker/32dim-MR_PeniParker-PONY.safetensors", "Characters/Peni Parker/PeniParkerRivals-10.safetensors", "Characters/Peni Parker/Peni_Parker-000007.safetensors", "Characters/Peni Parker/Peni_parker_marvel_rivels.safetensors", "Characters/Samus Aran/Samus AranPonyLora.safetensors", "Characters/Samus Aran/samus aran.safetensors", "Characters/Samus Aran/samus-09.safetensors", "Characters/Scarlett Johansson/Scarlett-v20.safetensors", "Characters/Scarlett Johansson/Scarlett4.safetensors", "Characters/Widowmaker/SDXL_ow1 Windowmaker.safetensors", "Characters/Widowmaker/WidowmakerPonyLoRA.safetensors", "Characters/Widowmaker/Widowmaker_cgi.safetensors", "Characters/princess_xl_v2.safetensors", "Characters/princess_zelda.safetensors", "Citron Pony Styles/80s_Pop_PDXL.safetensors", "Citron Pony Styles/Alola_Style_PDXL.safetensors", "Citron Pony Styles/BoldToon.safetensors", "Citron Pony Styles/CandyCuteStylePDXL.safetensors", "Citron Pony Styles/CatalystStylePDXL.safetensors", "Citron Pony Styles/Citron3D_PDXL.safetensors", "Citron Pony Styles/CitronAnimeTreasure-07.safetensors", "Citron Pony Styles/EnergyCAT.safetensors", "Citron Pony Styles/FlatAnimeP1.safetensors", "Citron Pony Styles/LunarCAT_Style.safetensors", "Citron Pony Styles/RealisticAnime.safetensors", "Citron Pony Styles/Smooth.safetensors", "Citron Pony Styles/Vivid.safetensors", "Expressive_H-000001.safetensors", "Hand v2.safetensors", "LogoRedmondV2-Logo-LogoRedmAF.safetensors", "NSFW/2025/cheekbulge.safetensors", "NSFW/2025/closedmouthfullofcum.safetensors", "NSFW/2025/doublepenetration_r1.safetensors", "NSFW/2025/xray (1).safetensors", "NSFW/Acts/LapBlowLyingV1.safetensors", "NSFW/Acts/Long tongue fellatio.safetensors", "NSFW/Acts/Proper_Grinding.safetensors", "NSFW/Acts/Vacuum felaltio-000009.safetensors", "NSFW/Acts/assworship.safetensors", "NSFW/Acts/boobsuck.safetensors", "NSFW/Acts/breasts_squeezed_together_v02.safetensors", "NSFW/Acts/chikan_v31.safetensors", "NSFW/Acts/concept_sideboobpeek_ponyXL.safetensors", "NSFW/Acts/covering privates_XL_V10.safetensors", "NSFW/Acts/facesit_pov_pdxl_goofy.safetensors", "NSFW/Acts/grinding_pony_V10.safetensors", "NSFW/Acts/hand_milking_pdxl_goofy.safetensors", "NSFW/Acts/mating_press_v02-pony.safetensors", "NSFW/Acts/pantjob.safetensors", "NSFW/Acts/undressing_another_v05.safetensors", "NSFW/All the way through tentacles.safetensors", "NSFW/Deep_Throat_JAV_MIAA572_PONY_V1.safetensors", "NSFW/FComic_1to1000_Pony_V1.safetensors", "NSFW/FComic_HardCore_Pony_V1.safetensors", "NSFW/Poses/Double anal back-000006.safetensors", "NSFW/Poses/Double penetration suspended LORA-000009.safetensors", "NSFW/Poses/Missionary DP 2-000008.safetensors", "NSFW/Poses/Piledrive pov-000008.safetensors", "NSFW/Poses/Pressed_Missionary_Feet_On_Chest.safetensors", "NSFW/Poses/Pretzel.safetensors", "NSFW/Poses/Reverse spitroast.safetensors", "NSFW/Poses/chokesex.safetensors", "NSFW/Poses/dp_from_behind_v01b.safetensors", "NSFW/Poses/leg_up_side_matsubamuzushi_pony_V10.safetensors", "NSFW/Poses/suspended_congress_kiben_pony_V10.safetensors", "NSFW/Poses/suspensionPony.safetensors", "NSFW/Poses/top-down_doggystyle_v02-pony.safetensors", "NSFW/Poses/wheel_barrow_oshiguruma_pony_V10.safetensors", "NSFW/Rough_Sex_Any_position.safetensors", "NSFW/Saya-spread pussy(fingers).safetensors", "NSFW/X-ray anal 3.safetensors", "NSFW/closeprone.safetensors", "NSFW/cumontongue.safetensors", "NSFW/helpbj.safetensors", "NSFW/micro_bra_pdxl_goofy.safetensors", "NSFW/mouthful.safetensors", "NSFW/projectile_cum_v02.safetensors", "NSFW/pussy_sandwich_v02-pony.safetensors", "NSFW/restroom_v02a.safetensors", "NSFW/spp_spreadpussy-W-V1.safetensors", "Vixon's Pony Styles/Sh4rd4n1cXLP.safetensors", "Vixon's Pony Styles/ch33s3XLP.safetensors", "Vixon's Pony Styles/itsyelizXLP.safetensors", "Vixon's Pony Styles/lalangheejXLP.safetensors", "Vixon's Pony Styles/nikkileeismeXLP.safetensors", "Vixon's Pony Styles/tomidoronXLP.safetensors", "WowifierXL-V2.safetensors", "detailed_notrigger.safetensors", "detailxl.safetensors" ] ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ] }, "optional": { "prev_hooks": ["HOOKS"] } }, "input_order": { "required": ["lora_name", "strength_model"], "optional": ["prev_hooks"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CreateHookLoraModelOnly", "display_name": "Create Hook LoRA (MO)", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/create", "output_node": false, "experimental": true }, "CreateHookModelAsLora": { "input": { "required": { "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ] ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ], "strength_clip": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ] }, "optional": { "prev_hooks": ["HOOKS"] } }, "input_order": { "required": ["ckpt_name", "strength_model", "strength_clip"], "optional": ["prev_hooks"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CreateHookModelAsLora", "display_name": "Create Hook Model as LoRA", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/create", "output_node": false, "experimental": true }, "CreateHookModelAsLoraModelOnly": { "input": { "required": { "ckpt_name": [ [ "Anime/autismmixSDXL_autismmixConfetti.safetensors", "Anime/autismmixSDXL_autismmixPony.safetensors", "Anime/ponyDiffusionV6XL_v6StartWithThisOne.safetensors", "Anime/prefectPonyXL_v50.safetensors", "Anime/waiANINSFWPONYXL_v11.safetensors", "Anime/waiANINSFWPONYXL_v130.safetensors", "Anime/waiNSFWIllustrious_v70.safetensors", "Babes/babesBYSTABLEYOGI_xlV2.safetensors", "Babes/babesByStableYogi_ponyV3VAE.safetensors", "FLUX/flux1-dev-fp8.safetensors", "RDXL/rdxlAnime_sdxlPony8.safetensors", "RDXL/rdxlPixelArt_pony2.safetensors", "RDXL/realDream_sdxlPony12.safetensors", "Realism/cyberrealisticPony_v70a.safetensors", "Realism/cyberrealisticPony_v8.safetensors", "Realism/realvisxlV50_v50Bakedvae.safetensors", "SD3.5/sd3.5_large_fp16.safetensors", "SD3.5/sd3.5_large_fp8_scaled.safetensors", "Semi-realism/bemypony_Semirealanime.safetensors", "Semi-realism/duchaitenPonyXLNo_v60.safetensors", "prefectPonyXL_v3.safetensors", "sd-v1-5-inpainting.ckpt", "v1-5-pruned-emaonly.ckpt" ] ], "strength_model": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ] }, "optional": { "prev_hooks": ["HOOKS"] } }, "input_order": { "required": ["ckpt_name", "strength_model"], "optional": ["prev_hooks"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CreateHookModelAsLoraModelOnly", "display_name": "Create Hook Model as LoRA (MO)", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/create", "output_node": false, "experimental": true }, "SetHookKeyframes": { "input": { "required": { "hooks": ["HOOKS"] }, "optional": { "hook_kf": ["HOOK_KEYFRAMES"] } }, "input_order": { "required": ["hooks"], "optional": ["hook_kf"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "SetHookKeyframes", "display_name": "Set Hook Keyframes", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/scheduling", "output_node": false, "experimental": true }, "CreateHookKeyframe": { "input": { "required": { "strength_mult": [ "FLOAT", { "default": 1.0, "min": -20.0, "max": 20.0, "step": 0.01 } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] }, "optional": { "prev_hook_kf": ["HOOK_KEYFRAMES"] } }, "input_order": { "required": ["strength_mult", "start_percent"], "optional": ["prev_hook_kf"] }, "output": ["HOOK_KEYFRAMES"], "output_is_list": [false], "output_name": ["HOOK_KF"], "name": "CreateHookKeyframe", "display_name": "Create Hook Keyframe", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/scheduling", "output_node": false, "experimental": true }, "CreateHookKeyframesInterpolated": { "input": { "required": { "strength_start": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.001 } ], "strength_end": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.001 } ], "interpolation": [["linear", "ease_in", "ease_out", "ease_in_out"]], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "keyframes_count": [ "INT", { "default": 5, "min": 2, "max": 100, "step": 1 } ], "print_keyframes": ["BOOLEAN", { "default": false }] }, "optional": { "prev_hook_kf": ["HOOK_KEYFRAMES"] } }, "input_order": { "required": [ "strength_start", "strength_end", "interpolation", "start_percent", "end_percent", "keyframes_count", "print_keyframes" ], "optional": ["prev_hook_kf"] }, "output": ["HOOK_KEYFRAMES"], "output_is_list": [false], "output_name": ["HOOK_KF"], "name": "CreateHookKeyframesInterpolated", "display_name": "Create Hook Keyframes Interp.", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/scheduling", "output_node": false, "experimental": true }, "CreateHookKeyframesFromFloats": { "input": { "required": { "floats_strength": [ "FLOATS", { "default": -1, "min": -1, "step": 0.001, "forceInput": true } ], "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "print_keyframes": ["BOOLEAN", { "default": false }] }, "optional": { "prev_hook_kf": ["HOOK_KEYFRAMES"] } }, "input_order": { "required": [ "floats_strength", "start_percent", "end_percent", "print_keyframes" ], "optional": ["prev_hook_kf"] }, "output": ["HOOK_KEYFRAMES"], "output_is_list": [false], "output_name": ["HOOK_KF"], "name": "CreateHookKeyframesFromFloats", "display_name": "Create Hook Keyframes From Floats", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/scheduling", "output_node": false, "experimental": true }, "CombineHooks2": { "input": { "required": {}, "optional": { "hooks_A": ["HOOKS"], "hooks_B": ["HOOKS"] } }, "input_order": { "required": [], "optional": ["hooks_A", "hooks_B"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CombineHooks2", "display_name": "Combine Hooks [2]", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/combine", "output_node": false, "experimental": true }, "CombineHooks4": { "input": { "required": {}, "optional": { "hooks_A": ["HOOKS"], "hooks_B": ["HOOKS"], "hooks_C": ["HOOKS"], "hooks_D": ["HOOKS"] } }, "input_order": { "required": [], "optional": ["hooks_A", "hooks_B", "hooks_C", "hooks_D"] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CombineHooks4", "display_name": "Combine Hooks [4]", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/combine", "output_node": false, "experimental": true }, "CombineHooks8": { "input": { "required": {}, "optional": { "hooks_A": ["HOOKS"], "hooks_B": ["HOOKS"], "hooks_C": ["HOOKS"], "hooks_D": ["HOOKS"], "hooks_E": ["HOOKS"], "hooks_F": ["HOOKS"], "hooks_G": ["HOOKS"], "hooks_H": ["HOOKS"] } }, "input_order": { "required": [], "optional": [ "hooks_A", "hooks_B", "hooks_C", "hooks_D", "hooks_E", "hooks_F", "hooks_G", "hooks_H" ] }, "output": ["HOOKS"], "output_is_list": [false], "output_name": ["HOOKS"], "name": "CombineHooks8", "display_name": "Combine Hooks [8]", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/combine", "output_node": false, "experimental": true }, "ConditioningSetProperties": { "input": { "required": { "cond_NEW": ["CONDITIONING"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "set_cond_area": [["default", "mask bounds"]] }, "optional": { "mask": ["MASK"], "hooks": ["HOOKS"], "timesteps": ["TIMESTEPS_RANGE"] } }, "input_order": { "required": ["cond_NEW", "strength", "set_cond_area"], "optional": ["mask", "hooks", "timesteps"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetProperties", "display_name": "Cond Set Props", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond single", "output_node": false, "experimental": true }, "ConditioningSetPropertiesAndCombine": { "input": { "required": { "cond": ["CONDITIONING"], "cond_NEW": ["CONDITIONING"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "set_cond_area": [["default", "mask bounds"]] }, "optional": { "mask": ["MASK"], "hooks": ["HOOKS"], "timesteps": ["TIMESTEPS_RANGE"] } }, "input_order": { "required": ["cond", "cond_NEW", "strength", "set_cond_area"], "optional": ["mask", "hooks", "timesteps"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetPropertiesAndCombine", "display_name": "Cond Set Props Combine", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond single", "output_node": false, "experimental": true }, "PairConditioningSetProperties": { "input": { "required": { "positive_NEW": ["CONDITIONING"], "negative_NEW": ["CONDITIONING"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "set_cond_area": [["default", "mask bounds"]] }, "optional": { "mask": ["MASK"], "hooks": ["HOOKS"], "timesteps": ["TIMESTEPS_RANGE"] } }, "input_order": { "required": ["positive_NEW", "negative_NEW", "strength", "set_cond_area"], "optional": ["mask", "hooks", "timesteps"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "PairConditioningSetProperties", "display_name": "Cond Pair Set Props", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond pair", "output_node": false, "experimental": true }, "PairConditioningSetPropertiesAndCombine": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "positive_NEW": ["CONDITIONING"], "negative_NEW": ["CONDITIONING"], "strength": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 10.0, "step": 0.01 } ], "set_cond_area": [["default", "mask bounds"]] }, "optional": { "mask": ["MASK"], "hooks": ["HOOKS"], "timesteps": ["TIMESTEPS_RANGE"] } }, "input_order": { "required": [ "positive", "negative", "positive_NEW", "negative_NEW", "strength", "set_cond_area" ], "optional": ["mask", "hooks", "timesteps"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "PairConditioningSetPropertiesAndCombine", "display_name": "Cond Pair Set Props Combine", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond pair", "output_node": false, "experimental": true }, "ConditioningSetDefaultCombine": { "input": { "required": { "cond": ["CONDITIONING"], "cond_DEFAULT": ["CONDITIONING"] }, "optional": { "hooks": ["HOOKS"] } }, "input_order": { "required": ["cond", "cond_DEFAULT"], "optional": ["hooks"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "ConditioningSetDefaultCombine", "display_name": "Cond Set Default Combine", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond single", "output_node": false, "experimental": true }, "PairConditioningSetDefaultCombine": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "positive_DEFAULT": ["CONDITIONING"], "negative_DEFAULT": ["CONDITIONING"] }, "optional": { "hooks": ["HOOKS"] } }, "input_order": { "required": [ "positive", "negative", "positive_DEFAULT", "negative_DEFAULT" ], "optional": ["hooks"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "PairConditioningSetDefaultCombine", "display_name": "Cond Pair Set Default Combine", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond pair", "output_node": false, "experimental": true }, "PairConditioningCombine": { "input": { "required": { "positive_A": ["CONDITIONING"], "negative_A": ["CONDITIONING"], "positive_B": ["CONDITIONING"], "negative_B": ["CONDITIONING"] } }, "input_order": { "required": ["positive_A", "negative_A", "positive_B", "negative_B"] }, "output": ["CONDITIONING", "CONDITIONING"], "output_is_list": [false, false], "output_name": ["positive", "negative"], "name": "PairConditioningCombine", "display_name": "Cond Pair Combine", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/cond pair", "output_node": false, "experimental": true }, "SetClipHooks": { "input": { "required": { "clip": ["CLIP"], "apply_to_conds": ["BOOLEAN", { "default": true }], "schedule_clip": ["BOOLEAN", { "default": false }] }, "optional": { "hooks": ["HOOKS"] } }, "input_order": { "required": ["clip", "apply_to_conds", "schedule_clip"], "optional": ["hooks"] }, "output": ["CLIP"], "output_is_list": [false], "output_name": ["CLIP"], "name": "SetClipHooks", "display_name": "Set CLIP Hooks", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks/clip", "output_node": false, "experimental": true }, "ConditioningTimestepsRange": { "input": { "required": { "start_percent": [ "FLOAT", { "default": 0.0, "min": 0.0, "max": 1.0, "step": 0.001 } ], "end_percent": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 1.0, "step": 0.001 } ] } }, "input_order": { "required": ["start_percent", "end_percent"] }, "output": ["TIMESTEPS_RANGE", "TIMESTEPS_RANGE", "TIMESTEPS_RANGE"], "output_is_list": [false, false, false], "output_name": ["TIMESTEPS_RANGE", "BEFORE_RANGE", "AFTER_RANGE"], "name": "ConditioningTimestepsRange", "display_name": "Timesteps Range", "description": "", "python_module": "comfy_extras.nodes_hooks", "category": "advanced/hooks", "output_node": false, "experimental": true }, "Load3D": { "input": { "required": { "model_file": [[], { "file_upload": true }], "image": ["LOAD_3D", {}], "width": ["INT", { "default": 1024, "min": 1, "max": 4096, "step": 1 }], "height": ["INT", { "default": 1024, "min": 1, "max": 4096, "step": 1 }] } }, "input_order": { "required": ["model_file", "image", "width", "height"] }, "output": ["IMAGE", "MASK", "STRING"], "output_is_list": [false, false, false], "output_name": ["image", "mask", "mesh_path"], "name": "Load3D", "display_name": "Load 3D", "description": "", "python_module": "comfy_extras.nodes_load_3d", "category": "3d", "output_node": false, "experimental": true }, "Load3DAnimation": { "input": { "required": { "model_file": [[], { "file_upload": true }], "image": ["LOAD_3D_ANIMATION", {}], "width": ["INT", { "default": 1024, "min": 1, "max": 4096, "step": 1 }], "height": ["INT", { "default": 1024, "min": 1, "max": 4096, "step": 1 }] } }, "input_order": { "required": ["model_file", "image", "width", "height"] }, "output": ["IMAGE", "MASK", "STRING"], "output_is_list": [false, false, false], "output_name": ["image", "mask", "mesh_path"], "name": "Load3DAnimation", "display_name": "Load 3D - Animation", "description": "", "python_module": "comfy_extras.nodes_load_3d", "category": "3d", "output_node": false, "experimental": true }, "Preview3D": { "input": { "required": { "model_file": ["STRING", { "default": "", "multiline": false }] } }, "input_order": { "required": ["model_file"] }, "output": [], "output_is_list": [], "output_name": [], "name": "Preview3D", "display_name": "Preview 3D", "description": "", "python_module": "comfy_extras.nodes_load_3d", "category": "3d", "output_node": true, "experimental": true }, "Preview3DAnimation": { "input": { "required": { "model_file": ["STRING", { "default": "", "multiline": false }] } }, "input_order": { "required": ["model_file"] }, "output": [], "output_is_list": [], "output_name": [], "name": "Preview3DAnimation", "display_name": "Preview 3D - Animation", "description": "", "python_module": "comfy_extras.nodes_load_3d", "category": "3d", "output_node": true, "experimental": true }, "EmptyCosmosLatentVideo": { "input": { "required": { "width": [ "INT", { "default": 1280, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 704, "min": 16, "max": 16384, "step": 16 } ], "length": [ "INT", { "default": 121, "min": 1, "max": 16384, "step": 8 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] } }, "input_order": { "required": ["width", "height", "length", "batch_size"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "EmptyCosmosLatentVideo", "display_name": "EmptyCosmosLatentVideo", "description": "", "python_module": "comfy_extras.nodes_cosmos", "category": "latent/video", "output_node": false }, "CosmosImageToVideoLatent": { "input": { "required": { "vae": ["VAE"], "width": [ "INT", { "default": 1280, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 704, "min": 16, "max": 16384, "step": 16 } ], "length": [ "INT", { "default": 121, "min": 1, "max": 16384, "step": 8 } ], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] }, "optional": { "start_image": ["IMAGE"], "end_image": ["IMAGE"] } }, "input_order": { "required": ["vae", "width", "height", "length", "batch_size"], "optional": ["start_image", "end_image"] }, "output": ["LATENT"], "output_is_list": [false], "output_name": ["LATENT"], "name": "CosmosImageToVideoLatent", "display_name": "CosmosImageToVideoLatent", "description": "", "python_module": "comfy_extras.nodes_cosmos", "category": "conditioning/inpaint", "output_node": false }, "SaveWEBM": { "input": { "required": { "images": ["IMAGE"], "filename_prefix": ["STRING", { "default": "ComfyUI" }], "codec": [["vp9", "av1"]], "fps": [ "FLOAT", { "default": 24.0, "min": 0.01, "max": 1000.0, "step": 0.01 } ], "crf": [ "FLOAT", { "default": 32.0, "min": 0, "max": 63.0, "step": 1, "tooltip": "Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize." } ] }, "hidden": { "prompt": "PROMPT", "extra_pnginfo": "EXTRA_PNGINFO" } }, "input_order": { "required": ["images", "filename_prefix", "codec", "fps", "crf"], "hidden": ["prompt", "extra_pnginfo"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveWEBM", "display_name": "SaveWEBM", "description": "", "python_module": "comfy_extras.nodes_video", "category": "image/video", "output_node": true, "experimental": true }, "CLIPTextEncodeLumina2": { "input": { "required": { "system_prompt": [ ["superior", "alignment"], { "tooltip": "Lumina2 provide two types of system prompts:Superior: You are an assistant designed to generate superior images with the superior degree of image-text alignment based on textual prompts or user prompts. Alignment: You are an assistant designed to generate high-quality images with the highest degree of image-text alignment based on textual prompts." } ], "user_prompt": [ "STRING", { "multiline": true, "dynamicPrompts": true, "tooltip": "The text to be encoded." } ], "clip": [ "CLIP", { "tooltip": "The CLIP model used for encoding the text." } ] } }, "input_order": { "required": ["system_prompt", "user_prompt", "clip"] }, "output": ["CONDITIONING"], "output_is_list": [false], "output_name": ["CONDITIONING"], "name": "CLIPTextEncodeLumina2", "display_name": "CLIP Text Encode for Lumina2", "description": "Encodes a system prompt and a user prompt using a CLIP model into an embedding that can be used to guide the diffusion model towards generating specific images.", "python_module": "comfy_extras.nodes_lumina2", "category": "conditioning", "output_node": false, "output_tooltips": [ "A conditioning containing the embedded text used to guide the diffusion model." ] }, "RenormCFG": { "input": { "required": { "model": ["MODEL"], "cfg_trunc": [ "FLOAT", { "default": 100, "min": 0.0, "max": 100.0, "step": 0.01 } ], "renorm_cfg": [ "FLOAT", { "default": 1.0, "min": 0.0, "max": 100.0, "step": 0.01 } ] } }, "input_order": { "required": ["model", "cfg_trunc", "renorm_cfg"] }, "output": ["MODEL"], "output_is_list": [false], "output_name": ["MODEL"], "name": "RenormCFG", "display_name": "RenormCFG", "description": "", "python_module": "comfy_extras.nodes_lumina2", "category": "advanced/model", "output_node": false }, "WanImageToVideo": { "input": { "required": { "positive": ["CONDITIONING"], "negative": ["CONDITIONING"], "vae": ["VAE"], "width": [ "INT", { "default": 832, "min": 16, "max": 16384, "step": 16 } ], "height": [ "INT", { "default": 480, "min": 16, "max": 16384, "step": 16 } ], "length": ["INT", { "default": 81, "min": 1, "max": 16384, "step": 4 }], "batch_size": ["INT", { "default": 1, "min": 1, "max": 4096 }] }, "optional": { "clip_vision_output": ["CLIP_VISION_OUTPUT"], "start_image": ["IMAGE"] } }, "input_order": { "required": [ "positive", "negative", "vae", "width", "height", "length", "batch_size" ], "optional": ["clip_vision_output", "start_image"] }, "output": ["CONDITIONING", "CONDITIONING", "LATENT"], "output_is_list": [false, false, false], "output_name": ["positive", "negative", "latent"], "name": "WanImageToVideo", "display_name": "WanImageToVideo", "description": "", "python_module": "comfy_extras.nodes_wan", "category": "conditioning/video_models", "output_node": false }, "SaveImageWebsocket": { "input": { "required": { "images": ["IMAGE"] } }, "input_order": { "required": ["images"] }, "output": [], "output_is_list": [], "output_name": [], "name": "SaveImageWebsocket", "display_name": "SaveImageWebsocket", "description": "", "python_module": "custom_nodes.websocket_image_save", "category": "api/image", "output_node": true } }