diff --git a/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/cache_key b/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/cache_key new file mode 100644 index 000000000..536aab1c7 --- /dev/null +++ b/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/cache_key @@ -0,0 +1 @@ +f03e4c88e21504c3 \ No newline at end of file diff --git a/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/node_info.json b/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/node_info.json new file mode 100644 index 000000000..165e01b9e --- /dev/null +++ b/.pyisolate_venvs/ComfyUI-DepthAnythingV2/cache/node_info.json @@ -0,0 +1,81 @@ +{ + "DepthAnything_V2": { + "input_types": { + "required": { + "da_model": { + "__pyisolate_tuple__": [ + "DAMODEL" + ] + }, + "images": { + "__pyisolate_tuple__": [ + "IMAGE" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "image" + ], + "function": "process", + "category": "DepthAnythingV2", + "output_node": false, + "output_is_list": null, + "is_v3": false, + "display_name": "Depth Anything V2" + }, + "DownloadAndLoadDepthAnythingV2Model": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + [ + "depth_anything_v2_vits_fp16.safetensors", + "depth_anything_v2_vits_fp32.safetensors", + "depth_anything_v2_vitb_fp16.safetensors", + "depth_anything_v2_vitb_fp32.safetensors", + "depth_anything_v2_vitl_fp16.safetensors", + "depth_anything_v2_vitl_fp32.safetensors", + "depth_anything_v2_vitg_fp32.safetensors", + "depth_anything_v2_metric_hypersim_vitl_fp32.safetensors", + "depth_anything_v2_metric_vkitti_vitl_fp32.safetensors" + ], + { + "default": "depth_anything_v2_vitl_fp32.safetensors" + } + ] + } + }, + "optional": { + "precision": { + "__pyisolate_tuple__": [ + [ + "auto", + "bf16", + "fp16", + "fp32" + ], + { + "default": "auto" + } + ] + } + } + }, + "return_types": [ + "DAMODEL" + ], + "return_names": [ + "da_v2_model" + ], + "function": "loadmodel", + "category": "DepthAnythingV2", + "output_node": false, + "output_is_list": null, + "is_v3": false, + "display_name": "DownloadAndLoadDepthAnythingV2Model" + } +} \ No newline at end of file diff --git a/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/cache_key b/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/cache_key new file mode 100644 index 000000000..fa191d27e --- /dev/null +++ b/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/cache_key @@ -0,0 +1 @@ +4b90e6876f4c0b8c \ No newline at end of file diff --git a/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/node_info.json b/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/node_info.json new file mode 100644 index 000000000..15f4ebe11 --- /dev/null +++ b/.pyisolate_venvs/ComfyUI-IsolationToolkit/cache/node_info.json @@ -0,0 +1,93028 @@ +{ + "TextEncodeAceStepAudio_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "tags": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "lyrics": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "lyrics_strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "tags": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "lyrics": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "lyrics_strength": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "tags", + "lyrics", + "lyrics_strength" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TextEncodeAceStepAudio_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "tags": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "lyrics": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "lyrics_strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TextEncodeAceStepAudio_ISO", + "display_name": null, + "description": "", + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TextEncodeAceStepAudio_ISO" + }, + "EmptyAceStepLatentAudio_ISO": { + "input_types": { + "required": { + "seconds": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 120.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/audio", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "seconds": [ + "FLOAT", + { + "default": 120.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ], + "batch_size": [ + "INT", + { + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "seconds", + "batch_size" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyAceStepLatentAudio_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/audio", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "seconds": [ + "FLOAT", + { + "optional": false, + "default": 120.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyAceStepLatentAudio_ISO", + "display_name": null, + "description": "", + "category": "latent/audio", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyAceStepLatentAudio_ISO" + }, + "SamplerLCMUpscale_ISO": { + "input_types": { + "required": { + "scale_ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.1, + "max": 20.0, + "step": 0.01 + } + ] + }, + "scale_steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": -1, + "min": -1, + "max": 1000, + "step": 1 + } + ] + }, + "upscale_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bislerp", + "nearest-exact", + "bilinear", + "area", + "bicubic" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bislerp", + "nearest-exact", + "bilinear", + "area", + "bicubic" + ] + } + ] + } + }, + "input_order": { + "required": [ + "scale_ratio", + "scale_steps", + "upscale_method" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerLCMUpscale_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "scale_ratio": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.1, + "max": 20.0, + "step": 0.01 + } + ], + "scale_steps": [ + "INT", + { + "optional": false, + "default": -1, + "min": -1, + "max": 1000, + "step": 1 + } + ], + "upscale_method": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "bislerp", + "nearest-exact", + "bilinear", + "area", + "bicubic" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerLCMUpscale_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerLCMUpscale_ISO" + }, + "SamplerEulerCFGpp_ISO": { + "input_types": { + "required": { + "version": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "regular", + "alternative" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "version": [ + "COMBO", + { + "multiselect": false, + "options": [ + "regular", + "alternative" + ] + } + ] + } + }, + "input_order": { + "required": [ + "version" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerEulerCFGpp_ISO", + "display_name": "SamplerEulerCFG++_ISO", + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "version": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "regular", + "alternative" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerEulerCFGpp_ISO", + "display_name": "SamplerEulerCFG++_ISO", + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerEulerCFG++_ISO" + }, + "AlignYourStepsScheduler_ISO": { + "input_types": { + "required": { + "model_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "SD1", + "SDXL", + "SVD" + ] + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 10, + "min": 1, + "max": 10000 + } + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "AlignYourStepsScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "SD1", + "SDXL", + "SVD" + ] + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 10, + "min": 1, + "max": 10000 + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "AlignYourStepsScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "AlignYourStepsScheduler_ISO" + }, + "APG_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls the scale of the parallel guidance vector. Default CFG behavior at a setting of 1.", + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "norm_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Normalize guidance vector to this value, normalization disable at a setting of 0.", + "default": 5.0, + "min": 0.0, + "max": 50.0, + "step": 0.1 + } + ] + }, + "momentum": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls a running average of guidance during diffusion, disabled at a setting of 0.", + "default": 0.0, + "min": -5.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "eta": [ + "FLOAT", + { + "tooltip": "Controls the scale of the parallel guidance vector. Default CFG behavior at a setting of 1.", + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ], + "norm_threshold": [ + "FLOAT", + { + "tooltip": "Normalize guidance vector to this value, normalization disable at a setting of 0.", + "default": 5.0, + "min": 0.0, + "max": 50.0, + "step": 0.1 + } + ], + "momentum": [ + "FLOAT", + { + "tooltip": "Controls a running average of guidance during diffusion, disabled at a setting of 0.", + "default": 0.0, + "min": -5.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "eta", + "norm_threshold", + "momentum" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "APG_ISO", + "display_name": "Adaptive Projected Guidance_ISO", + "description": "", + "python_module": null, + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "eta": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls the scale of the parallel guidance vector. Default CFG behavior at a setting of 1.", + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ], + "norm_threshold": [ + "FLOAT", + { + "optional": false, + "tooltip": "Normalize guidance vector to this value, normalization disable at a setting of 0.", + "default": 5.0, + "min": 0.0, + "max": 50.0, + "step": 0.1 + } + ], + "momentum": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls a running average of guidance during diffusion, disabled at a setting of 0.", + "default": 0.0, + "min": -5.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "APG_ISO", + "display_name": "Adaptive Projected Guidance_ISO", + "description": "", + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Adaptive Projected Guidance_ISO" + }, + "UNetSelfAttentionMultiply_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "q": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "k": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "v": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "out": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/attention_experiments", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "UNetSelfAttentionMultiply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "q": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "k": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "v": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "out": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "UNetSelfAttentionMultiply_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "UNetSelfAttentionMultiply_ISO" + }, + "UNetCrossAttentionMultiply_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "q": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "k": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "v": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "out": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/attention_experiments", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "UNetCrossAttentionMultiply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "q": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "k": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "v": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "out": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "UNetCrossAttentionMultiply_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "UNetCrossAttentionMultiply_ISO" + }, + "CLIPAttentionMultiply_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "q": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "k": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "v": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "out": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "CLIP" + ], + "return_names": [ + "CLIP" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/attention_experiments", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CLIP" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CLIP" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPAttentionMultiply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "q": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "k": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "v": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "out": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CLIP_": [ + "CLIP", + { + "display_name": "_0_CLIP_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPAttentionMultiply_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPAttentionMultiply_ISO" + }, + "UNetTemporalAttentionMultiply_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "self_structural": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "self_temporal": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "cross_structural": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "cross_temporal": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/attention_experiments", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "UNetTemporalAttentionMultiply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "self_structural": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "self_temporal": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "cross_structural": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "cross_temporal": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "UNetTemporalAttentionMultiply_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/attention_experiments", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "UNetTemporalAttentionMultiply_ISO" + }, + "CheckpointLoaderSimple_ISO": { + "input_types": { + "required": { + "ckpt_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The name of the checkpoint (model) to load.", + "multiselect": false, + "options": [ + "Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors", + "ltx-2-19b-dev-fp8.safetensors", + "ltx-video-2b-v0.9.5.safetensors", + "master_proSDXLV8.safetensors", + "master_v7FP16VAE.safetensors", + "perfectdeliberate_v5SD15.safetensors", + "sd1.5-real-dream-16.safetensors", + "sd3.5_medium.safetensors" + ] + } + ] + } + } + }, + "return_types": [ + "MODEL", + "CLIP", + "VAE" + ], + "return_names": [ + "MODEL", + "CLIP", + "VAE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "ckpt_name": [ + "COMBO", + { + "tooltip": "The name of the checkpoint (model) to load.", + "multiselect": false, + "options": [ + "Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors", + "ltx-2-19b-dev-fp8.safetensors", + "ltx-video-2b-v0.9.5.safetensors", + "master_proSDXLV8.safetensors", + "master_v7FP16VAE.safetensors", + "perfectdeliberate_v5SD15.safetensors", + "sd1.5-real-dream-16.safetensors", + "sd3.5_medium.safetensors" + ] + } + ] + } + }, + "input_order": { + "required": [ + "ckpt_name" + ] + }, + "is_input_list": false, + "output": [ + "MODEL", + "CLIP", + "VAE" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "MODEL", + "CLIP", + "VAE" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "CheckpointLoaderSimple_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "ckpt_name": [ + "COMBO", + { + "optional": false, + "tooltip": "The name of the checkpoint (model) to load.", + "multiselect": false, + "options": [ + "Juggernaut-XL_v9_RunDiffusionPhoto_v2.safetensors", + "ltx-2-19b-dev-fp8.safetensors", + "ltx-video-2b-v0.9.5.safetensors", + "master_proSDXLV8.safetensors", + "master_v7FP16VAE.safetensors", + "perfectdeliberate_v5SD15.safetensors", + "sd1.5-real-dream-16.safetensors", + "sd3.5_medium.safetensors" + ] + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ], + "_1_CLIP_": [ + "CLIP", + { + "display_name": "_1_CLIP_", + "is_output_list": false + } + ], + "_2_VAE_": [ + "VAE", + { + "display_name": "_2_VAE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CheckpointLoaderSimple_ISO", + "display_name": null, + "description": "", + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CheckpointLoaderSimple_ISO" + }, + "EmptyLatentImage_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "width": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "width", + "height", + "batch_size" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyLatentImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyLatentImage_ISO", + "display_name": null, + "description": "", + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyLatentImage_ISO" + }, + "LoadImage_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "00022-3350354478.png", + "00032-1684452008.png", + "00600-989540233.png", + "00872-491163527.png", + "00909-1673515826.png", + "00978-4127438296-RAW photo,best quality,high resolution,(masterpiece),(photorealistic_1.4),professional photography,sharp focus,HDR,8K resolution.png", + "011.png", + "013-00013-1162155613.png", + "05112a37d1b947bf92a2aa6b753a81bd_lg.webp", + "10186-565512868.png", + "1_zwNS2-vrv73-IaPaC2ESqA.jpg", + "2024-01-17-074847_870515671999135_vixonsFantasyMix_V10_dpmpp_2m_karras_XTRA_UPSCALED.png", + "2024-01-21_18-58-01_6807 - Copy.png", + "3bbeafd9-df56-4ff9-b0b1-bea3d9dcee3d.PNG", + "40106445.jpeg", + "42758546.jpeg", + "42952743.jpeg", + "42952892.jpeg", + "42966148.jpeg", + "42966325.jpeg", + "42966462.jpeg", + "42966617.jpeg", + "42988264.jpeg", + "42994123.jpeg", + "43002693.jpeg", + "43011152.jpeg", + "43133670.jpeg", + "43161178.jpeg", + "43282694.png", + "43288403.jpeg", + "43361302.png", + "43363130.png", + "43376373.jpeg", + "43381594.png", + "43382314.jpeg", + "43385283.jpeg", + "43400095.png", + "43400972.png", + "43406116.jpeg", + "43406118.jpeg", + "43427442.jpeg", + "43427444.jpeg", + "43451813.jpeg", + "43460131.jpeg", + "43461836.jpeg", + "43468031.jpeg", + "43473201.png", + "43490200.jpeg", + "43498369.png", + "43503252.jpeg", + "43504647.jpeg", + "43510187.jpeg", + "43516374.jpeg", + "43523415.jpeg", + "43530528.png", + "43531437.png", + "43536799.jpeg", + "43763372.png", + "43877497.jpeg", + "43972434.png", + "44021449.jpeg", + "5q8yg753kljedb.webp", + "638318543604981096.png", + "638318543737735809.png", + "68747470733a2f2f68756767696e67666163652e636f2f616c696d616d612d63726561746976652f464c55582e312d6465762d436f6e74726f6c6e65742d496e7061696e74696e672d416c7068612f7265736f6c76652f6d61696e2f696d616765732f636f6d66795f696e5f342e706e67.png", + "831222.jpg", + "957ADC21EA1D90B957B8435EDD4607BB09F712AE1B985CD1B3754A239D04AA44.jpeg", + "9c2f04a9215b1e14a21d1bb131cc2d06.jpg", + "Adam_Jensen.webp", + "BlackTerror2504_(cropped).jpg", + "ChatGPT Image Jun 8, 2025, 05_12_54 PM.png", + "CogVideoX-Tora_00005.png", + "ComfyUI-Florence2 detailed_caption to flux.jpg", + "ComfyUI_00002_ (2).png", + "ComfyUI_00004_ (1).png", + "ComfyUI_00004_.png", + "ComfyUI_00010_.png", + "ComfyUI_00064_.png", + "ComfyUI_00093_.png", + "ComfyUI_00096_.png", + "ComfyUI_00103_.webp", + "ComfyUI_00120_.png", + "ComfyUI_00256_.png", + "ComfyUI_00257_.png", + "ComfyUI_00316_.png", + "ComfyUI_00323_.png", + "ComfyUI_00324_.png", + "ComfyUI_00325_.png", + "ComfyUI_00351_.png", + "ComfyUI_00352_.png", + "ComfyUI_00362_.png", + "ComfyUI_00364_.png", + "ComfyUI_00365_.png", + "ComfyUI_00366_.png", + "ComfyUI_00369_.png", + "ComfyUI_00391_.png", + "ComfyUI_00622_.png", + "ComfyUI_00677_.png", + "ComfyUI_01430_.png", + "ComfyUI_02229_.png", + "ComfyUI_02310_.png", + "ComfyUI_02464_.png", + "ComfyUI_02778_.png", + "ComfyUI_03067_.png", + "ComfyUI_03647_.png", + "ComfyUI_03815_.png", + "ComfyUI_03817_.png", + "ComfyUI_04028_.png", + "ComfyUI_04242_.png", + "ComfyUI_04373_.png", + "ComfyUI_05051_.png", + "ComfyUI_05062_.png", + "ComfyUI_05068_.png", + "ComfyUI_05071_.png", + "ComfyUI_05093_.png", + "ComfyUI_05199_.png", + "ComfyUI_05201_.png", + "ComfyUI_05208_ (1).png", + "ComfyUI_05208_.png", + "ComfyUI_05263_.png", + "ComfyUI_05367_.png", + "ComfyUI_05381_.png", + "ComfyUI_05391_.png", + "ComfyUI_05420_.png", + "ComfyUI_05449_.png", + "ComfyUI_05450_ (1).png", + "ComfyUI_05450_.png", + "ComfyUI_05455_.png", + "ComfyUI_05503_ (1).png", + "ComfyUI_05503_.png", + "ComfyUI_05520_.png", + "ComfyUI_05615_.png", + "ComfyUI_05762_.png", + "ComfyUI_05882_.png", + "ComfyUI_05890_ (1).png", + "ComfyUI_05890_.png", + "ComfyUI_05910_.png", + "ComfyUI_05915_.png", + "ComfyUI_06022_.png", + "ComfyUI_06113_.png", + "ComfyUI_06150_.png", + "ComfyUI_06207_.png", + "ComfyUI_06387_.png", + "ComfyUI_06409_.png", + "ComfyUI_06425_.png", + "ComfyUI_06554_.png", + "ComfyUI_06555_.png", + "ComfyUI_06556_.png", + "ComfyUI_06558_.png", + "ComfyUI_06696_.png", + "ComfyUI_06709_.png", + "ComfyUI_06721_.png", + "ComfyUI_06812_.png", + "ComfyUI_06823_.png", + "ComfyUI_06844_.png", + "ComfyUI_06877_.png", + "ComfyUI_06923_.png", + "ComfyUI_06930_.png", + "ComfyUI_06936_.png", + "ComfyUI_07019_.png", + "ComfyUI_07020_.png", + "ComfyUI_07033_.png", + "ComfyUI_07064_.png", + "ComfyUI_07071_.png", + "ComfyUI_07078_.png", + "ComfyUI_07112_.png", + "ComfyUI_07179_.png", + "ComfyUI_07181_.png", + "ComfyUI_07190_.png", + "ComfyUI_07198_.png", + "ComfyUI_07204_.png", + "ComfyUI_07207_.png", + "ComfyUI_07208_.png", + "ComfyUI_07212_.png", + "ComfyUI_07242_.png", + "ComfyUI_07253_.png", + "ComfyUI_07263_.png", + "ComfyUI_07269_.png", + "ComfyUI_07274_.png", + "ComfyUI_07290_.png", + "ComfyUI_07313_.png", + "ComfyUI_07337_.png", + "ComfyUI_07384_.png", + "ComfyUI_07465_.png", + "ComfyUI_07469_.png", + "ComfyUI_07471_.png", + "ComfyUI_07481_.png", + "ComfyUI_07509_.png", + "ComfyUI_07524_.png", + "ComfyUI_07532_.png", + "ComfyUI_07541_.png", + "ComfyUI_07549_.png", + "ComfyUI_07556_.png", + "ComfyUI_07586_.png", + "ComfyUI_07603_.png", + "ComfyUI_07604_.png", + "ComfyUI_07607_.png", + "ComfyUI_07616_.png", + "ComfyUI_07627_.png", + "ComfyUI_07632_.png", + "ComfyUI_07645_.png", + "ComfyUI_07652_.png", + "ComfyUI_07676_.png", + "ComfyUI_07681_.png", + "ComfyUI_07684_.png", + "ComfyUI_07694_.png", + "ComfyUI_07705_.png", + "ComfyUI_07715_.png", + "ComfyUI_07716_.png", + "ComfyUI_07718_.png", + "ComfyUI_07724_.png", + "ComfyUI_07728_.png", + "ComfyUI_07730_.png", + "ComfyUI_07736_.png", + "ComfyUI_07739_.png", + "ComfyUI_07741_.png", + "ComfyUI_07742_.png", + "ComfyUI_07744_.png", + "ComfyUI_07753_.png", + "ComfyUI_07755_.png", + "ComfyUI_07765_.png", + "ComfyUI_07767_.png", + "ComfyUI_07781_.png", + "ComfyUI_07797_.png", + "ComfyUI_07801_.png", + "ComfyUI_07802_.png", + "ComfyUI_07823_.png", + "ComfyUI_07828_.png", + "ComfyUI_07847_.png", + "ComfyUI_07850_.png", + "ComfyUI_07896_.png", + "ComfyUI_07925_.png", + "ComfyUI_07944_.png", + "ComfyUI_07957_.png", + "ComfyUI_07963_.png", + "ComfyUI_07968_.png", + "ComfyUI_07988_.png", + "ComfyUI_07992_.png", + "ComfyUI_08000_.png", + "ComfyUI_08020_.png", + "ComfyUI_08021_.png", + "ComfyUI_08022_.png", + "ComfyUI_08023_.png", + "ComfyUI_08024_.png", + "ComfyUI_08041_.png", + "ComfyUI_08044_.png", + "ComfyUI_08045_.png", + "ComfyUI_08048_.png", + "ComfyUI_08050_.png", + "ComfyUI_08055_.png", + "ComfyUI_08076_.png", + "ComfyUI_08084_.png", + "ComfyUI_08088_.png", + "ComfyUI_08095_.png", + "ComfyUI_08097_.png", + "ComfyUI_08099_.png", + "ComfyUI_08110_.png", + "ComfyUI_08113_.png", + "ComfyUI_08120_.png", + "ComfyUI_08130_.png", + "ComfyUI_08136_.png", + "ComfyUI_08146_.png", + "ComfyUI_08176_.png", + "ComfyUI_08182_.png", + "ComfyUI_08186_.png", + "ComfyUI_08203_.png", + "ComfyUI_08215_.png", + "ComfyUI_08219_.png", + "ComfyUI_08222_.png", + "ComfyUI_08239_.png", + "ComfyUI_08249_.png", + "ComfyUI_08258_.png", + "ComfyUI_08260_.png", + "ComfyUI_08261_.png", + "ComfyUI_08265_.png", + "ComfyUI_08299_.png", + "ComfyUI_08304_.png", + "ComfyUI_08305_.png", + "ComfyUI_08306_.png", + "ComfyUI_08307_.png", + "ComfyUI_08309_.png", + "ComfyUI_08350_.png", + "ComfyUI_08353_.png", + "ComfyUI_08355_.png", + "ComfyUI_08356_.png", + "ComfyUI_08358_.png", + "ComfyUI_08369_.png", + "ComfyUI_08381_.png", + "ComfyUI_08387_.png", + "ComfyUI_08393_.png", + "ComfyUI_08422_.png", + "ComfyUI_08448_.png", + "ComfyUI_08449_.png", + "ComfyUI_08451_.png", + "ComfyUI_08460_.png", + "ComfyUI_08461_.png", + "ComfyUI_08473_.png", + "ComfyUI_08475_.png", + "ComfyUI_08487_.png", + "ComfyUI_08509_.png", + "ComfyUI_08535_.png", + "ComfyUI_09300_.png", + "ComfyUI_09352_.png", + "ComfyUI_09357_.png", + "ComfyUI_09379_.png", + "ComfyUI_09388_.png", + "ComfyUI_09454_.png", + "ComfyUI_09770_.png", + "ComfyUI_10169_.png", + "ComfyUI_10225_.png", + "ComfyUI_10531_.png", + "ComfyUI_10705_.webp", + "ComfyUI_10740_.png", + "ComfyUI_10756_.png", + "ComfyUI_10794_.webp", + "ComfyUI_10798_.png", + "ComfyUI_11368_.png", + "ComfyUI_11627_.png", + "ComfyUI_11893_.png", + "ComfyUI_11940_.png", + "ComfyUI_11976_.png", + "ComfyUI_12043_.png", + "ComfyUI_14364_.png", + "ComfyUI_14365_.png", + "ComfyUI_14368_.png", + "ComfyUI_14405_.png", + "ComfyUI_14406_.png", + "ComfyUI_14407_.png", + "ComfyUI_14408_.png", + "ComfyUI_14410_.png", + "ComfyUI_14412_.png", + "ComfyUI_14509_.png", + "ComfyUI_14893_.png", + "ComfyUI_14907_.png", + "ComfyUI_14946_.png", + "ComfyUI_14949_ (1).png", + "ComfyUI_14949_.png", + "ComfyUI_14969_.png", + "ComfyUI_14982_.png", + "ComfyUI_14983_ (1).png", + "ComfyUI_14983_.png", + "ComfyUI_14983_trans_.png", + "ComfyUI_14990_.png", + "ComfyUI_15101_.png", + "ComfyUI_16089_.png", + "ComfyUI_16098_.png", + "ComfyUI_16138_.png", + "ComfyUI_16139_.png", + "ComfyUI_16141_.png", + "ComfyUI_16142_.png", + "ComfyUI_16151_.png", + "ComfyUI_16152_.png", + "ComfyUI_16153_.png", + "ComfyUI_16154_.png", + "ComfyUI_16166_.png", + "ComfyUI_16167_.png", + "ComfyUI_16192_.png", + "ComfyUI_16196_.webp", + "ComfyUI_16197_.webp", + "ComfyUI_16205_.png", + "ComfyUI_16207_.jpg", + "ComfyUI_16207_.png", + "ComfyUI_LI_00135_.png", + "ComfyUI_LI_00151_.png", + "ComfyUI_temp_yjlpn_00001_.png", + "Common Sense Modification_2025-04-14@15h28m51s.png", + "DALL\u00b7E 2024-06-08 07.51.07 - A high-resolution detailed headshot of Mobius, the beautiful, white-haired, pale-eyed Twilight Cleric. She has flowing white hair and ethereal pale ey.webp", + "DALL\u00b7E 2024-08-02 17.50.22 - A black and white coloring book image of a scary clown competing at the Olympics. The clown has exaggerated features with a menacing grin and wild hai.jpg", + "DALL\u00b7E 2024-11-15 16.24.30 - A square icon representing the 'Psychic Bolt' ability. It depicts a glowing, jagged bolt of psychic energy being projected forward, with ethereal, swi.jpg", + "DSC00305.JPG", + "DSC00315.JPG", + "DSC00316.JPG", + "DSC00638.JPG", + "DSC00760.JPG", + "DSC00761.JPG", + "DSC01449.JPG.jpg", + "DSC01555.JPG", + "DSC02273.JPG", + "DSC02313.JPG", + "DSC02314 (2).JPG", + "DSC02317.JPG", + "DSC02359.JPG", + "DSC02363.JPG", + "DSC02385.JPG", + "DSC02386.JPG", + "DSC02442.JPG", + "DSC03467.JPG", + "Date_13-01-2024 - Image - _00055_.png", + "F7E95E816EEDE4724E78D69B14BBDA5EE7F6BF0D9BB4CDFFB33BE9492110D570.jpeg", + "FU_3_00004_.png", + "FU_4_00002_.png", + "Gemini_Generated_Image_pokch4pokch4pokc.jpg", + "Generated Image August 30, 2025 - 8_07AM.jpeg", + "Generated Image August 30, 2025 - 8_08AM.jpeg", + "Google_AI_Studio_2025-08-05T15_03_28.397Z.png", + "Google_AI_Studio_2025-08-05T15_46_04.098Z.png", + "Google_AI_Studio_2025-08-14T08_25_57.830Z.png", + "HunyuanVideo_00203.png", + "HunyuanVideo_00229.png", + "HunyuanVideo_00294.png", + "HunyuanVideo_00359.png", + "HunyuanVideo_00372.png", + "HunyuanVideo_00723.png", + "IMG_1036.JPG", + "IMG_1133.JPG", + "IMG_1210.HEIC", + "IMG_4756.JPG", + "IMG_6146.jpg", + "IMG_E1195.JPG", + "Jan62004 006.png", + "Jan62004 150.jpg", + "Kerberos_WoodElf_FIN - Copy.jpg", + "Kerberos_WoodElf_FIN.jpg", + "LTXVideo_00155.png", + "LTXVideo_00178.png", + "LTXVideo_00188.png", + "LTXVideo_00199.png", + "LTXVideo_00201.png", + "LTXVideo_00203.png", + "LTXVideo_00205.png", + "LTXVideo_00206.png", + "LTXVideo_00208.png", + "LTXVideo_00217.png", + "LTXVideo_00220.png", + "LTXVideo_00257.png", + "LTXVideo_00304.png", + "LTXVideo_00334.png", + "LTXVideo_00390_1-ezgif.com-video-to-webp-converter.webp", + "LTXVideo_00416.png", + "LTXVideo_00421.png", + "LTXVideo_00446.png", + "Ltx Rife_00005.png", + "Ltx Rife_00009.png", + "Lumina_2_00001_.png", + "Melissa-Fumero-Brooklyn-Nine-Nine.jpg", + "Mobius_KalashtarCleric_FIN.jpg", + "MultiGPU_00026_.png", + "MultiGPU_00032_.jpg", + "MultiGPU_00032_.webp", + "MultiGPU_00055_.png", + "MultiGPU_00064_.png", + "MultiGPU_00067_.png", + "NnR1HjxCv1Ku8byrQPkLmkmgEY_6fId670on0aIJALk.webp", + "Oko_BarbarianTortle_FIN - Copy (1).jpg", + "Oko_BarbarianTortle_FIN - Copy.jpg", + "Oko_BarbarianTortle_FIN.jpg", + "P4050006.JPG", + "P4050008.JPG", + "P4050010.JPG", + "P7040010-SMILE (1).jpg", + "P7040011.JPG", + "P8140005.JPG", + "P8140010.JPG", + "P8140024.png", + "PB280010.JPG", + "PC250066.JPG", + "R.jpg", + "RZJQ7VhEQYFw4CIeWFUY07qZs1.jpg", + "SDXL_Output_00056_.png", + "Screenshot 2024-01-28 022418.png", + "Screenshot 2024-03-03 032734.png", + "Screenshot 2024-04-18 220146.png", + "Screenshot 2024-05-31 120535.png", + "Screenshot 2024-08-09 100831.png", + "Screenshot 2024-09-07 055006.png", + "Screenshot 2024-09-07 0550062.png", + "Screenshot 2024-11-15 063713.png", + "Screenshot 2024-12-12 111249.png", + "Screenshot 2025-10-11 145426.png", + "Screenshot 2025-10-12 062055.png", + "Screenshot 2025-10-12 142333.png", + "Screenshot 2025-10-12 180455.png", + "StandardV3_00001_.png", + "Supergirl_Melissa_Benoist.webp", + "Untitled-1.png", + "Untitled-2.png", + "Upscaled_ComfyUI_00005_.png", + "Upscaled_ComfyUI_00087_.png", + "Upscaled_ComfyUI_00180_.png", + "WanVideo2_2_I2V_00001.png", + "WanVideo2_2_I2V_00032.png", + "Xarxan_Dragonborn_FIN.jpg", + "Zen_Realistic_fixed_eyes.png", + "Zen_Realistic_fixed_eyes_hires (1).png", + "Zen_Realistic_fixed_eyes_hires.png", + "Zen\u2019daLureBaenre_DrowElf_FIN.jpg", + "_VFZ6E~U.PNG", + "alpha_curiosity (1).jpg", + "alpha_curiosity.jpg", + "alpha_neutral.jpg", + "amor_fati.jpg", + "angela-021.jpg", + "angela-022.jpg", + "angela-024.jpg", + "angela-025.jpg", + "angela-026.jpg", + "angela-027.jpg", + "angela-028.jpg", + "angela-029.jpg", + "angela-031.jpg", + "angela-032.jpg", + "angela-033.jpg", + "angela-034.jpg", + "angela-035.jpg", + "angela.JPG", + "angelapollock-000.jpg", + "angelapollock-001.jpg", + "angelapollock-002.jpg", + "angelapollock-003.jpg", + "angelapollock-004.jpg", + "angelapollock-005.jpg", + "angelapollock-006.jpg", + "angelapollock-008.jpg", + "angelapollock-009.jpg", + "angelapollock-010.jpg", + "angelapollock-012.jpg", + "angelapollock-013.jpg", + "angelapollock-014.jpg", + "angelapollock-015.jpg", + "angelapollock-016.jpg", + "angelapollock-017.jpg", + "back.png", + "baldurs-gate-3-githyanki-close.jpg", + "baloons.png", + "baselline.png", + "blob-design-shape-with-transparent-background-png.webp", + "c1f03b9e-797b-4148-8e44-792d44f30bdd (1).png", + "comfy_in_1 (1).png", + "comfyworkflows_3e83739d-cb2d-43c3-b137-24ca7146b628.png", + "comfyworkflows_9ec5c8fa-e5f3-43d8-879b-b68d19a826a7.png", + "debug_full_iso_stack_00001_.png", + "drow-slum-beggers-v0-kpp6168ldp4e1.webp", + "end_2.webp", + "ep7 hellsangels_036.jpg", + "epsylon_portrait.jpg", + "example.jpg", + "example.png", + "example_image.jpg", + "example_inpaint (1).png", + "example_inpaint.png", + "example_inpaint_MultiGPU.png", + "example_input.png", + "fennec_girl_sing.png", + "flux faceswap sync pulid WF.jpg", + "flux unet dual_clip vae loaders.jpg", + "flux_fill_inpaint_example.png", + "front.png", + "gamma_full.jpg", + "gamma_head_square.png", + "girl_in_field.png", + "gog.jpg", + "greenmarine_Instagram_model_full_body_shot_of_a_beautiful_woma_2fc63952-c67f-4de1-942e-3c2db52700b5.png", + "groceries.jpg", + "hammer_stage_0_00061_.png", + "hidream_e1.1_example.png", + "hidream_full_example.png", + "human.png", + "hunyuanvideo distorch DEPRECATED (1).jpg", + "hunyuanvideo distorch DEPRECATED.jpg", + "hunyuanvideo distorch DEPRECATED.png", + "images.jpg", + "input_scribble_example.png", + "is-it-real-v0-xn69sg9i975e1.webp", + "is-it-real-v0-yeiqvkhs975e1.webp", + "italbar_This_is_Zen_a_beautiful_drow_female_fighter_from_dungeo.png", + "jan.jpg", + "janpollock-000.jpg", + "janpollock-001 (1).jpg", + "janpollock-001.jpg", + "janpollock-002 (1).jpg", + "janpollock-002.jpg", + "janpollock-003 (1).jpg", + "janpollock-003.jpg", + "janpollock-004 (1).jpg", + "janpollock-004.jpg", + "janpollock-005.jpg", + "janpollock-006 (1).jpg", + "janpollock-006.jpg", + "janpollock-007 (1).jpg", + "janpollock-007.jpg", + "janpollock-009.jpg", + "janpollock-010.jpg", + "janpollock-011.jpg", + "janpollock-012 (1).jpg", + "janpollock-012.jpg", + "kristibentler-006 (1).jpg", + "kristibentler-006.jpg", + "kristibentler-010.jpg", + "kristibentler-011.jpg", + "kristibentler-013.jpg", + "kristibentler-014.jpg", + "kristibentler-020.jpg", + "kristibentler-021.jpg", + "kristibentler-023.jpg", + "kristibentler-024.jpg", + "kristiv4_00046_.png", + "kristiv4_00058_.png", + "kristiv4_00062_.png", + "kristiv4_00066_.png", + "kristiv4_00070_.png", + "kristiv4_00074_.png", + "kristiv4_00078_.png", + "kristiv4_00082_.png", + "kristiv4_00088_.png", + "kristiv4_00100_.png", + "kristiv4_00106_.png", + "left.png", + "lfjj4955gjkc1.webp", + "logo_resize.png", + "lorafix_baseline_00019_.png", + "lorafix_baseline_00094_.png", + "lorafix_control_00001_.png", + "ltxvideo checkpointloadersimple distorch2.jpg", + "m6e5lclqlwdc1.jpeg", + "main_Maddy_spec_v2.png", + "mom_cyra.jpg", + "mom_kristi.jpg", + "mrw7b1x1cjdxdxwkuyvl.webp", + "multigpu_icon (1).png", + "multigpu_icon.png", + "multigpu_icon_2.png", + "nodes.png", + "nurse-chapel-star-trek-strange-new-worlds-s1e3.webp", + "oko_square.jpg", + "photo_2024-03-25_20-25-27.jpg", + "photo_2024-05-16_21-06-28.jpg", + "photo_2024-05-31_11-42-31.jpg", + "photo_2024-07-07_10-22-44.jpg", + "photo_2024-07-21_15-58-39.jpg", + "photo_2024-07-23_14-38-08.jpg", + "photo_2024-07-25_10-56-29.jpg", + "photo_2024-09-02_15-37-29.jpg", + "photo_2024-09-04_09-46-17 (1).jpg", + "photo_2024-09-04_09-46-17.jpg", + "photo_2024-09-22_21-10-01.jpg", + "photo_2024-10-18_15-48-40.jpg", + "photo_2024-10-18_15-48-49.jpg", + "photo_2024-10-19_08-58-44.jpg", + "photo_2024-10-22_17-04-52.jpg", + "photo_2024-11-10_20-30-20 (1).jpg", + "photo_2024-11-10_20-30-20.jpg", + "photo_2024-11-10_20-30-20_1 (1).jpg", + "photo_2024-11-10_20-30-20_1.jpg", + "photo_2024-11-26_20-05-32.jpg", + "photo_2024-11-26_20-09-20.jpg", + "photo_2024-11-26_20-11-21.jpg", + "photo_2024-11-29_10-21-11.jpg", + "photo_2025-07-18_13-53-04.jpg", + "photo_2025-08-03_10-03-14.jpg", + "photo_2025-08-09_19-38-31.jpg", + "photo_2025-08-24_19-19-44.jpg", + "photo_2025-09-05_22-42-57 (2).jpg", + "photo_2025-09-06_10-49-02 (1).jpg", + "photo_2025-09-06_10-49-02.jpg", + "photo_2025-09-06_10-49-03.jpg", + "photo_2025-10-23_14-55-30.jpg", + "qwen_image unet clip distorch2.jpg", + "qwen_image_fp8_benchmark.png", + "s-l1200.webp", + "sample_ninja.png", + "sd15 checkpoint loader simple.jpg", + "sd39l_test.jpg", + "sdxl checkpoint loader advanced.jpg", + "sq00041-2712804307.jpeg", + "start_2.webp", + "study 019.jpg", + "sws-003.jpg", + "thing.png", + "unnamed (1).jpg", + "wan22_14B_flf2v_end_image.png", + "wan22_14B_flf2v_start_image.png", + "wan2_2_benchmark_v2.png" + ], + "image_upload": true + } + ] + } + } + }, + "return_types": [ + "IMAGE", + "MASK" + ], + "return_names": [ + "IMAGE", + "MASK" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "COMBO", + { + "multiselect": false, + "options": [ + "00022-3350354478.png", + "00032-1684452008.png", + "00600-989540233.png", + "00872-491163527.png", + "00909-1673515826.png", + "00978-4127438296-RAW photo,best quality,high resolution,(masterpiece),(photorealistic_1.4),professional photography,sharp focus,HDR,8K resolution.png", + "011.png", + "013-00013-1162155613.png", + "05112a37d1b947bf92a2aa6b753a81bd_lg.webp", + "10186-565512868.png", + "1_zwNS2-vrv73-IaPaC2ESqA.jpg", + "2024-01-17-074847_870515671999135_vixonsFantasyMix_V10_dpmpp_2m_karras_XTRA_UPSCALED.png", + "2024-01-21_18-58-01_6807 - Copy.png", + "3bbeafd9-df56-4ff9-b0b1-bea3d9dcee3d.PNG", + "40106445.jpeg", + "42758546.jpeg", + "42952743.jpeg", + "42952892.jpeg", + "42966148.jpeg", + "42966325.jpeg", + "42966462.jpeg", + "42966617.jpeg", + "42988264.jpeg", + "42994123.jpeg", + "43002693.jpeg", + "43011152.jpeg", + "43133670.jpeg", + "43161178.jpeg", + "43282694.png", + "43288403.jpeg", + "43361302.png", + "43363130.png", + "43376373.jpeg", + "43381594.png", + "43382314.jpeg", + "43385283.jpeg", + "43400095.png", + "43400972.png", + "43406116.jpeg", + "43406118.jpeg", + "43427442.jpeg", + "43427444.jpeg", + "43451813.jpeg", + "43460131.jpeg", + "43461836.jpeg", + "43468031.jpeg", + "43473201.png", + "43490200.jpeg", + "43498369.png", + "43503252.jpeg", + "43504647.jpeg", + "43510187.jpeg", + "43516374.jpeg", + "43523415.jpeg", + "43530528.png", + "43531437.png", + "43536799.jpeg", + "43763372.png", + "43877497.jpeg", + "43972434.png", + "44021449.jpeg", + "5q8yg753kljedb.webp", + "638318543604981096.png", + "638318543737735809.png", + "68747470733a2f2f68756767696e67666163652e636f2f616c696d616d612d63726561746976652f464c55582e312d6465762d436f6e74726f6c6e65742d496e7061696e74696e672d416c7068612f7265736f6c76652f6d61696e2f696d616765732f636f6d66795f696e5f342e706e67.png", + "831222.jpg", + "957ADC21EA1D90B957B8435EDD4607BB09F712AE1B985CD1B3754A239D04AA44.jpeg", + "9c2f04a9215b1e14a21d1bb131cc2d06.jpg", + "Adam_Jensen.webp", + "BlackTerror2504_(cropped).jpg", + "ChatGPT Image Jun 8, 2025, 05_12_54 PM.png", + "CogVideoX-Tora_00005.png", + "ComfyUI-Florence2 detailed_caption to flux.jpg", + "ComfyUI_00002_ (2).png", + "ComfyUI_00004_ (1).png", + "ComfyUI_00004_.png", + "ComfyUI_00010_.png", + "ComfyUI_00064_.png", + "ComfyUI_00093_.png", + "ComfyUI_00096_.png", + "ComfyUI_00103_.webp", + "ComfyUI_00120_.png", + "ComfyUI_00256_.png", + "ComfyUI_00257_.png", + "ComfyUI_00316_.png", + "ComfyUI_00323_.png", + "ComfyUI_00324_.png", + "ComfyUI_00325_.png", + "ComfyUI_00351_.png", + "ComfyUI_00352_.png", + "ComfyUI_00362_.png", + "ComfyUI_00364_.png", + "ComfyUI_00365_.png", + "ComfyUI_00366_.png", + "ComfyUI_00369_.png", + "ComfyUI_00391_.png", + "ComfyUI_00622_.png", + "ComfyUI_00677_.png", + "ComfyUI_01430_.png", + "ComfyUI_02229_.png", + "ComfyUI_02310_.png", + "ComfyUI_02464_.png", + "ComfyUI_02778_.png", + "ComfyUI_03067_.png", + "ComfyUI_03647_.png", + "ComfyUI_03815_.png", + "ComfyUI_03817_.png", + "ComfyUI_04028_.png", + "ComfyUI_04242_.png", + "ComfyUI_04373_.png", + "ComfyUI_05051_.png", + "ComfyUI_05062_.png", + "ComfyUI_05068_.png", + "ComfyUI_05071_.png", + "ComfyUI_05093_.png", + "ComfyUI_05199_.png", + "ComfyUI_05201_.png", + "ComfyUI_05208_ (1).png", + "ComfyUI_05208_.png", + "ComfyUI_05263_.png", + "ComfyUI_05367_.png", + "ComfyUI_05381_.png", + "ComfyUI_05391_.png", + "ComfyUI_05420_.png", + "ComfyUI_05449_.png", + "ComfyUI_05450_ (1).png", + "ComfyUI_05450_.png", + "ComfyUI_05455_.png", + "ComfyUI_05503_ (1).png", + "ComfyUI_05503_.png", + "ComfyUI_05520_.png", + "ComfyUI_05615_.png", + "ComfyUI_05762_.png", + "ComfyUI_05882_.png", + "ComfyUI_05890_ (1).png", + "ComfyUI_05890_.png", + "ComfyUI_05910_.png", + "ComfyUI_05915_.png", + "ComfyUI_06022_.png", + "ComfyUI_06113_.png", + "ComfyUI_06150_.png", + "ComfyUI_06207_.png", + "ComfyUI_06387_.png", + "ComfyUI_06409_.png", + "ComfyUI_06425_.png", + "ComfyUI_06554_.png", + "ComfyUI_06555_.png", + "ComfyUI_06556_.png", + "ComfyUI_06558_.png", + "ComfyUI_06696_.png", + "ComfyUI_06709_.png", + "ComfyUI_06721_.png", + "ComfyUI_06812_.png", + "ComfyUI_06823_.png", + "ComfyUI_06844_.png", + "ComfyUI_06877_.png", + "ComfyUI_06923_.png", + "ComfyUI_06930_.png", + "ComfyUI_06936_.png", + "ComfyUI_07019_.png", + "ComfyUI_07020_.png", + "ComfyUI_07033_.png", + "ComfyUI_07064_.png", + "ComfyUI_07071_.png", + "ComfyUI_07078_.png", + "ComfyUI_07112_.png", + "ComfyUI_07179_.png", + "ComfyUI_07181_.png", + "ComfyUI_07190_.png", + "ComfyUI_07198_.png", + "ComfyUI_07204_.png", + "ComfyUI_07207_.png", + "ComfyUI_07208_.png", + "ComfyUI_07212_.png", + "ComfyUI_07242_.png", + "ComfyUI_07253_.png", + "ComfyUI_07263_.png", + "ComfyUI_07269_.png", + "ComfyUI_07274_.png", + "ComfyUI_07290_.png", + "ComfyUI_07313_.png", + "ComfyUI_07337_.png", + "ComfyUI_07384_.png", + "ComfyUI_07465_.png", + "ComfyUI_07469_.png", + "ComfyUI_07471_.png", + "ComfyUI_07481_.png", + "ComfyUI_07509_.png", + "ComfyUI_07524_.png", + "ComfyUI_07532_.png", + "ComfyUI_07541_.png", + "ComfyUI_07549_.png", + "ComfyUI_07556_.png", + "ComfyUI_07586_.png", + "ComfyUI_07603_.png", + "ComfyUI_07604_.png", + "ComfyUI_07607_.png", + "ComfyUI_07616_.png", + "ComfyUI_07627_.png", + "ComfyUI_07632_.png", + "ComfyUI_07645_.png", + "ComfyUI_07652_.png", + "ComfyUI_07676_.png", + "ComfyUI_07681_.png", + "ComfyUI_07684_.png", + "ComfyUI_07694_.png", + "ComfyUI_07705_.png", + "ComfyUI_07715_.png", + "ComfyUI_07716_.png", + "ComfyUI_07718_.png", + "ComfyUI_07724_.png", + "ComfyUI_07728_.png", + "ComfyUI_07730_.png", + "ComfyUI_07736_.png", + "ComfyUI_07739_.png", + "ComfyUI_07741_.png", + "ComfyUI_07742_.png", + "ComfyUI_07744_.png", + "ComfyUI_07753_.png", + "ComfyUI_07755_.png", + "ComfyUI_07765_.png", + "ComfyUI_07767_.png", + "ComfyUI_07781_.png", + "ComfyUI_07797_.png", + "ComfyUI_07801_.png", + "ComfyUI_07802_.png", + "ComfyUI_07823_.png", + "ComfyUI_07828_.png", + "ComfyUI_07847_.png", + "ComfyUI_07850_.png", + "ComfyUI_07896_.png", + "ComfyUI_07925_.png", + "ComfyUI_07944_.png", + "ComfyUI_07957_.png", + "ComfyUI_07963_.png", + "ComfyUI_07968_.png", + "ComfyUI_07988_.png", + "ComfyUI_07992_.png", + "ComfyUI_08000_.png", + "ComfyUI_08020_.png", + "ComfyUI_08021_.png", + "ComfyUI_08022_.png", + "ComfyUI_08023_.png", + "ComfyUI_08024_.png", + "ComfyUI_08041_.png", + "ComfyUI_08044_.png", + "ComfyUI_08045_.png", + "ComfyUI_08048_.png", + "ComfyUI_08050_.png", + "ComfyUI_08055_.png", + "ComfyUI_08076_.png", + "ComfyUI_08084_.png", + "ComfyUI_08088_.png", + "ComfyUI_08095_.png", + "ComfyUI_08097_.png", + "ComfyUI_08099_.png", + "ComfyUI_08110_.png", + "ComfyUI_08113_.png", + "ComfyUI_08120_.png", + "ComfyUI_08130_.png", + "ComfyUI_08136_.png", + "ComfyUI_08146_.png", + "ComfyUI_08176_.png", + "ComfyUI_08182_.png", + "ComfyUI_08186_.png", + "ComfyUI_08203_.png", + "ComfyUI_08215_.png", + "ComfyUI_08219_.png", + "ComfyUI_08222_.png", + "ComfyUI_08239_.png", + "ComfyUI_08249_.png", + "ComfyUI_08258_.png", + "ComfyUI_08260_.png", + "ComfyUI_08261_.png", + "ComfyUI_08265_.png", + "ComfyUI_08299_.png", + "ComfyUI_08304_.png", + "ComfyUI_08305_.png", + "ComfyUI_08306_.png", + "ComfyUI_08307_.png", + "ComfyUI_08309_.png", + "ComfyUI_08350_.png", + "ComfyUI_08353_.png", + "ComfyUI_08355_.png", + "ComfyUI_08356_.png", + "ComfyUI_08358_.png", + "ComfyUI_08369_.png", + "ComfyUI_08381_.png", + "ComfyUI_08387_.png", + "ComfyUI_08393_.png", + "ComfyUI_08422_.png", + "ComfyUI_08448_.png", + "ComfyUI_08449_.png", + "ComfyUI_08451_.png", + "ComfyUI_08460_.png", + "ComfyUI_08461_.png", + "ComfyUI_08473_.png", + "ComfyUI_08475_.png", + "ComfyUI_08487_.png", + "ComfyUI_08509_.png", + "ComfyUI_08535_.png", + "ComfyUI_09300_.png", + "ComfyUI_09352_.png", + "ComfyUI_09357_.png", + "ComfyUI_09379_.png", + "ComfyUI_09388_.png", + "ComfyUI_09454_.png", + "ComfyUI_09770_.png", + "ComfyUI_10169_.png", + "ComfyUI_10225_.png", + "ComfyUI_10531_.png", + "ComfyUI_10705_.webp", + "ComfyUI_10740_.png", + "ComfyUI_10756_.png", + "ComfyUI_10794_.webp", + "ComfyUI_10798_.png", + "ComfyUI_11368_.png", + "ComfyUI_11627_.png", + "ComfyUI_11893_.png", + "ComfyUI_11940_.png", + "ComfyUI_11976_.png", + "ComfyUI_12043_.png", + "ComfyUI_14364_.png", + "ComfyUI_14365_.png", + "ComfyUI_14368_.png", + "ComfyUI_14405_.png", + "ComfyUI_14406_.png", + "ComfyUI_14407_.png", + "ComfyUI_14408_.png", + "ComfyUI_14410_.png", + "ComfyUI_14412_.png", + "ComfyUI_14509_.png", + "ComfyUI_14893_.png", + "ComfyUI_14907_.png", + "ComfyUI_14946_.png", + "ComfyUI_14949_ (1).png", + "ComfyUI_14949_.png", + "ComfyUI_14969_.png", + "ComfyUI_14982_.png", + "ComfyUI_14983_ (1).png", + "ComfyUI_14983_.png", + "ComfyUI_14983_trans_.png", + "ComfyUI_14990_.png", + "ComfyUI_15101_.png", + "ComfyUI_16089_.png", + "ComfyUI_16098_.png", + "ComfyUI_16138_.png", + "ComfyUI_16139_.png", + "ComfyUI_16141_.png", + "ComfyUI_16142_.png", + "ComfyUI_16151_.png", + "ComfyUI_16152_.png", + "ComfyUI_16153_.png", + "ComfyUI_16154_.png", + "ComfyUI_16166_.png", + "ComfyUI_16167_.png", + "ComfyUI_16192_.png", + "ComfyUI_16196_.webp", + "ComfyUI_16197_.webp", + "ComfyUI_16205_.png", + "ComfyUI_16207_.jpg", + "ComfyUI_16207_.png", + "ComfyUI_LI_00135_.png", + "ComfyUI_LI_00151_.png", + "ComfyUI_temp_yjlpn_00001_.png", + "Common Sense Modification_2025-04-14@15h28m51s.png", + "DALL\u00b7E 2024-06-08 07.51.07 - A high-resolution detailed headshot of Mobius, the beautiful, white-haired, pale-eyed Twilight Cleric. She has flowing white hair and ethereal pale ey.webp", + "DALL\u00b7E 2024-08-02 17.50.22 - A black and white coloring book image of a scary clown competing at the Olympics. The clown has exaggerated features with a menacing grin and wild hai.jpg", + "DALL\u00b7E 2024-11-15 16.24.30 - A square icon representing the 'Psychic Bolt' ability. It depicts a glowing, jagged bolt of psychic energy being projected forward, with ethereal, swi.jpg", + "DSC00305.JPG", + "DSC00315.JPG", + "DSC00316.JPG", + "DSC00638.JPG", + "DSC00760.JPG", + "DSC00761.JPG", + "DSC01449.JPG.jpg", + "DSC01555.JPG", + "DSC02273.JPG", + "DSC02313.JPG", + "DSC02314 (2).JPG", + "DSC02317.JPG", + "DSC02359.JPG", + "DSC02363.JPG", + "DSC02385.JPG", + "DSC02386.JPG", + "DSC02442.JPG", + "DSC03467.JPG", + "Date_13-01-2024 - Image - _00055_.png", + "F7E95E816EEDE4724E78D69B14BBDA5EE7F6BF0D9BB4CDFFB33BE9492110D570.jpeg", + "FU_3_00004_.png", + "FU_4_00002_.png", + "Gemini_Generated_Image_pokch4pokch4pokc.jpg", + "Generated Image August 30, 2025 - 8_07AM.jpeg", + "Generated Image August 30, 2025 - 8_08AM.jpeg", + "Google_AI_Studio_2025-08-05T15_03_28.397Z.png", + "Google_AI_Studio_2025-08-05T15_46_04.098Z.png", + "Google_AI_Studio_2025-08-14T08_25_57.830Z.png", + "HunyuanVideo_00203.png", + "HunyuanVideo_00229.png", + "HunyuanVideo_00294.png", + "HunyuanVideo_00359.png", + "HunyuanVideo_00372.png", + "HunyuanVideo_00723.png", + "IMG_1036.JPG", + "IMG_1133.JPG", + "IMG_1210.HEIC", + "IMG_4756.JPG", + "IMG_6146.jpg", + "IMG_E1195.JPG", + "Jan62004 006.png", + "Jan62004 150.jpg", + "Kerberos_WoodElf_FIN - Copy.jpg", + "Kerberos_WoodElf_FIN.jpg", + "LTXVideo_00155.png", + "LTXVideo_00178.png", + "LTXVideo_00188.png", + "LTXVideo_00199.png", + "LTXVideo_00201.png", + "LTXVideo_00203.png", + "LTXVideo_00205.png", + "LTXVideo_00206.png", + "LTXVideo_00208.png", + "LTXVideo_00217.png", + "LTXVideo_00220.png", + "LTXVideo_00257.png", + "LTXVideo_00304.png", + "LTXVideo_00334.png", + "LTXVideo_00390_1-ezgif.com-video-to-webp-converter.webp", + "LTXVideo_00416.png", + "LTXVideo_00421.png", + "LTXVideo_00446.png", + "Ltx Rife_00005.png", + "Ltx Rife_00009.png", + "Lumina_2_00001_.png", + "Melissa-Fumero-Brooklyn-Nine-Nine.jpg", + "Mobius_KalashtarCleric_FIN.jpg", + "MultiGPU_00026_.png", + "MultiGPU_00032_.jpg", + "MultiGPU_00032_.webp", + "MultiGPU_00055_.png", + "MultiGPU_00064_.png", + "MultiGPU_00067_.png", + "NnR1HjxCv1Ku8byrQPkLmkmgEY_6fId670on0aIJALk.webp", + "Oko_BarbarianTortle_FIN - Copy (1).jpg", + "Oko_BarbarianTortle_FIN - Copy.jpg", + "Oko_BarbarianTortle_FIN.jpg", + "P4050006.JPG", + "P4050008.JPG", + "P4050010.JPG", + "P7040010-SMILE (1).jpg", + "P7040011.JPG", + "P8140005.JPG", + "P8140010.JPG", + "P8140024.png", + "PB280010.JPG", + "PC250066.JPG", + "R.jpg", + "RZJQ7VhEQYFw4CIeWFUY07qZs1.jpg", + "SDXL_Output_00056_.png", + "Screenshot 2024-01-28 022418.png", + "Screenshot 2024-03-03 032734.png", + "Screenshot 2024-04-18 220146.png", + "Screenshot 2024-05-31 120535.png", + "Screenshot 2024-08-09 100831.png", + "Screenshot 2024-09-07 055006.png", + "Screenshot 2024-09-07 0550062.png", + "Screenshot 2024-11-15 063713.png", + "Screenshot 2024-12-12 111249.png", + "Screenshot 2025-10-11 145426.png", + "Screenshot 2025-10-12 062055.png", + "Screenshot 2025-10-12 142333.png", + "Screenshot 2025-10-12 180455.png", + "StandardV3_00001_.png", + "Supergirl_Melissa_Benoist.webp", + "Untitled-1.png", + "Untitled-2.png", + "Upscaled_ComfyUI_00005_.png", + "Upscaled_ComfyUI_00087_.png", + "Upscaled_ComfyUI_00180_.png", + "WanVideo2_2_I2V_00001.png", + "WanVideo2_2_I2V_00032.png", + "Xarxan_Dragonborn_FIN.jpg", + "Zen_Realistic_fixed_eyes.png", + "Zen_Realistic_fixed_eyes_hires (1).png", + "Zen_Realistic_fixed_eyes_hires.png", + "Zen\u2019daLureBaenre_DrowElf_FIN.jpg", + "_VFZ6E~U.PNG", + "alpha_curiosity (1).jpg", + "alpha_curiosity.jpg", + "alpha_neutral.jpg", + "amor_fati.jpg", + "angela-021.jpg", + "angela-022.jpg", + "angela-024.jpg", + "angela-025.jpg", + "angela-026.jpg", + "angela-027.jpg", + "angela-028.jpg", + "angela-029.jpg", + "angela-031.jpg", + "angela-032.jpg", + "angela-033.jpg", + "angela-034.jpg", + "angela-035.jpg", + "angela.JPG", + "angelapollock-000.jpg", + "angelapollock-001.jpg", + "angelapollock-002.jpg", + "angelapollock-003.jpg", + "angelapollock-004.jpg", + "angelapollock-005.jpg", + "angelapollock-006.jpg", + "angelapollock-008.jpg", + "angelapollock-009.jpg", + "angelapollock-010.jpg", + "angelapollock-012.jpg", + "angelapollock-013.jpg", + "angelapollock-014.jpg", + "angelapollock-015.jpg", + "angelapollock-016.jpg", + "angelapollock-017.jpg", + "back.png", + "baldurs-gate-3-githyanki-close.jpg", + "baloons.png", + "baselline.png", + "blob-design-shape-with-transparent-background-png.webp", + "c1f03b9e-797b-4148-8e44-792d44f30bdd (1).png", + "comfy_in_1 (1).png", + "comfyworkflows_3e83739d-cb2d-43c3-b137-24ca7146b628.png", + "comfyworkflows_9ec5c8fa-e5f3-43d8-879b-b68d19a826a7.png", + "debug_full_iso_stack_00001_.png", + "drow-slum-beggers-v0-kpp6168ldp4e1.webp", + "end_2.webp", + "ep7 hellsangels_036.jpg", + "epsylon_portrait.jpg", + "example.jpg", + "example.png", + "example_image.jpg", + "example_inpaint (1).png", + "example_inpaint.png", + "example_inpaint_MultiGPU.png", + "example_input.png", + "fennec_girl_sing.png", + "flux faceswap sync pulid WF.jpg", + "flux unet dual_clip vae loaders.jpg", + "flux_fill_inpaint_example.png", + "front.png", + "gamma_full.jpg", + "gamma_head_square.png", + "girl_in_field.png", + "gog.jpg", + "greenmarine_Instagram_model_full_body_shot_of_a_beautiful_woma_2fc63952-c67f-4de1-942e-3c2db52700b5.png", + "groceries.jpg", + "hammer_stage_0_00061_.png", + "hidream_e1.1_example.png", + "hidream_full_example.png", + "human.png", + "hunyuanvideo distorch DEPRECATED (1).jpg", + "hunyuanvideo distorch DEPRECATED.jpg", + "hunyuanvideo distorch DEPRECATED.png", + "images.jpg", + "input_scribble_example.png", + "is-it-real-v0-xn69sg9i975e1.webp", + "is-it-real-v0-yeiqvkhs975e1.webp", + "italbar_This_is_Zen_a_beautiful_drow_female_fighter_from_dungeo.png", + "jan.jpg", + "janpollock-000.jpg", + "janpollock-001 (1).jpg", + "janpollock-001.jpg", + "janpollock-002 (1).jpg", + "janpollock-002.jpg", + "janpollock-003 (1).jpg", + "janpollock-003.jpg", + "janpollock-004 (1).jpg", + "janpollock-004.jpg", + "janpollock-005.jpg", + "janpollock-006 (1).jpg", + "janpollock-006.jpg", + "janpollock-007 (1).jpg", + "janpollock-007.jpg", + "janpollock-009.jpg", + "janpollock-010.jpg", + "janpollock-011.jpg", + "janpollock-012 (1).jpg", + "janpollock-012.jpg", + "kristibentler-006 (1).jpg", + "kristibentler-006.jpg", + "kristibentler-010.jpg", + "kristibentler-011.jpg", + "kristibentler-013.jpg", + "kristibentler-014.jpg", + "kristibentler-020.jpg", + "kristibentler-021.jpg", + "kristibentler-023.jpg", + "kristibentler-024.jpg", + "kristiv4_00046_.png", + "kristiv4_00058_.png", + "kristiv4_00062_.png", + "kristiv4_00066_.png", + "kristiv4_00070_.png", + "kristiv4_00074_.png", + "kristiv4_00078_.png", + "kristiv4_00082_.png", + "kristiv4_00088_.png", + "kristiv4_00100_.png", + "kristiv4_00106_.png", + "left.png", + "lfjj4955gjkc1.webp", + "logo_resize.png", + "lorafix_baseline_00019_.png", + "lorafix_baseline_00094_.png", + "lorafix_control_00001_.png", + "ltxvideo checkpointloadersimple distorch2.jpg", + "m6e5lclqlwdc1.jpeg", + "main_Maddy_spec_v2.png", + "mom_cyra.jpg", + "mom_kristi.jpg", + "mrw7b1x1cjdxdxwkuyvl.webp", + "multigpu_icon (1).png", + "multigpu_icon.png", + "multigpu_icon_2.png", + "nodes.png", + "nurse-chapel-star-trek-strange-new-worlds-s1e3.webp", + "oko_square.jpg", + "photo_2024-03-25_20-25-27.jpg", + "photo_2024-05-16_21-06-28.jpg", + "photo_2024-05-31_11-42-31.jpg", + "photo_2024-07-07_10-22-44.jpg", + "photo_2024-07-21_15-58-39.jpg", + "photo_2024-07-23_14-38-08.jpg", + "photo_2024-07-25_10-56-29.jpg", + "photo_2024-09-02_15-37-29.jpg", + "photo_2024-09-04_09-46-17 (1).jpg", + "photo_2024-09-04_09-46-17.jpg", + "photo_2024-09-22_21-10-01.jpg", + "photo_2024-10-18_15-48-40.jpg", + "photo_2024-10-18_15-48-49.jpg", + "photo_2024-10-19_08-58-44.jpg", + "photo_2024-10-22_17-04-52.jpg", + "photo_2024-11-10_20-30-20 (1).jpg", + "photo_2024-11-10_20-30-20.jpg", + "photo_2024-11-10_20-30-20_1 (1).jpg", + "photo_2024-11-10_20-30-20_1.jpg", + "photo_2024-11-26_20-05-32.jpg", + "photo_2024-11-26_20-09-20.jpg", + "photo_2024-11-26_20-11-21.jpg", + "photo_2024-11-29_10-21-11.jpg", + "photo_2025-07-18_13-53-04.jpg", + "photo_2025-08-03_10-03-14.jpg", + "photo_2025-08-09_19-38-31.jpg", + "photo_2025-08-24_19-19-44.jpg", + "photo_2025-09-05_22-42-57 (2).jpg", + "photo_2025-09-06_10-49-02 (1).jpg", + "photo_2025-09-06_10-49-02.jpg", + "photo_2025-09-06_10-49-03.jpg", + "photo_2025-10-23_14-55-30.jpg", + "qwen_image unet clip distorch2.jpg", + "qwen_image_fp8_benchmark.png", + "s-l1200.webp", + "sample_ninja.png", + "sd15 checkpoint loader simple.jpg", + "sd39l_test.jpg", + "sdxl checkpoint loader advanced.jpg", + "sq00041-2712804307.jpeg", + "start_2.webp", + "study 019.jpg", + "sws-003.jpg", + "thing.png", + "unnamed (1).jpg", + "wan22_14B_flf2v_end_image.png", + "wan22_14B_flf2v_start_image.png", + "wan2_2_benchmark_v2.png" + ], + "image_upload": true + } + ] + } + }, + "input_order": { + "required": [ + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "MASK" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "MASK" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "LoadImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "00022-3350354478.png", + "00032-1684452008.png", + "00600-989540233.png", + "00872-491163527.png", + "00909-1673515826.png", + "00978-4127438296-RAW photo,best quality,high resolution,(masterpiece),(photorealistic_1.4),professional photography,sharp focus,HDR,8K resolution.png", + "011.png", + "013-00013-1162155613.png", + "05112a37d1b947bf92a2aa6b753a81bd_lg.webp", + "10186-565512868.png", + "1_zwNS2-vrv73-IaPaC2ESqA.jpg", + "2024-01-17-074847_870515671999135_vixonsFantasyMix_V10_dpmpp_2m_karras_XTRA_UPSCALED.png", + "2024-01-21_18-58-01_6807 - Copy.png", + "3bbeafd9-df56-4ff9-b0b1-bea3d9dcee3d.PNG", + "40106445.jpeg", + "42758546.jpeg", + "42952743.jpeg", + "42952892.jpeg", + "42966148.jpeg", + "42966325.jpeg", + "42966462.jpeg", + "42966617.jpeg", + "42988264.jpeg", + "42994123.jpeg", + "43002693.jpeg", + "43011152.jpeg", + "43133670.jpeg", + "43161178.jpeg", + "43282694.png", + "43288403.jpeg", + "43361302.png", + "43363130.png", + "43376373.jpeg", + "43381594.png", + "43382314.jpeg", + "43385283.jpeg", + "43400095.png", + "43400972.png", + "43406116.jpeg", + "43406118.jpeg", + "43427442.jpeg", + "43427444.jpeg", + "43451813.jpeg", + "43460131.jpeg", + "43461836.jpeg", + "43468031.jpeg", + "43473201.png", + "43490200.jpeg", + "43498369.png", + "43503252.jpeg", + "43504647.jpeg", + "43510187.jpeg", + "43516374.jpeg", + "43523415.jpeg", + "43530528.png", + "43531437.png", + "43536799.jpeg", + "43763372.png", + "43877497.jpeg", + "43972434.png", + "44021449.jpeg", + "5q8yg753kljedb.webp", + "638318543604981096.png", + "638318543737735809.png", + "68747470733a2f2f68756767696e67666163652e636f2f616c696d616d612d63726561746976652f464c55582e312d6465762d436f6e74726f6c6e65742d496e7061696e74696e672d416c7068612f7265736f6c76652f6d61696e2f696d616765732f636f6d66795f696e5f342e706e67.png", + "831222.jpg", + "957ADC21EA1D90B957B8435EDD4607BB09F712AE1B985CD1B3754A239D04AA44.jpeg", + "9c2f04a9215b1e14a21d1bb131cc2d06.jpg", + "Adam_Jensen.webp", + "BlackTerror2504_(cropped).jpg", + "ChatGPT Image Jun 8, 2025, 05_12_54 PM.png", + "CogVideoX-Tora_00005.png", + "ComfyUI-Florence2 detailed_caption to flux.jpg", + "ComfyUI_00002_ (2).png", + "ComfyUI_00004_ (1).png", + "ComfyUI_00004_.png", + "ComfyUI_00010_.png", + "ComfyUI_00064_.png", + "ComfyUI_00093_.png", + "ComfyUI_00096_.png", + "ComfyUI_00103_.webp", + "ComfyUI_00120_.png", + "ComfyUI_00256_.png", + "ComfyUI_00257_.png", + "ComfyUI_00316_.png", + "ComfyUI_00323_.png", + "ComfyUI_00324_.png", + "ComfyUI_00325_.png", + "ComfyUI_00351_.png", + "ComfyUI_00352_.png", + "ComfyUI_00362_.png", + "ComfyUI_00364_.png", + "ComfyUI_00365_.png", + "ComfyUI_00366_.png", + "ComfyUI_00369_.png", + "ComfyUI_00391_.png", + "ComfyUI_00622_.png", + "ComfyUI_00677_.png", + "ComfyUI_01430_.png", + "ComfyUI_02229_.png", + "ComfyUI_02310_.png", + "ComfyUI_02464_.png", + "ComfyUI_02778_.png", + "ComfyUI_03067_.png", + "ComfyUI_03647_.png", + "ComfyUI_03815_.png", + "ComfyUI_03817_.png", + "ComfyUI_04028_.png", + "ComfyUI_04242_.png", + "ComfyUI_04373_.png", + "ComfyUI_05051_.png", + "ComfyUI_05062_.png", + "ComfyUI_05068_.png", + "ComfyUI_05071_.png", + "ComfyUI_05093_.png", + "ComfyUI_05199_.png", + "ComfyUI_05201_.png", + "ComfyUI_05208_ (1).png", + "ComfyUI_05208_.png", + "ComfyUI_05263_.png", + "ComfyUI_05367_.png", + "ComfyUI_05381_.png", + "ComfyUI_05391_.png", + "ComfyUI_05420_.png", + "ComfyUI_05449_.png", + "ComfyUI_05450_ (1).png", + "ComfyUI_05450_.png", + "ComfyUI_05455_.png", + "ComfyUI_05503_ (1).png", + "ComfyUI_05503_.png", + "ComfyUI_05520_.png", + "ComfyUI_05615_.png", + "ComfyUI_05762_.png", + "ComfyUI_05882_.png", + "ComfyUI_05890_ (1).png", + "ComfyUI_05890_.png", + "ComfyUI_05910_.png", + "ComfyUI_05915_.png", + "ComfyUI_06022_.png", + "ComfyUI_06113_.png", + "ComfyUI_06150_.png", + "ComfyUI_06207_.png", + "ComfyUI_06387_.png", + "ComfyUI_06409_.png", + "ComfyUI_06425_.png", + "ComfyUI_06554_.png", + "ComfyUI_06555_.png", + "ComfyUI_06556_.png", + "ComfyUI_06558_.png", + "ComfyUI_06696_.png", + "ComfyUI_06709_.png", + "ComfyUI_06721_.png", + "ComfyUI_06812_.png", + "ComfyUI_06823_.png", + "ComfyUI_06844_.png", + "ComfyUI_06877_.png", + "ComfyUI_06923_.png", + "ComfyUI_06930_.png", + "ComfyUI_06936_.png", + "ComfyUI_07019_.png", + "ComfyUI_07020_.png", + "ComfyUI_07033_.png", + "ComfyUI_07064_.png", + "ComfyUI_07071_.png", + "ComfyUI_07078_.png", + "ComfyUI_07112_.png", + "ComfyUI_07179_.png", + "ComfyUI_07181_.png", + "ComfyUI_07190_.png", + "ComfyUI_07198_.png", + "ComfyUI_07204_.png", + "ComfyUI_07207_.png", + "ComfyUI_07208_.png", + "ComfyUI_07212_.png", + "ComfyUI_07242_.png", + "ComfyUI_07253_.png", + "ComfyUI_07263_.png", + "ComfyUI_07269_.png", + "ComfyUI_07274_.png", + "ComfyUI_07290_.png", + "ComfyUI_07313_.png", + "ComfyUI_07337_.png", + "ComfyUI_07384_.png", + "ComfyUI_07465_.png", + "ComfyUI_07469_.png", + "ComfyUI_07471_.png", + "ComfyUI_07481_.png", + "ComfyUI_07509_.png", + "ComfyUI_07524_.png", + "ComfyUI_07532_.png", + "ComfyUI_07541_.png", + "ComfyUI_07549_.png", + "ComfyUI_07556_.png", + "ComfyUI_07586_.png", + "ComfyUI_07603_.png", + "ComfyUI_07604_.png", + "ComfyUI_07607_.png", + "ComfyUI_07616_.png", + "ComfyUI_07627_.png", + "ComfyUI_07632_.png", + "ComfyUI_07645_.png", + "ComfyUI_07652_.png", + "ComfyUI_07676_.png", + "ComfyUI_07681_.png", + "ComfyUI_07684_.png", + "ComfyUI_07694_.png", + "ComfyUI_07705_.png", + "ComfyUI_07715_.png", + "ComfyUI_07716_.png", + "ComfyUI_07718_.png", + "ComfyUI_07724_.png", + "ComfyUI_07728_.png", + "ComfyUI_07730_.png", + "ComfyUI_07736_.png", + "ComfyUI_07739_.png", + "ComfyUI_07741_.png", + "ComfyUI_07742_.png", + "ComfyUI_07744_.png", + "ComfyUI_07753_.png", + "ComfyUI_07755_.png", + "ComfyUI_07765_.png", + "ComfyUI_07767_.png", + "ComfyUI_07781_.png", + "ComfyUI_07797_.png", + "ComfyUI_07801_.png", + "ComfyUI_07802_.png", + "ComfyUI_07823_.png", + "ComfyUI_07828_.png", + "ComfyUI_07847_.png", + "ComfyUI_07850_.png", + "ComfyUI_07896_.png", + "ComfyUI_07925_.png", + "ComfyUI_07944_.png", + "ComfyUI_07957_.png", + "ComfyUI_07963_.png", + "ComfyUI_07968_.png", + "ComfyUI_07988_.png", + "ComfyUI_07992_.png", + "ComfyUI_08000_.png", + "ComfyUI_08020_.png", + "ComfyUI_08021_.png", + "ComfyUI_08022_.png", + "ComfyUI_08023_.png", + "ComfyUI_08024_.png", + "ComfyUI_08041_.png", + "ComfyUI_08044_.png", + "ComfyUI_08045_.png", + "ComfyUI_08048_.png", + "ComfyUI_08050_.png", + "ComfyUI_08055_.png", + "ComfyUI_08076_.png", + "ComfyUI_08084_.png", + "ComfyUI_08088_.png", + "ComfyUI_08095_.png", + "ComfyUI_08097_.png", + "ComfyUI_08099_.png", + "ComfyUI_08110_.png", + "ComfyUI_08113_.png", + "ComfyUI_08120_.png", + "ComfyUI_08130_.png", + "ComfyUI_08136_.png", + "ComfyUI_08146_.png", + "ComfyUI_08176_.png", + "ComfyUI_08182_.png", + "ComfyUI_08186_.png", + "ComfyUI_08203_.png", + "ComfyUI_08215_.png", + "ComfyUI_08219_.png", + "ComfyUI_08222_.png", + "ComfyUI_08239_.png", + "ComfyUI_08249_.png", + "ComfyUI_08258_.png", + "ComfyUI_08260_.png", + "ComfyUI_08261_.png", + "ComfyUI_08265_.png", + "ComfyUI_08299_.png", + "ComfyUI_08304_.png", + "ComfyUI_08305_.png", + "ComfyUI_08306_.png", + "ComfyUI_08307_.png", + "ComfyUI_08309_.png", + "ComfyUI_08350_.png", + "ComfyUI_08353_.png", + "ComfyUI_08355_.png", + "ComfyUI_08356_.png", + "ComfyUI_08358_.png", + "ComfyUI_08369_.png", + "ComfyUI_08381_.png", + "ComfyUI_08387_.png", + "ComfyUI_08393_.png", + "ComfyUI_08422_.png", + "ComfyUI_08448_.png", + "ComfyUI_08449_.png", + "ComfyUI_08451_.png", + "ComfyUI_08460_.png", + "ComfyUI_08461_.png", + "ComfyUI_08473_.png", + "ComfyUI_08475_.png", + "ComfyUI_08487_.png", + "ComfyUI_08509_.png", + "ComfyUI_08535_.png", + "ComfyUI_09300_.png", + "ComfyUI_09352_.png", + "ComfyUI_09357_.png", + "ComfyUI_09379_.png", + "ComfyUI_09388_.png", + "ComfyUI_09454_.png", + "ComfyUI_09770_.png", + "ComfyUI_10169_.png", + "ComfyUI_10225_.png", + "ComfyUI_10531_.png", + "ComfyUI_10705_.webp", + "ComfyUI_10740_.png", + "ComfyUI_10756_.png", + "ComfyUI_10794_.webp", + "ComfyUI_10798_.png", + "ComfyUI_11368_.png", + "ComfyUI_11627_.png", + "ComfyUI_11893_.png", + "ComfyUI_11940_.png", + "ComfyUI_11976_.png", + "ComfyUI_12043_.png", + "ComfyUI_14364_.png", + "ComfyUI_14365_.png", + "ComfyUI_14368_.png", + "ComfyUI_14405_.png", + "ComfyUI_14406_.png", + "ComfyUI_14407_.png", + "ComfyUI_14408_.png", + "ComfyUI_14410_.png", + "ComfyUI_14412_.png", + "ComfyUI_14509_.png", + "ComfyUI_14893_.png", + "ComfyUI_14907_.png", + "ComfyUI_14946_.png", + "ComfyUI_14949_ (1).png", + "ComfyUI_14949_.png", + "ComfyUI_14969_.png", + "ComfyUI_14982_.png", + "ComfyUI_14983_ (1).png", + "ComfyUI_14983_.png", + "ComfyUI_14983_trans_.png", + "ComfyUI_14990_.png", + "ComfyUI_15101_.png", + "ComfyUI_16089_.png", + "ComfyUI_16098_.png", + "ComfyUI_16138_.png", + "ComfyUI_16139_.png", + "ComfyUI_16141_.png", + "ComfyUI_16142_.png", + "ComfyUI_16151_.png", + "ComfyUI_16152_.png", + "ComfyUI_16153_.png", + "ComfyUI_16154_.png", + "ComfyUI_16166_.png", + "ComfyUI_16167_.png", + "ComfyUI_16192_.png", + "ComfyUI_16196_.webp", + "ComfyUI_16197_.webp", + "ComfyUI_16205_.png", + "ComfyUI_16207_.jpg", + "ComfyUI_16207_.png", + "ComfyUI_LI_00135_.png", + "ComfyUI_LI_00151_.png", + "ComfyUI_temp_yjlpn_00001_.png", + "Common Sense Modification_2025-04-14@15h28m51s.png", + "DALL\u00b7E 2024-06-08 07.51.07 - A high-resolution detailed headshot of Mobius, the beautiful, white-haired, pale-eyed Twilight Cleric. She has flowing white hair and ethereal pale ey.webp", + "DALL\u00b7E 2024-08-02 17.50.22 - A black and white coloring book image of a scary clown competing at the Olympics. The clown has exaggerated features with a menacing grin and wild hai.jpg", + "DALL\u00b7E 2024-11-15 16.24.30 - A square icon representing the 'Psychic Bolt' ability. It depicts a glowing, jagged bolt of psychic energy being projected forward, with ethereal, swi.jpg", + "DSC00305.JPG", + "DSC00315.JPG", + "DSC00316.JPG", + "DSC00638.JPG", + "DSC00760.JPG", + "DSC00761.JPG", + "DSC01449.JPG.jpg", + "DSC01555.JPG", + "DSC02273.JPG", + "DSC02313.JPG", + "DSC02314 (2).JPG", + "DSC02317.JPG", + "DSC02359.JPG", + "DSC02363.JPG", + "DSC02385.JPG", + "DSC02386.JPG", + "DSC02442.JPG", + "DSC03467.JPG", + "Date_13-01-2024 - Image - _00055_.png", + "F7E95E816EEDE4724E78D69B14BBDA5EE7F6BF0D9BB4CDFFB33BE9492110D570.jpeg", + "FU_3_00004_.png", + "FU_4_00002_.png", + "Gemini_Generated_Image_pokch4pokch4pokc.jpg", + "Generated Image August 30, 2025 - 8_07AM.jpeg", + "Generated Image August 30, 2025 - 8_08AM.jpeg", + "Google_AI_Studio_2025-08-05T15_03_28.397Z.png", + "Google_AI_Studio_2025-08-05T15_46_04.098Z.png", + "Google_AI_Studio_2025-08-14T08_25_57.830Z.png", + "HunyuanVideo_00203.png", + "HunyuanVideo_00229.png", + "HunyuanVideo_00294.png", + "HunyuanVideo_00359.png", + "HunyuanVideo_00372.png", + "HunyuanVideo_00723.png", + "IMG_1036.JPG", + "IMG_1133.JPG", + "IMG_1210.HEIC", + "IMG_4756.JPG", + "IMG_6146.jpg", + "IMG_E1195.JPG", + "Jan62004 006.png", + "Jan62004 150.jpg", + "Kerberos_WoodElf_FIN - Copy.jpg", + "Kerberos_WoodElf_FIN.jpg", + "LTXVideo_00155.png", + "LTXVideo_00178.png", + "LTXVideo_00188.png", + "LTXVideo_00199.png", + "LTXVideo_00201.png", + "LTXVideo_00203.png", + "LTXVideo_00205.png", + "LTXVideo_00206.png", + "LTXVideo_00208.png", + "LTXVideo_00217.png", + "LTXVideo_00220.png", + "LTXVideo_00257.png", + "LTXVideo_00304.png", + "LTXVideo_00334.png", + "LTXVideo_00390_1-ezgif.com-video-to-webp-converter.webp", + "LTXVideo_00416.png", + "LTXVideo_00421.png", + "LTXVideo_00446.png", + "Ltx Rife_00005.png", + "Ltx Rife_00009.png", + "Lumina_2_00001_.png", + "Melissa-Fumero-Brooklyn-Nine-Nine.jpg", + "Mobius_KalashtarCleric_FIN.jpg", + "MultiGPU_00026_.png", + "MultiGPU_00032_.jpg", + "MultiGPU_00032_.webp", + "MultiGPU_00055_.png", + "MultiGPU_00064_.png", + "MultiGPU_00067_.png", + "NnR1HjxCv1Ku8byrQPkLmkmgEY_6fId670on0aIJALk.webp", + "Oko_BarbarianTortle_FIN - Copy (1).jpg", + "Oko_BarbarianTortle_FIN - Copy.jpg", + "Oko_BarbarianTortle_FIN.jpg", + "P4050006.JPG", + "P4050008.JPG", + "P4050010.JPG", + "P7040010-SMILE (1).jpg", + "P7040011.JPG", + "P8140005.JPG", + "P8140010.JPG", + "P8140024.png", + "PB280010.JPG", + "PC250066.JPG", + "R.jpg", + "RZJQ7VhEQYFw4CIeWFUY07qZs1.jpg", + "SDXL_Output_00056_.png", + "Screenshot 2024-01-28 022418.png", + "Screenshot 2024-03-03 032734.png", + "Screenshot 2024-04-18 220146.png", + "Screenshot 2024-05-31 120535.png", + "Screenshot 2024-08-09 100831.png", + "Screenshot 2024-09-07 055006.png", + "Screenshot 2024-09-07 0550062.png", + "Screenshot 2024-11-15 063713.png", + "Screenshot 2024-12-12 111249.png", + "Screenshot 2025-10-11 145426.png", + "Screenshot 2025-10-12 062055.png", + "Screenshot 2025-10-12 142333.png", + "Screenshot 2025-10-12 180455.png", + "StandardV3_00001_.png", + "Supergirl_Melissa_Benoist.webp", + "Untitled-1.png", + "Untitled-2.png", + "Upscaled_ComfyUI_00005_.png", + "Upscaled_ComfyUI_00087_.png", + "Upscaled_ComfyUI_00180_.png", + "WanVideo2_2_I2V_00001.png", + "WanVideo2_2_I2V_00032.png", + "Xarxan_Dragonborn_FIN.jpg", + "Zen_Realistic_fixed_eyes.png", + "Zen_Realistic_fixed_eyes_hires (1).png", + "Zen_Realistic_fixed_eyes_hires.png", + "Zen\u2019daLureBaenre_DrowElf_FIN.jpg", + "_VFZ6E~U.PNG", + "alpha_curiosity (1).jpg", + "alpha_curiosity.jpg", + "alpha_neutral.jpg", + "amor_fati.jpg", + "angela-021.jpg", + "angela-022.jpg", + "angela-024.jpg", + "angela-025.jpg", + "angela-026.jpg", + "angela-027.jpg", + "angela-028.jpg", + "angela-029.jpg", + "angela-031.jpg", + "angela-032.jpg", + "angela-033.jpg", + "angela-034.jpg", + "angela-035.jpg", + "angela.JPG", + "angelapollock-000.jpg", + "angelapollock-001.jpg", + "angelapollock-002.jpg", + "angelapollock-003.jpg", + "angelapollock-004.jpg", + "angelapollock-005.jpg", + "angelapollock-006.jpg", + "angelapollock-008.jpg", + "angelapollock-009.jpg", + "angelapollock-010.jpg", + "angelapollock-012.jpg", + "angelapollock-013.jpg", + "angelapollock-014.jpg", + "angelapollock-015.jpg", + "angelapollock-016.jpg", + "angelapollock-017.jpg", + "back.png", + "baldurs-gate-3-githyanki-close.jpg", + "baloons.png", + "baselline.png", + "blob-design-shape-with-transparent-background-png.webp", + "c1f03b9e-797b-4148-8e44-792d44f30bdd (1).png", + "comfy_in_1 (1).png", + "comfyworkflows_3e83739d-cb2d-43c3-b137-24ca7146b628.png", + "comfyworkflows_9ec5c8fa-e5f3-43d8-879b-b68d19a826a7.png", + "debug_full_iso_stack_00001_.png", + "drow-slum-beggers-v0-kpp6168ldp4e1.webp", + "end_2.webp", + "ep7 hellsangels_036.jpg", + "epsylon_portrait.jpg", + "example.jpg", + "example.png", + "example_image.jpg", + "example_inpaint (1).png", + "example_inpaint.png", + "example_inpaint_MultiGPU.png", + "example_input.png", + "fennec_girl_sing.png", + "flux faceswap sync pulid WF.jpg", + "flux unet dual_clip vae loaders.jpg", + "flux_fill_inpaint_example.png", + "front.png", + "gamma_full.jpg", + "gamma_head_square.png", + "girl_in_field.png", + "gog.jpg", + "greenmarine_Instagram_model_full_body_shot_of_a_beautiful_woma_2fc63952-c67f-4de1-942e-3c2db52700b5.png", + "groceries.jpg", + "hammer_stage_0_00061_.png", + "hidream_e1.1_example.png", + "hidream_full_example.png", + "human.png", + "hunyuanvideo distorch DEPRECATED (1).jpg", + "hunyuanvideo distorch DEPRECATED.jpg", + "hunyuanvideo distorch DEPRECATED.png", + "images.jpg", + "input_scribble_example.png", + "is-it-real-v0-xn69sg9i975e1.webp", + "is-it-real-v0-yeiqvkhs975e1.webp", + "italbar_This_is_Zen_a_beautiful_drow_female_fighter_from_dungeo.png", + "jan.jpg", + "janpollock-000.jpg", + "janpollock-001 (1).jpg", + "janpollock-001.jpg", + "janpollock-002 (1).jpg", + "janpollock-002.jpg", + "janpollock-003 (1).jpg", + "janpollock-003.jpg", + "janpollock-004 (1).jpg", + "janpollock-004.jpg", + "janpollock-005.jpg", + "janpollock-006 (1).jpg", + "janpollock-006.jpg", + "janpollock-007 (1).jpg", + "janpollock-007.jpg", + "janpollock-009.jpg", + "janpollock-010.jpg", + "janpollock-011.jpg", + "janpollock-012 (1).jpg", + "janpollock-012.jpg", + "kristibentler-006 (1).jpg", + "kristibentler-006.jpg", + "kristibentler-010.jpg", + "kristibentler-011.jpg", + "kristibentler-013.jpg", + "kristibentler-014.jpg", + "kristibentler-020.jpg", + "kristibentler-021.jpg", + "kristibentler-023.jpg", + "kristibentler-024.jpg", + "kristiv4_00046_.png", + "kristiv4_00058_.png", + "kristiv4_00062_.png", + "kristiv4_00066_.png", + "kristiv4_00070_.png", + "kristiv4_00074_.png", + "kristiv4_00078_.png", + "kristiv4_00082_.png", + "kristiv4_00088_.png", + "kristiv4_00100_.png", + "kristiv4_00106_.png", + "left.png", + "lfjj4955gjkc1.webp", + "logo_resize.png", + "lorafix_baseline_00019_.png", + "lorafix_baseline_00094_.png", + "lorafix_control_00001_.png", + "ltxvideo checkpointloadersimple distorch2.jpg", + "m6e5lclqlwdc1.jpeg", + "main_Maddy_spec_v2.png", + "mom_cyra.jpg", + "mom_kristi.jpg", + "mrw7b1x1cjdxdxwkuyvl.webp", + "multigpu_icon (1).png", + "multigpu_icon.png", + "multigpu_icon_2.png", + "nodes.png", + "nurse-chapel-star-trek-strange-new-worlds-s1e3.webp", + "oko_square.jpg", + "photo_2024-03-25_20-25-27.jpg", + "photo_2024-05-16_21-06-28.jpg", + "photo_2024-05-31_11-42-31.jpg", + "photo_2024-07-07_10-22-44.jpg", + "photo_2024-07-21_15-58-39.jpg", + "photo_2024-07-23_14-38-08.jpg", + "photo_2024-07-25_10-56-29.jpg", + "photo_2024-09-02_15-37-29.jpg", + "photo_2024-09-04_09-46-17 (1).jpg", + "photo_2024-09-04_09-46-17.jpg", + "photo_2024-09-22_21-10-01.jpg", + "photo_2024-10-18_15-48-40.jpg", + "photo_2024-10-18_15-48-49.jpg", + "photo_2024-10-19_08-58-44.jpg", + "photo_2024-10-22_17-04-52.jpg", + "photo_2024-11-10_20-30-20 (1).jpg", + "photo_2024-11-10_20-30-20.jpg", + "photo_2024-11-10_20-30-20_1 (1).jpg", + "photo_2024-11-10_20-30-20_1.jpg", + "photo_2024-11-26_20-05-32.jpg", + "photo_2024-11-26_20-09-20.jpg", + "photo_2024-11-26_20-11-21.jpg", + "photo_2024-11-29_10-21-11.jpg", + "photo_2025-07-18_13-53-04.jpg", + "photo_2025-08-03_10-03-14.jpg", + "photo_2025-08-09_19-38-31.jpg", + "photo_2025-08-24_19-19-44.jpg", + "photo_2025-09-05_22-42-57 (2).jpg", + "photo_2025-09-06_10-49-02 (1).jpg", + "photo_2025-09-06_10-49-02.jpg", + "photo_2025-09-06_10-49-03.jpg", + "photo_2025-10-23_14-55-30.jpg", + "qwen_image unet clip distorch2.jpg", + "qwen_image_fp8_benchmark.png", + "s-l1200.webp", + "sample_ninja.png", + "sd15 checkpoint loader simple.jpg", + "sd39l_test.jpg", + "sdxl checkpoint loader advanced.jpg", + "sq00041-2712804307.jpeg", + "start_2.webp", + "study 019.jpg", + "sws-003.jpg", + "thing.png", + "unnamed (1).jpg", + "wan22_14B_flf2v_end_image.png", + "wan22_14B_flf2v_start_image.png", + "wan2_2_benchmark_v2.png" + ], + "image_upload": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_MASK_": [ + "MASK", + { + "display_name": "_1_MASK_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LoadImage_ISO", + "display_name": null, + "description": "", + "category": "image", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LoadImage_ISO" + }, + "SaveImage_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The images to save." + } + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The prefix for the file to save. Supports formatting tokens like %date:yyyy-MM-dd%.", + "default": "ComfyUI", + "multiline": false + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "image", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "The images to save." + } + ], + "filename_prefix": [ + "STRING", + { + "tooltip": "The prefix for the file to save. Supports formatting tokens like %date:yyyy-MM-dd%.", + "default": "ComfyUI", + "multiline": false + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "images", + "filename_prefix" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "The images to save." + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "tooltip": "The prefix for the file to save. Supports formatting tokens like %date:yyyy-MM-dd%.", + "default": "ComfyUI", + "multiline": false + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveImage_ISO", + "display_name": null, + "description": "", + "category": "image", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SaveImage_ISO" + }, + "WanCameraEmbedding_ISO": { + "input_types": { + "required": { + "camera_pose": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "Static", + "multiselect": false, + "options": [ + "Static", + "Pan Up", + "Pan Down", + "Pan Left", + "Pan Right", + "Zoom In", + "Zoom Out", + "Anti Clockwise (ACW)", + "ClockWise (CW)" + ] + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + } + }, + "optional": { + "speed": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0, + "max": 10.0, + "step": 0.1 + } + ] + }, + "fx": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ] + }, + "fy": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ] + }, + "cx": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ] + }, + "cy": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "WAN_CAMERA_EMBEDDING", + "INT", + "INT", + "INT" + ], + "return_names": [ + "camera_embedding", + "width", + "height", + "length" + ], + "function": "EXECUTE_NORMALIZED", + "category": "camera", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "camera_pose": [ + "COMBO", + { + "default": "Static", + "multiselect": false, + "options": [ + "Static", + "Pan Up", + "Pan Down", + "Pan Left", + "Pan Right", + "Zoom In", + "Zoom Out", + "Anti Clockwise (ACW)", + "ClockWise (CW)" + ] + } + ], + "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 + } + ] + }, + "optional": { + "speed": [ + "FLOAT", + { + "default": 1.0, + "min": 0, + "max": 10.0, + "step": 0.1 + } + ], + "fx": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ], + "fy": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ], + "cx": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ], + "cy": [ + "FLOAT", + { + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "camera_pose", + "width", + "height", + "length" + ], + "optional": [ + "speed", + "fx", + "fy", + "cx", + "cy" + ] + }, + "is_input_list": false, + "output": [ + "WAN_CAMERA_EMBEDDING", + "INT", + "INT", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false + ], + "output_name": [ + "camera_embedding", + "width", + "height", + "length" + ], + "output_tooltips": [ + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanCameraEmbedding_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "camera", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "camera_pose": [ + "COMBO", + { + "optional": false, + "default": "Static", + "multiselect": false, + "options": [ + "Static", + "Pan Up", + "Pan Down", + "Pan Left", + "Pan Right", + "Zoom In", + "Zoom Out", + "Anti Clockwise (ACW)", + "ClockWise (CW)" + ] + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "speed": [ + "FLOAT", + { + "optional": true, + "default": 1.0, + "min": 0, + "max": 10.0, + "step": 0.1 + } + ], + "fx": [ + "FLOAT", + { + "optional": true, + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ], + "fy": [ + "FLOAT", + { + "optional": true, + "default": 0.5, + "min": 0, + "max": 1, + "step": 1e-09 + } + ], + "cx": [ + "FLOAT", + { + "optional": true, + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ], + "cy": [ + "FLOAT", + { + "optional": true, + "default": 0.5, + "min": 0, + "max": 1, + "step": 0.01 + } + ] + }, + "output": { + "_0_WAN_CAMERA_EMBEDDING_": [ + "WAN_CAMERA_EMBEDDING", + { + "display_name": "camera_embedding", + "is_output_list": false + } + ], + "_1_INT_": [ + "INT", + { + "display_name": "width", + "is_output_list": false + } + ], + "_2_INT_": [ + "INT", + { + "display_name": "height", + "is_output_list": false + } + ], + "_3_INT_": [ + "INT", + { + "display_name": "length", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanCameraEmbedding_ISO", + "display_name": null, + "description": "", + "category": "camera", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanCameraEmbedding_ISO" + }, + "Canny_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "low_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.4, + "min": 0.01, + "max": 0.99, + "step": 0.01 + } + ] + }, + "high_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.8, + "min": 0.01, + "max": 0.99, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/preprocessors", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Canny_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/preprocessors", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "low_threshold": [ + "FLOAT", + { + "optional": false, + "default": 0.4, + "min": 0.01, + "max": 0.99, + "step": 0.01 + } + ], + "high_threshold": [ + "FLOAT", + { + "optional": false, + "default": 0.8, + "min": 0.01, + "max": 0.99, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Canny_ISO", + "display_name": null, + "description": "", + "category": "image/preprocessors", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Canny_ISO" + }, + "CFGZeroStar_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "patched_model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "patched_model" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CFGZeroStar_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "patched_model", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CFGZeroStar_ISO", + "display_name": null, + "description": "", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CFGZeroStar_ISO" + }, + "CFGNorm_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "patched_model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "strength": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "strength" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "patched_model" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CFGNorm_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "patched_model", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CFGNorm_ISO", + "display_name": null, + "description": "", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CFGNorm_ISO" + }, + "EmptyChromaRadianceLatentImage_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/chroma_radiance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyChromaRadianceLatentImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/chroma_radiance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyChromaRadianceLatentImage_ISO", + "display_name": null, + "description": "", + "category": "latent/chroma_radiance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyChromaRadianceLatentImage_ISO" + }, + "ChromaRadianceOptions_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "preserve_wrapper": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "When enabled, will delegate to an existing model function wrapper if it exists. Generally should be left enabled.", + "default": true + } + ] + }, + "start_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "First sigma that these options will be in effect.", + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ] + }, + "end_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Last sigma that these options will be in effect.", + "default": 0.0, + "min": 0.0, + "max": 1.0 + } + ] + }, + "nerf_tile_size": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Allows overriding the default NeRF tile size. -1 means use the default (32). 0 means use non-tiling mode (may require a lot of VRAM).", + "default": -1, + "min": -1 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/chroma_radiance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "preserve_wrapper": [ + "BOOLEAN", + { + "tooltip": "When enabled, will delegate to an existing model function wrapper if it exists. Generally should be left enabled.", + "default": true + } + ], + "start_sigma": [ + "FLOAT", + { + "tooltip": "First sigma that these options will be in effect.", + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ], + "end_sigma": [ + "FLOAT", + { + "tooltip": "Last sigma that these options will be in effect.", + "default": 0.0, + "min": 0.0, + "max": 1.0 + } + ], + "nerf_tile_size": [ + "INT", + { + "tooltip": "Allows overriding the default NeRF tile size. -1 means use the default (32). 0 means use non-tiling mode (may require a lot of VRAM).", + "default": -1, + "min": -1 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "preserve_wrapper", + "start_sigma", + "end_sigma", + "nerf_tile_size" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ChromaRadianceOptions_ISO", + "display_name": null, + "description": "Allows setting advanced options for the Chroma Radiance model.", + "python_module": null, + "category": "model_patches/chroma_radiance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "preserve_wrapper": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "When enabled, will delegate to an existing model function wrapper if it exists. Generally should be left enabled.", + "default": true + } + ], + "start_sigma": [ + "FLOAT", + { + "optional": false, + "tooltip": "First sigma that these options will be in effect.", + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ], + "end_sigma": [ + "FLOAT", + { + "optional": false, + "tooltip": "Last sigma that these options will be in effect.", + "default": 0.0, + "min": 0.0, + "max": 1.0 + } + ], + "nerf_tile_size": [ + "INT", + { + "optional": false, + "tooltip": "Allows overriding the default NeRF tile size. -1 means use the default (32). 0 means use non-tiling mode (may require a lot of VRAM).", + "default": -1, + "min": -1 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ChromaRadianceOptions_ISO", + "display_name": null, + "description": "Allows setting advanced options for the Chroma Radiance model.", + "category": "model_patches/chroma_radiance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Allows setting advanced options for the Chroma Radiance model.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ChromaRadianceOptions_ISO" + }, + "CLIPTextEncodeSDXLRefiner_ISO": { + "input_types": { + "required": { + "ascore": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 6.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "ascore": [ + "FLOAT", + { + "default": 6.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ], + "width": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "text": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + {} + ] + } + }, + "input_order": { + "required": [ + "ascore", + "width", + "height", + "text", + "clip" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeSDXLRefiner_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "ascore": [ + "FLOAT", + { + "optional": false, + "default": 6.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "text": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeSDXLRefiner_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeSDXLRefiner_ISO" + }, + "CLIPTextEncodeSDXL_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "crop_w": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 16384 + } + ] + }, + "crop_h": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 16384 + } + ] + }, + "target_width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "target_height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "text_g": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "text_l": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "width": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "default": 1024, + "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, + "min": 0, + "max": 16384 + } + ], + "target_height": [ + "INT", + { + "default": 1024, + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeSDXL_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "crop_w": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 16384 + } + ], + "crop_h": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 16384 + } + ], + "target_width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "target_height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "text_g": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "text_l": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeSDXL_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeSDXL_ISO" + }, + "PorterDuffImageComposite_ISO": { + "input_types": { + "required": { + "source": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "source_alpha": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "destination": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "destination_alpha": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "DST", + "multiselect": false, + "options": [ + "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" + ] + } + ] + } + } + }, + "return_types": [ + "IMAGE", + "MASK" + ], + "return_names": [ + "IMAGE", + "MASK" + ], + "function": "EXECUTE_NORMALIZED", + "category": "mask/compositing", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "source": [ + "IMAGE", + {} + ], + "source_alpha": [ + "MASK", + {} + ], + "destination": [ + "IMAGE", + {} + ], + "destination_alpha": [ + "MASK", + {} + ], + "mode": [ + "COMBO", + { + "default": "DST", + "multiselect": false, + "options": [ + "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" + ] + } + ] + } + }, + "input_order": { + "required": [ + "source", + "source_alpha", + "destination", + "destination_alpha", + "mode" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "MASK" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "MASK" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "PorterDuffImageComposite_ISO", + "display_name": "Porter-Duff Image Composite_ISO", + "description": "", + "python_module": null, + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "source": [ + "IMAGE", + { + "optional": false + } + ], + "source_alpha": [ + "MASK", + { + "optional": false + } + ], + "destination": [ + "IMAGE", + { + "optional": false + } + ], + "destination_alpha": [ + "MASK", + { + "optional": false + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "default": "DST", + "multiselect": false, + "options": [ + "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" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_MASK_": [ + "MASK", + { + "display_name": "_1_MASK_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PorterDuffImageComposite_ISO", + "display_name": "Porter-Duff Image Composite_ISO", + "description": "", + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Porter-Duff Image Composite_ISO" + }, + "SplitImageWithAlpha_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE", + "MASK" + ], + "return_names": [ + "IMAGE", + "MASK" + ], + "function": "EXECUTE_NORMALIZED", + "category": "mask/compositing", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "MASK" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "MASK" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "SplitImageWithAlpha_ISO", + "display_name": "Split Image with Alpha_ISO", + "description": "", + "python_module": null, + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_MASK_": [ + "MASK", + { + "display_name": "_1_MASK_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SplitImageWithAlpha_ISO", + "display_name": "Split Image with Alpha_ISO", + "description": "", + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Split Image with Alpha_ISO" + }, + "JoinImageWithAlpha_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "alpha": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "mask/compositing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "alpha": [ + "MASK", + {} + ] + } + }, + "input_order": { + "required": [ + "image", + "alpha" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "JoinImageWithAlpha_ISO", + "display_name": "Join Image with Alpha_ISO", + "description": "", + "python_module": null, + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "alpha": [ + "MASK", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "JoinImageWithAlpha_ISO", + "display_name": "Join Image with Alpha_ISO", + "description": "", + "category": "mask/compositing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Join Image with Alpha_ISO" + }, + "CLIPTextEncodeControlnet_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "conditioning": [ + "CONDITIONING", + {} + ], + "text": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "conditioning", + "text" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeControlnet_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/conditioning", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "text": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeControlnet_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/conditioning", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeControlnet_ISO" + }, + "T5TokenizerOptions_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "min_padding": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ] + }, + "min_length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "CLIP" + ], + "return_names": [ + "CLIP" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "min_padding": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ], + "min_length": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "min_padding", + "min_length" + ] + }, + "is_input_list": false, + "output": [ + "CLIP" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CLIP" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "T5TokenizerOptions_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/conditioning", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "min_padding": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ], + "min_length": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 10000, + "step": 1 + } + ] + }, + "output": { + "_0_CLIP_": [ + "CLIP", + { + "display_name": "_0_CLIP_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "T5TokenizerOptions_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/conditioning", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "T5TokenizerOptions_ISO" + }, + "ContextWindowsManual_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The model to apply context windows to during sampling." + } + ] + }, + "context_length": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The length of the context window.", + "default": 16, + "min": 1 + } + ] + }, + "context_overlap": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The overlap of the context window.", + "default": 4, + "min": 0 + } + ] + }, + "context_schedule": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ] + }, + "context_stride": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ] + }, + "closed_loop": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ] + }, + "fuse_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ] + }, + "dim": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The dimension to apply the context windows to.", + "default": 0, + "min": 0, + "max": 5 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "context", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The model to apply context windows to during sampling." + } + ], + "context_length": [ + "INT", + { + "tooltip": "The length of the context window.", + "default": 16, + "min": 1 + } + ], + "context_overlap": [ + "INT", + { + "tooltip": "The overlap of the context window.", + "default": 4, + "min": 0 + } + ], + "context_schedule": [ + "COMBO", + { + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ], + "context_stride": [ + "INT", + { + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ], + "closed_loop": [ + "BOOLEAN", + { + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ], + "fuse_method": [ + "COMBO", + { + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ], + "dim": [ + "INT", + { + "tooltip": "The dimension to apply the context windows to.", + "default": 0, + "min": 0, + "max": 5 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "context_length", + "context_overlap", + "context_schedule", + "context_stride", + "closed_loop", + "fuse_method", + "dim" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + "The model with context windows applied during sampling." + ], + "output_matchtypes": null, + "name": "ContextWindowsManual_ISO", + "display_name": "Context Windows (Manual)_ISO", + "description": "Manually set context windows.", + "python_module": null, + "category": "context", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The model to apply context windows to during sampling." + } + ], + "context_length": [ + "INT", + { + "optional": false, + "tooltip": "The length of the context window.", + "default": 16, + "min": 1 + } + ], + "context_overlap": [ + "INT", + { + "optional": false, + "tooltip": "The overlap of the context window.", + "default": 4, + "min": 0 + } + ], + "context_schedule": [ + "COMBO", + { + "optional": false, + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ], + "context_stride": [ + "INT", + { + "optional": false, + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ], + "closed_loop": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ], + "fuse_method": [ + "COMBO", + { + "optional": false, + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ], + "dim": [ + "INT", + { + "optional": false, + "tooltip": "The dimension to apply the context windows to.", + "default": 0, + "min": 0, + "max": 5 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "tooltip": "The model with context windows applied during sampling.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ContextWindowsManual_ISO", + "display_name": "Context Windows (Manual)_ISO", + "description": "Manually set context windows.", + "category": "context", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Manually set context windows.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Context Windows (Manual)_ISO" + }, + "WanContextWindowsManual": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The model to apply context windows to during sampling." + } + ] + }, + "context_length": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The length of the context window.", + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "context_overlap": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The overlap of the context window.", + "default": 30, + "min": 0 + } + ] + }, + "context_schedule": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ] + }, + "context_stride": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ] + }, + "closed_loop": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ] + }, + "fuse_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "context", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The model to apply context windows to during sampling." + } + ], + "context_length": [ + "INT", + { + "tooltip": "The length of the context window.", + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "context_overlap": [ + "INT", + { + "tooltip": "The overlap of the context window.", + "default": 30, + "min": 0 + } + ], + "context_schedule": [ + "COMBO", + { + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ], + "context_stride": [ + "INT", + { + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ], + "closed_loop": [ + "BOOLEAN", + { + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ], + "fuse_method": [ + "COMBO", + { + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model", + "context_length", + "context_overlap", + "context_schedule", + "context_stride", + "closed_loop", + "fuse_method" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + "The model with context windows applied during sampling." + ], + "output_matchtypes": null, + "name": "WanContextWindowsManual", + "display_name": "WAN Context Windows (Manual)", + "description": "Manually set context windows for WAN-like models (dim=2).", + "python_module": null, + "category": "context", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The model to apply context windows to during sampling." + } + ], + "context_length": [ + "INT", + { + "optional": false, + "tooltip": "The length of the context window.", + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "context_overlap": [ + "INT", + { + "optional": false, + "tooltip": "The overlap of the context window.", + "default": 30, + "min": 0 + } + ], + "context_schedule": [ + "COMBO", + { + "optional": false, + "tooltip": "The stride of the context window.", + "multiselect": false, + "options": [ + "standard_static", + "standard_uniform", + "looped_uniform", + "batched" + ] + } + ], + "context_stride": [ + "INT", + { + "optional": false, + "tooltip": "The stride of the context window; only applicable to uniform schedules.", + "default": 1, + "min": 1 + } + ], + "closed_loop": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to close the context window loop; only applicable to looped schedules.", + "default": false + } + ], + "fuse_method": [ + "COMBO", + { + "optional": false, + "tooltip": "The method to use to fuse the context windows.", + "default": "pyramid", + "multiselect": false, + "options": [ + "pyramid", + "relative", + "flat", + "overlap-linear" + ] + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "tooltip": "The model with context windows applied during sampling.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanContextWindowsManual", + "display_name": "WAN Context Windows (Manual)", + "description": "Manually set context windows for WAN-like models (dim=2).", + "category": "context", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Manually set context windows for WAN-like models (dim=2).", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WAN Context Windows (Manual)" + }, + "SetUnionControlNetType_ISO": { + "input_types": { + "required": { + "control_net": { + "__pyisolate_tuple__": [ + "CONTROL_NET", + {} + ] + }, + "type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "auto", + "openpose", + "depth", + "hed/pidi/scribble/ted", + "canny/lineart/anime_lineart/mlsd", + "normal", + "segment", + "tile", + "repaint" + ] + } + ] + } + } + }, + "return_types": [ + "CONTROL_NET" + ], + "return_names": [ + "CONTROL_NET" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/controlnet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "control_net": [ + "CONTROL_NET", + {} + ], + "type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "auto", + "openpose", + "depth", + "hed/pidi/scribble/ted", + "canny/lineart/anime_lineart/mlsd", + "normal", + "segment", + "tile", + "repaint" + ] + } + ] + } + }, + "input_order": { + "required": [ + "control_net", + "type" + ] + }, + "is_input_list": false, + "output": [ + "CONTROL_NET" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONTROL_NET" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SetUnionControlNetType_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "control_net": [ + "CONTROL_NET", + { + "optional": false + } + ], + "type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "auto", + "openpose", + "depth", + "hed/pidi/scribble/ted", + "canny/lineart/anime_lineart/mlsd", + "normal", + "segment", + "tile", + "repaint" + ] + } + ] + }, + "output": { + "_0_CONTROL_NET_": [ + "CONTROL_NET", + { + "display_name": "_0_CONTROL_NET_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SetUnionControlNetType_ISO", + "display_name": null, + "description": "", + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SetUnionControlNetType_ISO" + }, + "ControlNetInpaintingAliMamaApply_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "control_net": { + "__pyisolate_tuple__": [ + "CONTROL_NET", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING" + ], + "return_names": [ + "positive", + "negative" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/controlnet", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "negative" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "ControlNetInpaintingAliMamaApply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "control_net": [ + "CONTROL_NET", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "mask": [ + "MASK", + { + "optional": false + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ControlNetInpaintingAliMamaApply_ISO", + "display_name": null, + "description": "", + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ControlNetInpaintingAliMamaApply_ISO" + }, + "EmptyCosmosLatentVideo_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1280, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 704, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 121, + "min": 1, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyCosmosLatentVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1280, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 704, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 121, + "min": 1, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyCosmosLatentVideo_ISO", + "display_name": null, + "description": "", + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyCosmosLatentVideo_ISO" + }, + "CosmosImageToVideoLatent_ISO": { + "input_types": { + "required": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1280, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 704, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 121, + "min": 1, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "end_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/inpaint", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CosmosImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1280, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 704, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 121, + "min": 1, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "end_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CosmosImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CosmosImageToVideoLatent_ISO" + }, + "CosmosPredict2ImageToVideoLatent_ISO": { + "input_types": { + "required": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 93, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "end_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/inpaint", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "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": 93, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CosmosPredict2ImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 93, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "end_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CosmosPredict2ImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CosmosPredict2ImageToVideoLatent_ISO" + }, + "KSampler_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "cfg": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "sampler_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ] + }, + "scheduler": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "linear_quadratic", + "kl_optimal" + ] + } + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "latent_image": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ], + "scheduler": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "linear_quadratic", + "kl_optimal" + ] + } + ], + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "latent_image": [ + "LATENT", + {} + ], + "denoise": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "seed", + "steps", + "cfg", + "sampler_name", + "scheduler", + "positive", + "negative", + "latent_image", + "denoise" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KSampler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "seed": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "cfg": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ], + "sampler_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ], + "scheduler": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "linear_quadratic", + "kl_optimal" + ] + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "latent_image": [ + "LATENT", + { + "optional": false + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "KSampler_ISO", + "display_name": null, + "description": "", + "category": "sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "KSampler_ISO" + }, + "SamplerCustom_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "add_noise": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "noise_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "cfg": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "sampler": { + "__pyisolate_tuple__": [ + "SAMPLER", + {} + ] + }, + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "latent_image": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT", + "LATENT" + ], + "return_names": [ + "output", + "denoised_output" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "LATENT" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "output", + "denoised_output" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "SamplerCustom_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "add_noise": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "noise_seed": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "cfg": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "sampler": [ + "SAMPLER", + { + "optional": false + } + ], + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "latent_image": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "output", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "denoised_output", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerCustom_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerCustom_ISO" + }, + "BasicScheduler_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scheduler": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "linear_quadratic", + "kl_optimal" + ] + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "scheduler": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "BasicScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scheduler": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "simple", + "sgm_uniform", + "karras", + "exponential", + "ddim_uniform", + "beta", + "normal", + "linear_quadratic", + "kl_optimal" + ] + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "BasicScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "BasicScheduler_ISO" + }, + "KarrasScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "sigma_max": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "sigma_min": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "rho": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 7.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KarrasScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "sigma_max": [ + "FLOAT", + { + "optional": false, + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "sigma_min": [ + "FLOAT", + { + "optional": false, + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "rho": [ + "FLOAT", + { + "optional": false, + "default": 7.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "KarrasScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "KarrasScheduler_ISO" + }, + "ExponentialScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "sigma_max": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "sigma_min": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ExponentialScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "sigma_max": [ + "FLOAT", + { + "optional": false, + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "sigma_min": [ + "FLOAT", + { + "optional": false, + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ExponentialScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ExponentialScheduler_ISO" + }, + "PolyexponentialScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "sigma_max": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "sigma_min": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "rho": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PolyexponentialScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "sigma_max": [ + "FLOAT", + { + "optional": false, + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "sigma_min": [ + "FLOAT", + { + "optional": false, + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "rho": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PolyexponentialScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PolyexponentialScheduler_ISO" + }, + "LaplaceScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "sigma_max": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "sigma_min": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "mu": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.1, + "round": false + } + ] + }, + "beta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 10.0, + "step": 0.1, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LaplaceScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "sigma_max": [ + "FLOAT", + { + "optional": false, + "default": 14.614642, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "sigma_min": [ + "FLOAT", + { + "optional": false, + "default": 0.0291675, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "mu": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.1, + "round": false + } + ], + "beta": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": 0.0, + "max": 10.0, + "step": 0.1, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LaplaceScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LaplaceScheduler_ISO" + }, + "VPScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "beta_d": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 19.9, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "beta_min": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.1, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ] + }, + "eps_s": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.001, + "min": 0.0, + "max": 1.0, + "step": 0.0001, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VPScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "beta_d": [ + "FLOAT", + { + "optional": false, + "default": 19.9, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "beta_min": [ + "FLOAT", + { + "optional": false, + "default": 0.1, + "min": 0.0, + "max": 5000.0, + "step": 0.01, + "round": false + } + ], + "eps_s": [ + "FLOAT", + { + "optional": false, + "default": 0.001, + "min": 0.0, + "max": 1.0, + "step": 0.0001, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "VPScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "VPScheduler_ISO" + }, + "BetaSamplingScheduler_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "alpha": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.6, + "min": 0.0, + "max": 50.0, + "step": 0.01, + "round": false + } + ] + }, + "beta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.6, + "min": 0.0, + "max": 50.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "BetaSamplingScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "alpha": [ + "FLOAT", + { + "optional": false, + "default": 0.6, + "min": 0.0, + "max": 50.0, + "step": 0.01, + "round": false + } + ], + "beta": [ + "FLOAT", + { + "optional": false, + "default": 0.6, + "min": 0.0, + "max": 50.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "BetaSamplingScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "BetaSamplingScheduler_ISO" + }, + "SDTurboScheduler_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 10 + } + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SDTurboScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 10 + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SDTurboScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SDTurboScheduler_ISO" + }, + "KSamplerSelect_ISO": { + "input_types": { + "required": { + "sampler_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "sampler_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ] + } + }, + "input_order": { + "required": [ + "sampler_name" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KSamplerSelect_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sampler_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "euler", + "euler_cfg_pp", + "euler_ancestral", + "euler_ancestral_cfg_pp", + "heun", + "heunpp2", + "exp_heun_2_x0", + "exp_heun_2_x0_sde", + "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_2m_sde_heun", + "dpmpp_2m_sde_heun_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", + "gradient_estimation_cfg_pp", + "er_sde", + "seeds_2", + "seeds_3", + "sa_solver", + "sa_solver_pece", + "ddim", + "uni_pc", + "uni_pc_bh2" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "KSamplerSelect_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "KSamplerSelect_ISO" + }, + "SamplerEulerAncestral_ISO": { + "input_types": { + "required": { + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerEulerAncestral_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerEulerAncestral_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerEulerAncestral_ISO" + }, + "SamplerEulerAncestralCFGPP_ISO": { + "input_types": { + "required": { + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerEulerAncestralCFGPP_ISO", + "display_name": "SamplerEulerAncestralCFG++_ISO", + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerEulerAncestralCFGPP_ISO", + "display_name": "SamplerEulerAncestralCFG++_ISO", + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerEulerAncestralCFG++_ISO" + }, + "SamplerLMS_ISO": { + "input_types": { + "required": { + "order": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 4, + "min": 1, + "max": 100 + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "order": [ + "INT", + { + "default": 4, + "min": 1, + "max": 100 + } + ] + } + }, + "input_order": { + "required": [ + "order" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerLMS_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "order": [ + "INT", + { + "optional": false, + "default": 4, + "min": 1, + "max": 100 + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerLMS_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerLMS_ISO" + }, + "SamplerDPMPP_3M_SDE_ISO": { + "input_types": { + "required": { + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "noise_device": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + }, + "input_order": { + "required": [ + "eta", + "s_noise", + "noise_device" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerDPMPP_3M_SDE_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "noise_device": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerDPMPP_3M_SDE_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerDPMPP_3M_SDE_ISO" + }, + "SamplerDPMPP_2M_SDE_ISO": { + "input_types": { + "required": { + "solver_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "midpoint", + "heun" + ] + } + ] + }, + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "noise_device": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "solver_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + }, + "input_order": { + "required": [ + "solver_type", + "eta", + "s_noise", + "noise_device" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerDPMPP_2M_SDE_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "solver_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "midpoint", + "heun" + ] + } + ], + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "noise_device": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerDPMPP_2M_SDE_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerDPMPP_2M_SDE_ISO" + }, + "SamplerDPMPP_SDE_ISO": { + "input_types": { + "required": { + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "r": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "noise_device": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + } + }, + "input_order": { + "required": [ + "eta", + "s_noise", + "r", + "noise_device" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerDPMPP_SDE_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "r": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "noise_device": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "gpu", + "cpu" + ] + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerDPMPP_SDE_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerDPMPP_SDE_ISO" + }, + "SamplerDPMPP_2S_Ancestral_ISO": { + "input_types": { + "required": { + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerDPMPP_2S_Ancestral_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerDPMPP_2S_Ancestral_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerDPMPP_2S_Ancestral_ISO" + }, + "SamplerDPMAdaptative_ISO": { + "input_types": { + "required": { + "order": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 2, + "max": 3 + } + ] + }, + "rtol": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.05, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "atol": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0078, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "h_init": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.05, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "pcoeff": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "icoeff": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "dcoeff": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "accept_safety": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.81, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerDPMAdaptative_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "order": [ + "INT", + { + "optional": false, + "default": 3, + "min": 2, + "max": 3 + } + ], + "rtol": [ + "FLOAT", + { + "optional": false, + "default": 0.05, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "atol": [ + "FLOAT", + { + "optional": false, + "default": 0.0078, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "h_init": [ + "FLOAT", + { + "optional": false, + "default": 0.05, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "pcoeff": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "icoeff": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "dcoeff": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "accept_safety": [ + "FLOAT", + { + "optional": false, + "default": 0.81, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "eta": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerDPMAdaptative_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerDPMAdaptative_ISO" + }, + "SamplerER_SDE_ISO": { + "input_types": { + "required": { + "solver_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ER-SDE", + "Reverse-time SDE", + "ODE" + ] + } + ] + }, + "max_stage": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 1, + "max": 3 + } + ] + }, + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Stochastic strength of reverse-time SDE.\nWhen eta=0, it reduces to deterministic ODE. This setting doesn't apply to ER-SDE solver type.", + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "solver_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ER-SDE", + "Reverse-time SDE", + "ODE" + ] + } + ], + "max_stage": [ + "INT", + { + "default": 3, + "min": 1, + "max": 3 + } + ], + "eta": [ + "FLOAT", + { + "tooltip": "Stochastic strength of reverse-time SDE.\nWhen eta=0, it reduces to deterministic ODE. This setting doesn't apply to ER-SDE solver type.", + "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": [ + "solver_type", + "max_stage", + "eta", + "s_noise" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerER_SDE_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "solver_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "ER-SDE", + "Reverse-time SDE", + "ODE" + ] + } + ], + "max_stage": [ + "INT", + { + "optional": false, + "default": 3, + "min": 1, + "max": 3 + } + ], + "eta": [ + "FLOAT", + { + "optional": false, + "tooltip": "Stochastic strength of reverse-time SDE.\nWhen eta=0, it reduces to deterministic ODE. This setting doesn't apply to ER-SDE solver type.", + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerER_SDE_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerER_SDE_ISO" + }, + "SamplerSASolver_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "eta": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01, + "round": false + } + ] + }, + "sde_start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.2, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "sde_end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.8, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "s_noise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ] + }, + "predictor_order": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 1, + "max": 6 + } + ] + }, + "corrector_order": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 4, + "min": 0, + "max": 6 + } + ] + }, + "use_pece": { + "__pyisolate_tuple__": [ + "BOOLEAN", + {} + ] + }, + "simple_order_2": { + "__pyisolate_tuple__": [ + "BOOLEAN", + {} + ] + } + } + }, + "return_types": [ + "SAMPLER" + ], + "return_names": [ + "SAMPLER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "eta": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01, + "round": false + } + ], + "sde_start_percent": [ + "FLOAT", + { + "default": 0.2, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "sde_end_percent": [ + "FLOAT", + { + "default": 0.8, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "s_noise": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "predictor_order": [ + "INT", + { + "default": 3, + "min": 1, + "max": 6 + } + ], + "corrector_order": [ + "INT", + { + "default": 4, + "min": 0, + "max": 6 + } + ], + "use_pece": [ + "BOOLEAN", + {} + ], + "simple_order_2": [ + "BOOLEAN", + {} + ] + } + }, + "input_order": { + "required": [ + "model", + "eta", + "sde_start_percent", + "sde_end_percent", + "s_noise", + "predictor_order", + "corrector_order", + "use_pece", + "simple_order_2" + ] + }, + "is_input_list": false, + "output": [ + "SAMPLER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SAMPLER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplerSASolver_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "eta": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01, + "round": false + } + ], + "sde_start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.2, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "sde_end_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.8, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "s_noise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": false + } + ], + "predictor_order": [ + "INT", + { + "optional": false, + "default": 3, + "min": 1, + "max": 6 + } + ], + "corrector_order": [ + "INT", + { + "optional": false, + "default": 4, + "min": 0, + "max": 6 + } + ], + "use_pece": [ + "BOOLEAN", + { + "optional": false + } + ], + "simple_order_2": [ + "BOOLEAN", + { + "optional": false + } + ] + }, + "output": { + "_0_SAMPLER_": [ + "SAMPLER", + { + "display_name": "_0_SAMPLER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerSASolver_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/samplers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerSASolver_ISO" + }, + "SplitSigmas_ISO": { + "input_types": { + "required": { + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "step": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000 + } + ] + } + } + }, + "return_types": [ + "SIGMAS", + "SIGMAS" + ], + "return_names": [ + "high_sigmas", + "low_sigmas" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "sigmas": [ + "SIGMAS", + {} + ], + "step": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10000 + } + ] + } + }, + "input_order": { + "required": [ + "sigmas", + "step" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS", + "SIGMAS" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "high_sigmas", + "low_sigmas" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "SplitSigmas_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "step": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 10000 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "high_sigmas", + "is_output_list": false + } + ], + "_1_SIGMAS_": [ + "SIGMAS", + { + "display_name": "low_sigmas", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SplitSigmas_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SplitSigmas_ISO" + }, + "SplitSigmasDenoise_ISO": { + "input_types": { + "required": { + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS", + "SIGMAS" + ], + "return_names": [ + "high_sigmas", + "low_sigmas" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "sigmas": [ + "SIGMAS", + {} + ], + "denoise": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "sigmas", + "denoise" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS", + "SIGMAS" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "high_sigmas", + "low_sigmas" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "SplitSigmasDenoise_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "high_sigmas", + "is_output_list": false + } + ], + "_1_SIGMAS_": [ + "SIGMAS", + { + "display_name": "low_sigmas", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SplitSigmasDenoise_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SplitSigmasDenoise_ISO" + }, + "FlipSigmas_ISO": { + "input_types": { + "required": { + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "sigmas": [ + "SIGMAS", + {} + ] + } + }, + "input_order": { + "required": [ + "sigmas" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FlipSigmas_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FlipSigmas_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FlipSigmas_ISO" + }, + "SetFirstSigma_ISO": { + "input_types": { + "required": { + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 136.0, + "min": 0.0, + "max": 20000.0, + "step": 0.001, + "round": false + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SetFirstSigma_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "sigma": [ + "FLOAT", + { + "optional": false, + "default": 136.0, + "min": 0.0, + "max": 20000.0, + "step": 0.001, + "round": false + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SetFirstSigma_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SetFirstSigma_ISO" + }, + "ExtendIntermediateSigmas_ISO": { + "input_types": { + "required": { + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 2, + "min": 1, + "max": 100 + } + ] + }, + "start_at_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": -1.0, + "min": -1.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ] + }, + "end_at_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 12.0, + "min": 0.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ] + }, + "spacing": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "linear", + "cosine", + "sine" + ] + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "sigmas": [ + "SIGMAS", + {} + ], + "steps": [ + "INT", + { + "default": 2, + "min": 1, + "max": 100 + } + ], + "start_at_sigma": [ + "FLOAT", + { + "default": -1.0, + "min": -1.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ], + "end_at_sigma": [ + "FLOAT", + { + "default": 12.0, + "min": 0.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ], + "spacing": [ + "COMBO", + { + "multiselect": false, + "options": [ + "linear", + "cosine", + "sine" + ] + } + ] + } + }, + "input_order": { + "required": [ + "sigmas", + "steps", + "start_at_sigma", + "end_at_sigma", + "spacing" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ExtendIntermediateSigmas_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 2, + "min": 1, + "max": 100 + } + ], + "start_at_sigma": [ + "FLOAT", + { + "optional": false, + "default": -1.0, + "min": -1.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ], + "end_at_sigma": [ + "FLOAT", + { + "optional": false, + "default": 12.0, + "min": 0.0, + "max": 20000.0, + "step": 0.01, + "round": false + } + ], + "spacing": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "linear", + "cosine", + "sine" + ] + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ExtendIntermediateSigmas_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ExtendIntermediateSigmas_ISO" + }, + "SamplingPercentToSigma_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "sampling_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.0001 + } + ] + }, + "return_actual_sigma": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Return the actual sigma value instead of the value used for interval checks.\nThis only affects results at 0.0 and 1.0.", + "default": false + } + ] + } + } + }, + "return_types": [ + "FLOAT" + ], + "return_names": [ + "sigma_value" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "sampling_percent": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.0001 + } + ], + "return_actual_sigma": [ + "BOOLEAN", + { + "tooltip": "Return the actual sigma value instead of the value used for interval checks.\nThis only affects results at 0.0 and 1.0.", + "default": false + } + ] + } + }, + "input_order": { + "required": [ + "model", + "sampling_percent", + "return_actual_sigma" + ] + }, + "is_input_list": false, + "output": [ + "FLOAT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "sigma_value" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SamplingPercentToSigma_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "sampling_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.0001 + } + ], + "return_actual_sigma": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Return the actual sigma value instead of the value used for interval checks.\nThis only affects results at 0.0 and 1.0.", + "default": false + } + ] + }, + "output": { + "_0_FLOAT_": [ + "FLOAT", + { + "display_name": "sigma_value", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplingPercentToSigma_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/sigmas", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplingPercentToSigma_ISO" + }, + "CFGGuider_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "cfg": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + } + } + }, + "return_types": [ + "GUIDER" + ], + "return_names": [ + "GUIDER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "GUIDER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "GUIDER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CFGGuider_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "cfg": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "output": { + "_0_GUIDER_": [ + "GUIDER", + { + "display_name": "_0_GUIDER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CFGGuider_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CFGGuider_ISO" + }, + "DualCFGGuider_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "cond1": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "cond2": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "cfg_conds": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "cfg_cond2_negative": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "style": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "regular", + "nested" + ] + } + ] + } + } + }, + "return_types": [ + "GUIDER" + ], + "return_names": [ + "GUIDER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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 + } + ], + "style": [ + "COMBO", + { + "multiselect": false, + "options": [ + "regular", + "nested" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model", + "cond1", + "cond2", + "negative", + "cfg_conds", + "cfg_cond2_negative", + "style" + ] + }, + "is_input_list": false, + "output": [ + "GUIDER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "GUIDER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "DualCFGGuider_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "cond1": [ + "CONDITIONING", + { + "optional": false + } + ], + "cond2": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "cfg_conds": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ], + "cfg_cond2_negative": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ], + "style": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "regular", + "nested" + ] + } + ] + }, + "output": { + "_0_GUIDER_": [ + "GUIDER", + { + "display_name": "_0_GUIDER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "DualCFGGuider_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "DualCFGGuider_ISO" + }, + "BasicGuider_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + } + } + }, + "return_types": [ + "GUIDER" + ], + "return_names": [ + "GUIDER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "conditioning": [ + "CONDITIONING", + {} + ] + } + }, + "input_order": { + "required": [ + "model", + "conditioning" + ] + }, + "is_input_list": false, + "output": [ + "GUIDER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "GUIDER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "BasicGuider_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ] + }, + "output": { + "_0_GUIDER_": [ + "GUIDER", + { + "display_name": "_0_GUIDER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "BasicGuider_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/guiders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "BasicGuider_ISO" + }, + "RandomNoise_ISO": { + "input_types": { + "required": { + "noise_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + } + }, + "return_types": [ + "NOISE" + ], + "return_names": [ + "NOISE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/noise", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "noise_seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "input_order": { + "required": [ + "noise_seed" + ] + }, + "is_input_list": false, + "output": [ + "NOISE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "NOISE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RandomNoise_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "noise_seed": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "output": { + "_0_NOISE_": [ + "NOISE", + { + "display_name": "_0_NOISE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RandomNoise_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "RandomNoise_ISO" + }, + "DisableNoise_ISO": { + "input_types": { + "required": {} + }, + "return_types": [ + "NOISE" + ], + "return_names": [ + "NOISE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/noise", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "NOISE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "NOISE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "DisableNoise_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "_0_NOISE_": [ + "NOISE", + { + "display_name": "_0_NOISE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "DisableNoise_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "DisableNoise_ISO" + }, + "AddNoise_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "noise": { + "__pyisolate_tuple__": [ + "NOISE", + {} + ] + }, + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "latent_image": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/custom_sampling/noise", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "noise": [ + "NOISE", + {} + ], + "sigmas": [ + "SIGMAS", + {} + ], + "latent_image": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "model", + "noise", + "sigmas", + "latent_image" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "AddNoise_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "noise": [ + "NOISE", + { + "optional": false + } + ], + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "latent_image": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "AddNoise_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/custom_sampling/noise", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "AddNoise_ISO" + }, + "SamplerCustomAdvanced_ISO": { + "input_types": { + "required": { + "noise": { + "__pyisolate_tuple__": [ + "NOISE", + {} + ] + }, + "guider": { + "__pyisolate_tuple__": [ + "GUIDER", + {} + ] + }, + "sampler": { + "__pyisolate_tuple__": [ + "SAMPLER", + {} + ] + }, + "sigmas": { + "__pyisolate_tuple__": [ + "SIGMAS", + {} + ] + }, + "latent_image": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT", + "LATENT" + ], + "return_names": [ + "output", + "denoised_output" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "noise": [ + "NOISE", + {} + ], + "guider": [ + "GUIDER", + {} + ], + "sampler": [ + "SAMPLER", + {} + ], + "sigmas": [ + "SIGMAS", + {} + ], + "latent_image": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "noise", + "guider", + "sampler", + "sigmas", + "latent_image" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "LATENT" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "output", + "denoised_output" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "SamplerCustomAdvanced_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "noise": [ + "NOISE", + { + "optional": false + } + ], + "guider": [ + "GUIDER", + { + "optional": false + } + ], + "sampler": [ + "SAMPLER", + { + "optional": false + } + ], + "sigmas": [ + "SIGMAS", + { + "optional": false + } + ], + "latent_image": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "output", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "denoised_output", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SamplerCustomAdvanced_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SamplerCustomAdvanced_ISO" + }, + "LoadImageDataSetFromFolder_ISO": { + "input_types": { + "required": { + "folder": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "folder": [ + "COMBO", + { + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + } + }, + "input_order": { + "required": [ + "folder" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + true + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "List of loaded images" + ], + "output_matchtypes": null, + "name": "LoadImageDataSetFromFolder_ISO", + "display_name": "Load Image Dataset from Folder_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "folder": [ + "COMBO", + { + "optional": false, + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "List of loaded images", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "LoadImageDataSetFromFolder_ISO", + "display_name": "Load Image Dataset from Folder_ISO", + "description": "", + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Image Dataset from Folder_ISO" + }, + "LoadImageTextDataSetFromFolder_ISO": { + "input_types": { + "required": { + "folder": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + } + } + }, + "return_types": [ + "IMAGE", + "STRING" + ], + "return_names": [ + "images", + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": false, + "output_is_list": [ + true, + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "folder": [ + "COMBO", + { + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + } + }, + "input_order": { + "required": [ + "folder" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "STRING" + ], + "output_is_list": [ + true, + true + ], + "output_name": [ + "images", + "texts" + ], + "output_tooltips": [ + "List of loaded images", + "List of text captions" + ], + "output_matchtypes": null, + "name": "LoadImageTextDataSetFromFolder_ISO", + "display_name": "Load Image and Text Dataset from Folder_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "folder": [ + "COMBO", + { + "optional": false, + "tooltip": "The folder to load images from.", + "multiselect": false, + "options": [ + "3d", + "clipspace", + "pasted" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "List of loaded images", + "is_output_list": true + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "List of text captions", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "LoadImageTextDataSetFromFolder_ISO", + "display_name": "Load Image and Text Dataset from Folder_ISO", + "description": "", + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Image and Text Dataset from Folder_ISO" + }, + "SaveImageDataSetToFolder_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to save." + } + ] + }, + "folder_name": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to save." + } + ], + "folder_name": [ + "STRING", + { + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ], + "filename_prefix": [ + "STRING", + { + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "images", + "folder_name", + "filename_prefix" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": true, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveImageDataSetToFolder_ISO", + "display_name": "Save Image Dataset to Folder_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to save." + } + ], + "folder_name": [ + "STRING", + { + "optional": false, + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveImageDataSetToFolder_ISO", + "display_name": "Save Image Dataset to Folder_ISO", + "description": "", + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Save Image Dataset to Folder_ISO" + }, + "SaveImageTextDataSetToFolder_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to save." + } + ] + }, + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "List of text captions to save.", + "multiline": false + } + ] + }, + "folder_name": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to save." + } + ], + "texts": [ + "STRING", + { + "tooltip": "List of text captions to save.", + "multiline": false + } + ], + "folder_name": [ + "STRING", + { + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ], + "filename_prefix": [ + "STRING", + { + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "images", + "texts", + "folder_name", + "filename_prefix" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": true, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveImageTextDataSetToFolder_ISO", + "display_name": "Save Image and Text Dataset to Folder_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to save." + } + ], + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "List of text captions to save.", + "multiline": false + } + ], + "folder_name": [ + "STRING", + { + "optional": false, + "tooltip": "Name of the folder to save images to (inside output directory).", + "default": "dataset", + "multiline": false + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "tooltip": "Prefix for saved image filenames.", + "default": "image", + "multiline": false + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveImageTextDataSetToFolder_ISO", + "display_name": "Save Image and Text Dataset to Folder_ISO", + "description": "", + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Save Image and Text Dataset to Folder_ISO" + }, + "ResizeImagesByShorterEdge_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "shorter_edge": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Target length for the shorter edge.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "shorter_edge": [ + "INT", + { + "tooltip": "Target length for the shorter edge.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "shorter_edge" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "ResizeImagesByShorterEdge_ISO", + "display_name": "Resize Images by Shorter Edge", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "shorter_edge": [ + "INT", + { + "optional": false, + "tooltip": "Target length for the shorter edge.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ResizeImagesByShorterEdge_ISO", + "display_name": "Resize Images by Shorter Edge", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Resize Images by Shorter Edge" + }, + "ResizeImagesByLongerEdge_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "longer_edge": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Target length for the longer edge.", + "default": 1024, + "min": 1, + "max": 8192 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "longer_edge": [ + "INT", + { + "tooltip": "Target length for the longer edge.", + "default": 1024, + "min": 1, + "max": 8192 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "longer_edge" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "ResizeImagesByLongerEdge_ISO", + "display_name": "Resize Images by Longer Edge", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "longer_edge": [ + "INT", + { + "optional": false, + "tooltip": "Target length for the longer edge.", + "default": 1024, + "min": 1, + "max": 8192 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ResizeImagesByLongerEdge_ISO", + "display_name": "Resize Images by Longer Edge", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Resize Images by Longer Edge" + }, + "CenterCropImages_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "width": [ + "INT", + { + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "height": [ + "INT", + { + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "width", + "height" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "CenterCropImages_ISO", + "display_name": "Center Crop Images", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "width": [ + "INT", + { + "optional": false, + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "height": [ + "INT", + { + "optional": false, + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CenterCropImages_ISO", + "display_name": "Center Crop Images", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Center Crop Images" + }, + "RandomCropImages_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "width": [ + "INT", + { + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "height": [ + "INT", + { + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "width", + "height", + "seed" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "RandomCropImages_ISO", + "display_name": "Random Crop Images", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "width": [ + "INT", + { + "optional": false, + "tooltip": "Crop width.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "height": [ + "INT", + { + "optional": false, + "tooltip": "Crop height.", + "default": 512, + "min": 1, + "max": 8192 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RandomCropImages_ISO", + "display_name": "Random Crop Images", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Random Crop Images" + }, + "NormalizeImages_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "mean": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Mean value for normalization.", + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ] + }, + "std": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Standard deviation for normalization.", + "default": 0.5, + "min": 0.001, + "max": 1.0 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "mean": [ + "FLOAT", + { + "tooltip": "Mean value for normalization.", + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "std": [ + "FLOAT", + { + "tooltip": "Standard deviation for normalization.", + "default": 0.5, + "min": 0.001, + "max": 1.0 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "mean", + "std" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "NormalizeImages_ISO", + "display_name": "Normalize Images", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "mean": [ + "FLOAT", + { + "optional": false, + "tooltip": "Mean value for normalization.", + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "std": [ + "FLOAT", + { + "optional": false, + "tooltip": "Standard deviation for normalization.", + "default": 0.5, + "min": 0.001, + "max": 1.0 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "NormalizeImages_ISO", + "display_name": "Normalize Images", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Normalize Images" + }, + "AdjustBrightness_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "factor": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Brightness factor. 1.0 = no change, <1.0 = darker, >1.0 = brighter.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "factor": [ + "FLOAT", + { + "tooltip": "Brightness factor. 1.0 = no change, <1.0 = darker, >1.0 = brighter.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "factor" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "AdjustBrightness_ISO", + "display_name": "Adjust Brightness", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "factor": [ + "FLOAT", + { + "optional": false, + "tooltip": "Brightness factor. 1.0 = no change, <1.0 = darker, >1.0 = brighter.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "AdjustBrightness_ISO", + "display_name": "Adjust Brightness", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Adjust Brightness" + }, + "AdjustContrast_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ] + }, + "factor": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Contrast factor. 1.0 = no change, <1.0 = less contrast, >1.0 = more contrast.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "Image to process." + } + ], + "factor": [ + "FLOAT", + { + "tooltip": "Contrast factor. 1.0 = no change, <1.0 = less contrast, >1.0 = more contrast.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "factor" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "AdjustContrast_ISO", + "display_name": "Adjust Contrast", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to process." + } + ], + "factor": [ + "FLOAT", + { + "optional": false, + "tooltip": "Contrast factor. 1.0 = no change, <1.0 = less contrast, >1.0 = more contrast.", + "default": 1.0, + "min": 0.0, + "max": 2.0 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "AdjustContrast_ISO", + "display_name": "Adjust Contrast", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Adjust Contrast" + }, + "ShuffleDataset_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "seed" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE" + ], + "output_is_list": [ + true + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "ShuffleDataset_ISO", + "display_name": "Shuffle Image Dataset", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to process." + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "ShuffleDataset_ISO", + "display_name": "Shuffle Image Dataset", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Shuffle Image Dataset" + }, + "ShuffleImageTextDataset_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to shuffle." + } + ] + }, + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "List of texts to shuffle.", + "multiline": false + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + } + }, + "return_types": [ + "IMAGE", + "STRING" + ], + "return_names": [ + "images", + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + true, + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to shuffle." + } + ], + "texts": [ + "STRING", + { + "tooltip": "List of texts to shuffle.", + "multiline": false + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "texts", + "seed" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE", + "STRING" + ], + "output_is_list": [ + true, + true + ], + "output_name": [ + "images", + "texts" + ], + "output_tooltips": [ + "Shuffled images", + "Shuffled texts" + ], + "output_matchtypes": null, + "name": "ShuffleImageTextDataset_ISO", + "display_name": "Shuffle Image-Text Dataset_ISO", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to shuffle." + } + ], + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "List of texts to shuffle.", + "multiline": false + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Shuffled images", + "is_output_list": true + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Shuffled texts", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "ShuffleImageTextDataset_ISO", + "display_name": "Shuffle Image-Text Dataset_ISO", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Shuffle Image-Text Dataset_ISO" + }, + "TextToLowercase_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "TextToLowercase_ISO", + "display_name": "Text to Lowercase", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "TextToLowercase_ISO", + "display_name": "Text to Lowercase", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Text to Lowercase" + }, + "TextToUppercase_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "TextToUppercase_ISO", + "display_name": "Text to Uppercase", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "TextToUppercase_ISO", + "display_name": "Text to Uppercase", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Text to Uppercase" + }, + "TruncateText_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "max_length": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Maximum text length.", + "default": 77, + "min": 1, + "max": 10000 + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ], + "max_length": [ + "INT", + { + "tooltip": "Maximum text length.", + "default": 77, + "min": 1, + "max": 10000 + } + ] + } + }, + "input_order": { + "required": [ + "texts", + "max_length" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "TruncateText_ISO", + "display_name": "Truncate Text", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ], + "max_length": [ + "INT", + { + "optional": false, + "tooltip": "Maximum text length.", + "default": 77, + "min": 1, + "max": 10000 + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "TruncateText_ISO", + "display_name": "Truncate Text", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Truncate Text" + }, + "AddTextPrefix_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prefix to add.", + "default": "", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ], + "prefix": [ + "STRING", + { + "tooltip": "Prefix to add.", + "default": "", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts", + "prefix" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "AddTextPrefix_ISO", + "display_name": "Add Text Prefix", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ], + "prefix": [ + "STRING", + { + "optional": false, + "tooltip": "Prefix to add.", + "default": "", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "AddTextPrefix_ISO", + "display_name": "Add Text Prefix", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Add Text Prefix" + }, + "AddTextSuffix_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "suffix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Suffix to add.", + "default": "", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ], + "suffix": [ + "STRING", + { + "tooltip": "Suffix to add.", + "default": "", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts", + "suffix" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "AddTextSuffix_ISO", + "display_name": "Add Text Suffix", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ], + "suffix": [ + "STRING", + { + "optional": false, + "tooltip": "Suffix to add.", + "default": "", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "AddTextSuffix_ISO", + "display_name": "Add Text Suffix", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Add Text Suffix" + }, + "ReplaceText_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "find": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to find.", + "default": "", + "multiline": false + } + ] + }, + "replace": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to replace with.", + "default": "", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ], + "find": [ + "STRING", + { + "tooltip": "Text to find.", + "default": "", + "multiline": false + } + ], + "replace": [ + "STRING", + { + "tooltip": "Text to replace with.", + "default": "", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts", + "find", + "replace" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "ReplaceText_ISO", + "display_name": "Replace Text", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ], + "find": [ + "STRING", + { + "optional": false, + "tooltip": "Text to find.", + "default": "", + "multiline": false + } + ], + "replace": [ + "STRING", + { + "optional": false, + "tooltip": "Text to replace with.", + "default": "", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "ReplaceText_ISO", + "display_name": "Replace Text", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Replace Text" + }, + "StripWhitespace_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "Text to process.", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "StripWhitespace_ISO", + "display_name": "Strip Whitespace", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "Text to process.", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "StripWhitespace_ISO", + "display_name": "Strip Whitespace", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Strip Whitespace" + }, + "ImageDeduplication_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ] + }, + "similarity_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Similarity threshold (0-1). Higher means more similar. Images above this threshold are considered duplicates.", + "default": 0.95, + "min": 0.0, + "max": 1.0 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ], + "similarity_threshold": [ + "FLOAT", + { + "tooltip": "Similarity threshold (0-1). Higher means more similar. Images above this threshold are considered duplicates.", + "default": 0.95, + "min": 0.0, + "max": 1.0 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "similarity_threshold" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE" + ], + "output_is_list": [ + true + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "ImageDeduplication_ISO", + "display_name": "Image Deduplication", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to process." + } + ], + "similarity_threshold": [ + "FLOAT", + { + "optional": false, + "tooltip": "Similarity threshold (0-1). Higher means more similar. Images above this threshold are considered duplicates.", + "default": 0.95, + "min": 0.0, + "max": 1.0 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "ImageDeduplication_ISO", + "display_name": "Image Deduplication", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Image Deduplication" + }, + "ImageGrid_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ] + }, + "columns": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of columns in the grid.", + "default": 4, + "min": 1, + "max": 20 + } + ] + }, + "cell_width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Width of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ] + }, + "cell_height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Height of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ] + }, + "padding": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Padding between images.", + "default": 4, + "min": 0, + "max": 50 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ], + "columns": [ + "INT", + { + "tooltip": "Number of columns in the grid.", + "default": 4, + "min": 1, + "max": 20 + } + ], + "cell_width": [ + "INT", + { + "tooltip": "Width of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ], + "cell_height": [ + "INT", + { + "tooltip": "Height of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ], + "padding": [ + "INT", + { + "tooltip": "Padding between images.", + "default": 4, + "min": 0, + "max": 50 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "columns", + "cell_width", + "cell_height", + "padding" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "ImageGrid_ISO", + "display_name": "Image Grid", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to process." + } + ], + "columns": [ + "INT", + { + "optional": false, + "tooltip": "Number of columns in the grid.", + "default": 4, + "min": 1, + "max": 20 + } + ], + "cell_width": [ + "INT", + { + "optional": false, + "tooltip": "Width of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ], + "cell_height": [ + "INT", + { + "optional": false, + "tooltip": "Height of each cell in the grid.", + "default": 256, + "min": 32, + "max": 2048 + } + ], + "padding": [ + "INT", + { + "optional": false, + "tooltip": "Padding between images.", + "default": 4, + "min": 0, + "max": 50 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageGrid_ISO", + "display_name": "Image Grid", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Image Grid" + }, + "MergeImageLists_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "images" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/image", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to process." + } + ] + } + }, + "input_order": { + "required": [ + "images" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE" + ], + "output_is_list": [ + true + ], + "output_name": [ + "images" + ], + "output_tooltips": [ + "Processed images" + ], + "output_matchtypes": null, + "name": "MergeImageLists_ISO", + "display_name": "Merge Image Lists", + "description": "", + "python_module": null, + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to process." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "tooltip": "Processed images", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "MergeImageLists_ISO", + "display_name": "Merge Image Lists", + "description": "", + "category": "dataset/image", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Merge Image Lists" + }, + "MergeTextLists_ISO": { + "input_types": { + "required": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "List of texts to process.", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "texts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset/text", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "texts": [ + "STRING", + { + "tooltip": "List of texts to process.", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "texts" + ] + }, + "is_input_list": true, + "output": [ + "STRING" + ], + "output_is_list": [ + null + ], + "output_name": [ + "texts" + ], + "output_tooltips": [ + "Processed texts" + ], + "output_matchtypes": null, + "name": "MergeTextLists_ISO", + "display_name": "Merge Text Lists", + "description": "", + "python_module": null, + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "texts": [ + "STRING", + { + "optional": false, + "tooltip": "List of texts to process.", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "texts", + "tooltip": "Processed texts" + } + ] + }, + "hidden": [], + "name": "MergeTextLists_ISO", + "display_name": "Merge Text Lists", + "description": "", + "category": "dataset/text", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Merge Text Lists" + }, + "MakeTrainingDataset_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "List of images to encode." + } + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + { + "tooltip": "VAE model for encoding images to latents." + } + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + { + "tooltip": "CLIP model for encoding text to conditioning." + } + ] + } + }, + "optional": { + "texts": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "List of text captions. Can be length n (matching images), 1 (repeated for all), or omitted (uses empty string).", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "LATENT", + "CONDITIONING" + ], + "return_names": [ + "latents", + "conditioning" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": false, + "output_is_list": [ + true, + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "List of images to encode." + } + ], + "vae": [ + "VAE", + { + "tooltip": "VAE model for encoding images to latents." + } + ], + "clip": [ + "CLIP", + { + "tooltip": "CLIP model for encoding text to conditioning." + } + ] + }, + "optional": { + "texts": [ + "STRING", + { + "tooltip": "List of text captions. Can be length n (matching images), 1 (repeated for all), or omitted (uses empty string).", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "images", + "vae", + "clip" + ], + "optional": [ + "texts" + ] + }, + "is_input_list": true, + "output": [ + "LATENT", + "CONDITIONING" + ], + "output_is_list": [ + true, + true + ], + "output_name": [ + "latents", + "conditioning" + ], + "output_tooltips": [ + "List of latent dicts", + "List of conditioning lists" + ], + "output_matchtypes": null, + "name": "MakeTrainingDataset_ISO", + "display_name": "Make Training Dataset_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "List of images to encode." + } + ], + "vae": [ + "VAE", + { + "optional": false, + "tooltip": "VAE model for encoding images to latents." + } + ], + "clip": [ + "CLIP", + { + "optional": false, + "tooltip": "CLIP model for encoding text to conditioning." + } + ], + "texts": [ + "STRING", + { + "optional": true, + "tooltip": "List of text captions. Can be length n (matching images), 1 (repeated for all), or omitted (uses empty string).", + "multiline": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "latents", + "tooltip": "List of latent dicts", + "is_output_list": true + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "conditioning", + "tooltip": "List of conditioning lists", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "MakeTrainingDataset_ISO", + "display_name": "Make Training Dataset_ISO", + "description": "", + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Make Training Dataset_ISO" + }, + "SaveTrainingDataset_ISO": { + "input_types": { + "required": { + "latents": { + "__pyisolate_tuple__": [ + "LATENT", + { + "tooltip": "List of latent dicts from MakeTrainingDataset." + } + ] + }, + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + { + "tooltip": "List of conditioning lists from MakeTrainingDataset." + } + ] + }, + "folder_name": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Name of folder to save dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ] + }, + "shard_size": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of samples per shard file.", + "default": 1000, + "min": 1, + "max": 100000 + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "latents": [ + "LATENT", + { + "tooltip": "List of latent dicts from MakeTrainingDataset." + } + ], + "conditioning": [ + "CONDITIONING", + { + "tooltip": "List of conditioning lists from MakeTrainingDataset." + } + ], + "folder_name": [ + "STRING", + { + "tooltip": "Name of folder to save dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ], + "shard_size": [ + "INT", + { + "tooltip": "Number of samples per shard file.", + "default": 1000, + "min": 1, + "max": 100000 + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "latents", + "conditioning", + "folder_name", + "shard_size" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": true, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveTrainingDataset_ISO", + "display_name": "Save Training Dataset_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "latents": [ + "LATENT", + { + "optional": false, + "tooltip": "List of latent dicts from MakeTrainingDataset." + } + ], + "conditioning": [ + "CONDITIONING", + { + "optional": false, + "tooltip": "List of conditioning lists from MakeTrainingDataset." + } + ], + "folder_name": [ + "STRING", + { + "optional": false, + "tooltip": "Name of folder to save dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ], + "shard_size": [ + "INT", + { + "optional": false, + "tooltip": "Number of samples per shard file.", + "default": 1000, + "min": 1, + "max": 100000 + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveTrainingDataset_ISO", + "display_name": "Save Training Dataset_ISO", + "description": "", + "category": "dataset", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Save Training Dataset_ISO" + }, + "LoadTrainingDataset_ISO": { + "input_types": { + "required": { + "folder_name": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Name of folder containing the saved dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "LATENT", + "CONDITIONING" + ], + "return_names": [ + "latents", + "conditioning" + ], + "function": "EXECUTE_NORMALIZED", + "category": "dataset", + "output_node": false, + "output_is_list": [ + true, + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "folder_name": [ + "STRING", + { + "tooltip": "Name of folder containing the saved dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "folder_name" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "CONDITIONING" + ], + "output_is_list": [ + true, + true + ], + "output_name": [ + "latents", + "conditioning" + ], + "output_tooltips": [ + "List of latent dicts", + "List of conditioning lists" + ], + "output_matchtypes": null, + "name": "LoadTrainingDataset_ISO", + "display_name": "Load Training Dataset_ISO", + "description": "", + "python_module": null, + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "folder_name": [ + "STRING", + { + "optional": false, + "tooltip": "Name of folder containing the saved dataset (inside output directory).", + "default": "training_dataset", + "multiline": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "latents", + "tooltip": "List of latent dicts", + "is_output_list": true + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "conditioning", + "tooltip": "List of conditioning lists", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "LoadTrainingDataset_ISO", + "display_name": "Load Training Dataset_ISO", + "description": "", + "category": "dataset", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Training Dataset_ISO" + }, + "DifferentialDiffusion_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + }, + "optional": { + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + }, + "optional": { + "strength": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model" + ], + "optional": [ + "strength" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "DifferentialDiffusion_ISO", + "display_name": "Differential Diffusion_ISO", + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "strength": [ + "FLOAT", + { + "optional": true, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "DifferentialDiffusion_ISO", + "display_name": "Differential Diffusion_ISO", + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Differential Diffusion_ISO" + }, + "EasyCache_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The model to add EasyCache to." + } + ] + }, + "reuse_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The relative sampling step to begin use of EasyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The relative sampling step to end use of EasyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "verbose": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/debug/model", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The model to add EasyCache to." + } + ], + "reuse_threshold": [ + "FLOAT", + { + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "tooltip": "The relative sampling step to begin use of EasyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "end_percent": [ + "FLOAT", + { + "tooltip": "The relative sampling step to end use of EasyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "verbose": [ + "BOOLEAN", + { + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + } + }, + "input_order": { + "required": [ + "model", + "reuse_threshold", + "start_percent", + "end_percent", + "verbose" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + "The model with EasyCache." + ], + "output_matchtypes": null, + "name": "EasyCache_ISO", + "display_name": "EasyCache_ISO", + "description": "Native EasyCache implementation.", + "python_module": null, + "category": "advanced/debug/model", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The model to add EasyCache to." + } + ], + "reuse_threshold": [ + "FLOAT", + { + "optional": false, + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "tooltip": "The relative sampling step to begin use of EasyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "tooltip": "The relative sampling step to end use of EasyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "verbose": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "tooltip": "The model with EasyCache.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EasyCache_ISO", + "display_name": "EasyCache_ISO", + "description": "Native EasyCache implementation.", + "category": "advanced/debug/model", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Native EasyCache implementation.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EasyCache_ISO" + }, + "LazyCache_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The model to add LazyCache to." + } + ] + }, + "reuse_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The relative sampling step to begin use of LazyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The relative sampling step to end use of LazyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "verbose": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/debug/model", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The model to add LazyCache to." + } + ], + "reuse_threshold": [ + "FLOAT", + { + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "tooltip": "The relative sampling step to begin use of LazyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "end_percent": [ + "FLOAT", + { + "tooltip": "The relative sampling step to end use of LazyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "verbose": [ + "BOOLEAN", + { + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + } + }, + "input_order": { + "required": [ + "model", + "reuse_threshold", + "start_percent", + "end_percent", + "verbose" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + "The model with LazyCache." + ], + "output_matchtypes": null, + "name": "LazyCache_ISO", + "display_name": "LazyCache_ISO", + "description": "A homebrew version of EasyCache - even 'easier' version of EasyCache to implement. Overall works worse than EasyCache, but better in some rare cases AND universal compatibility with everything in ComfyUI.", + "python_module": null, + "category": "advanced/debug/model", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The model to add LazyCache to." + } + ], + "reuse_threshold": [ + "FLOAT", + { + "optional": false, + "tooltip": "The threshold for reusing cached steps.", + "default": 0.2, + "min": 0.0, + "max": 3.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "tooltip": "The relative sampling step to begin use of LazyCache.", + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "tooltip": "The relative sampling step to end use of LazyCache.", + "default": 0.95, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "verbose": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to log verbose information.", + "default": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "tooltip": "The model with LazyCache.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LazyCache_ISO", + "display_name": "LazyCache_ISO", + "description": "A homebrew version of EasyCache - even 'easier' version of EasyCache to implement. Overall works worse than EasyCache, but better in some rare cases AND universal compatibility with everything in ComfyUI.", + "category": "advanced/debug/model", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "A homebrew version of EasyCache - even 'easier' version of EasyCache to implement. Overall works worse than EasyCache, but better in some rare cases AND universal compatibility with everything in ComfyUI.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LazyCache_ISO" + }, + "ReferenceLatent_ISO": { + "input_types": { + "required": { + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + } + }, + "optional": { + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/edit_models", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "conditioning": [ + "CONDITIONING", + {} + ] + }, + "optional": { + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "conditioning" + ], + "optional": [ + "latent" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ReferenceLatent_ISO", + "display_name": null, + "description": "This node sets the guiding latent for an edit model. If the model supports it you can chain multiple to set multiple reference images.", + "python_module": null, + "category": "advanced/conditioning/edit_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "latent": [ + "LATENT", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ReferenceLatent_ISO", + "display_name": null, + "description": "This node sets the guiding latent for an edit model. If the model supports it you can chain multiple to set multiple reference images.", + "category": "advanced/conditioning/edit_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "This node sets the guiding latent for an edit model. If the model supports it you can chain multiple to set multiple reference images.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ReferenceLatent_ISO" + }, + "Epsilon Scaling_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scaling_factor": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.005, + "min": 0.5, + "max": 1.5, + "step": 0.001, + "display": "number" + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "scaling_factor": [ + "FLOAT", + { + "default": 1.005, + "min": 0.5, + "max": 1.5, + "step": 0.001, + "display": "number" + } + ] + } + }, + "input_order": { + "required": [ + "model", + "scaling_factor" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Epsilon Scaling_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scaling_factor": [ + "FLOAT", + { + "optional": false, + "default": 1.005, + "min": 0.5, + "max": 1.5, + "step": 0.001, + "display": "number" + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Epsilon Scaling_ISO", + "display_name": null, + "description": "", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Epsilon Scaling_ISO" + }, + "TemporalScoreRescaling_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "tsr_k": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls the rescaling strength.\nLower k produces more detailed results; higher k produces smoother results in image generation. Setting k = 1 disables rescaling.", + "default": 0.95, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ] + }, + "tsr_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls how early rescaling takes effect.\nLarger values take effect earlier.", + "default": 1.0, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "patched_model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "tsr_k": [ + "FLOAT", + { + "tooltip": "Controls the rescaling strength.\nLower k produces more detailed results; higher k produces smoother results in image generation. Setting k = 1 disables rescaling.", + "default": 0.95, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ], + "tsr_sigma": [ + "FLOAT", + { + "tooltip": "Controls how early rescaling takes effect.\nLarger values take effect earlier.", + "default": 1.0, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ] + } + }, + "input_order": { + "required": [ + "model", + "tsr_k", + "tsr_sigma" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "patched_model" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TemporalScoreRescaling_ISO", + "display_name": "TSR - Temporal Score Rescaling_ISO", + "description": "[Post-CFG Function]\nTSR - Temporal Score Rescaling (2510.01184)\n\nRescaling the model's score or noise to steer the sampling diversity.\n", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "tsr_k": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls the rescaling strength.\nLower k produces more detailed results; higher k produces smoother results in image generation. Setting k = 1 disables rescaling.", + "default": 0.95, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ], + "tsr_sigma": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls how early rescaling takes effect.\nLarger values take effect earlier.", + "default": 1.0, + "min": 0.01, + "max": 100.0, + "step": 0.001, + "display": "number" + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "patched_model", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TemporalScoreRescaling_ISO", + "display_name": "TSR - Temporal Score Rescaling_ISO", + "description": "[Post-CFG Function]\nTSR - Temporal Score Rescaling (2510.01184)\n\nRescaling the model's score or noise to steer the sampling diversity.\n", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "[Post-CFG Function]\nTSR - Temporal Score Rescaling (2510.01184)\n\nRescaling the model's score or noise to steer the sampling diversity.\n", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TSR - Temporal Score Rescaling_ISO" + }, + "CLIPTextEncodeFlux_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "clip_l": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "t5xxl": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 3.5, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/flux", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeFlux_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "clip_l": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "t5xxl": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "default": 3.5, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeFlux_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeFlux_ISO" + }, + "FluxGuidance_ISO": { + "input_types": { + "required": { + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 3.5, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/flux", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "conditioning": [ + "CONDITIONING", + {} + ], + "guidance": [ + "FLOAT", + { + "default": 3.5, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + } + }, + "input_order": { + "required": [ + "conditioning", + "guidance" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxGuidance_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "default": 3.5, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FluxGuidance_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FluxGuidance_ISO" + }, + "FluxDisableGuidance_ISO": { + "input_types": { + "required": { + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/flux", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "conditioning": [ + "CONDITIONING", + {} + ] + } + }, + "input_order": { + "required": [ + "conditioning" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxDisableGuidance_ISO", + "display_name": null, + "description": "This node completely disables the guidance embed on Flux and Flux like models", + "python_module": null, + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FluxDisableGuidance_ISO", + "display_name": null, + "description": "This node completely disables the guidance embed on Flux and Flux like models", + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "This node completely disables the guidance embed on Flux and Flux like models", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FluxDisableGuidance_ISO" + }, + "FluxKontextImageScale_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/flux", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxKontextImageScale_ISO", + "display_name": null, + "description": "This node resizes the image to one that is more optimal for flux kontext.", + "python_module": null, + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FluxKontextImageScale_ISO", + "display_name": null, + "description": "This node resizes the image to one that is more optimal for flux kontext.", + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "This node resizes the image to one that is more optimal for flux kontext.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FluxKontextImageScale_ISO" + }, + "FluxKontextMultiReferenceLatentMethod_ISO": { + "input_types": { + "required": { + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "reference_latents_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "offset", + "index", + "uxo/uno" + ] + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning/flux", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "conditioning": [ + "CONDITIONING", + {} + ], + "reference_latents_method": [ + "COMBO", + { + "multiselect": false, + "options": [ + "offset", + "index", + "uxo/uno" + ] + } + ] + } + }, + "input_order": { + "required": [ + "conditioning", + "reference_latents_method" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxKontextMultiReferenceLatentMethod_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "reference_latents_method": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "offset", + "index", + "uxo/uno" + ] + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FluxKontextMultiReferenceLatentMethod_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning/flux", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FluxKontextMultiReferenceLatentMethod_ISO" + }, + "EmptyFlux2LatentImage_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyFlux2LatentImage_ISO", + "display_name": "Empty Flux 2 Latent_ISO", + "description": "", + "python_module": null, + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyFlux2LatentImage_ISO", + "display_name": "Empty Flux 2 Latent_ISO", + "description": "", + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Empty Flux 2 Latent_ISO" + }, + "Flux2Scheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 4096 + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "steps": [ + "INT", + { + "default": 20, + "min": 1, + "max": 4096 + } + ], + "width": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ], + "height": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ] + } + }, + "input_order": { + "required": [ + "steps", + "width", + "height" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Flux2Scheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 4096 + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 1 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Flux2Scheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux2Scheduler_ISO" + }, + "FreSca_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scale_low": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Scaling factor for low-frequency components", + "default": 1.0, + "min": 0, + "max": 10, + "step": 0.01 + } + ] + }, + "scale_high": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Scaling factor for high-frequency components", + "default": 1.25, + "min": 0, + "max": 10, + "step": 0.01 + } + ] + }, + "freq_cutoff": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of frequency indices around center to consider as low-frequency", + "default": 20, + "min": 1, + "max": 10000, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "scale_low": [ + "FLOAT", + { + "tooltip": "Scaling factor for low-frequency components", + "default": 1.0, + "min": 0, + "max": 10, + "step": 0.01 + } + ], + "scale_high": [ + "FLOAT", + { + "tooltip": "Scaling factor for high-frequency components", + "default": 1.25, + "min": 0, + "max": 10, + "step": 0.01 + } + ], + "freq_cutoff": [ + "INT", + { + "tooltip": "Number of frequency indices around center to consider as low-frequency", + "default": 20, + "min": 1, + "max": 10000, + "step": 1 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "scale_low", + "scale_high", + "freq_cutoff" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FreSca_ISO", + "display_name": "FreSca_ISO", + "description": "Applies frequency-dependent scaling to the guidance", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scale_low": [ + "FLOAT", + { + "optional": false, + "tooltip": "Scaling factor for low-frequency components", + "default": 1.0, + "min": 0, + "max": 10, + "step": 0.01 + } + ], + "scale_high": [ + "FLOAT", + { + "optional": false, + "tooltip": "Scaling factor for high-frequency components", + "default": 1.25, + "min": 0, + "max": 10, + "step": 0.01 + } + ], + "freq_cutoff": [ + "INT", + { + "optional": false, + "tooltip": "Number of frequency indices around center to consider as low-frequency", + "default": 20, + "min": 1, + "max": 10000, + "step": 1 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FreSca_ISO", + "display_name": "FreSca_ISO", + "description": "Applies frequency-dependent scaling to the guidance", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Applies frequency-dependent scaling to the guidance", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "FreSca_ISO" + }, + "GITSScheduler_ISO": { + "input_types": { + "required": { + "coeff": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.2, + "min": 0.8, + "max": 1.5, + "step": 0.05 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 10, + "min": 2, + "max": 1000 + } + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "GITSScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "coeff": [ + "FLOAT", + { + "optional": false, + "default": 1.2, + "min": 0.8, + "max": 1.5, + "step": 0.05 + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 10, + "min": 2, + "max": 1000 + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "GITSScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "GITSScheduler_ISO" + }, + "QuadrupleCLIPLoader_ISO": { + "input_types": { + "required": { + "clip_name1": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "clip_name2": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "clip_name3": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "clip_name4": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + } + } + }, + "return_types": [ + "CLIP" + ], + "return_names": [ + "CLIP" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip_name1": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name2": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name3": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name4": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + } + }, + "input_order": { + "required": [ + "clip_name1", + "clip_name2", + "clip_name3", + "clip_name4" + ] + }, + "is_input_list": false, + "output": [ + "CLIP" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CLIP" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "QuadrupleCLIPLoader_ISO", + "display_name": null, + "description": "[Recipes]\n\nhidream: long clip-l, long clip-g, t5xxl, llama_8b_3.1_instruct", + "python_module": null, + "category": "advanced/loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_name1": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name2": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name3": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name4": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "output": { + "_0_CLIP_": [ + "CLIP", + { + "display_name": "_0_CLIP_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "QuadrupleCLIPLoader_ISO", + "display_name": null, + "description": "[Recipes]\n\nhidream: long clip-l, long clip-g, t5xxl, llama_8b_3.1_instruct", + "category": "advanced/loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "[Recipes]\n\nhidream: long clip-l, long clip-g, t5xxl, llama_8b_3.1_instruct", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "QuadrupleCLIPLoader_ISO" + }, + "CLIPTextEncodeHiDream_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "clip_l": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "clip_g": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "t5xxl": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "llama": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "clip_l": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "clip_g": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "t5xxl": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "llama": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "clip_l", + "clip_g", + "t5xxl", + "llama" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeHiDream_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "clip_l": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "clip_g": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "t5xxl": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "llama": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeHiDream_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeHiDream_ISO" + }, + "CLIPTextEncodeHunyuanDiT_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "bert": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "mt5xl": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "bert": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "mt5xl": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "bert", + "mt5xl" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeHunyuanDiT_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "bert": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "mt5xl": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeHunyuanDiT_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeHunyuanDiT_ISO" + }, + "TextEncodeHunyuanVideo_ImageToVideo_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "image_interleave": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "How much the image influences things vs the text prompt. Higher number means more influence from the text prompt.", + "default": 2, + "min": 1, + "max": 512 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ], + "prompt": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "image_interleave": [ + "INT", + { + "tooltip": "How much the image influences things vs the text prompt. Higher number means more influence from the text prompt.", + "default": 2, + "min": 1, + "max": 512 + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "clip_vision_output", + "prompt", + "image_interleave" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TextEncodeHunyuanVideo_ImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "image_interleave": [ + "INT", + { + "optional": false, + "tooltip": "How much the image influences things vs the text prompt. Higher number means more influence from the text prompt.", + "default": 2, + "min": 1, + "max": 512 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TextEncodeHunyuanVideo_ImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TextEncodeHunyuanVideo_ImageToVideo_ISO" + }, + "EmptyHunyuanLatentVideo_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 25, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyHunyuanLatentVideo_ISO", + "display_name": "Empty HunyuanVideo 1.0 Latent_ISO", + "description": "", + "python_module": null, + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 25, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyHunyuanLatentVideo_ISO", + "display_name": "Empty HunyuanVideo 1.0 Latent_ISO", + "description": "", + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Empty HunyuanVideo 1.0 Latent_ISO" + }, + "EmptyHunyuanVideo15Latent": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 25, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyHunyuanVideo15Latent", + "display_name": "Empty HunyuanVideo 1.5 Latent", + "description": "", + "python_module": null, + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 25, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyHunyuanVideo15Latent", + "display_name": "Empty HunyuanVideo 1.5 Latent", + "description": "", + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Empty HunyuanVideo 1.5 Latent" + }, + "HunyuanVideo15ImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 33, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "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": 33, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "optional": { + "start_image": [ + "IMAGE", + {} + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "start_image", + "clip_vision_output" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "HunyuanVideo15ImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 33, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HunyuanVideo15ImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HunyuanVideo15ImageToVideo_ISO" + }, + "HunyuanVideo15SuperResolution_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "noise_augmentation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.7, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "optional": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sd", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "latent": [ + "LATENT", + {} + ], + "noise_augmentation": [ + "FLOAT", + { + "default": 0.7, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "optional": { + "vae": [ + "VAE", + {} + ], + "start_image": [ + "IMAGE", + {} + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "latent", + "noise_augmentation" + ], + "optional": [ + "vae", + "start_image", + "clip_vision_output" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "HunyuanVideo15SuperResolution_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sd", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "latent": [ + "LATENT", + { + "optional": false + } + ], + "noise_augmentation": [ + "FLOAT", + { + "optional": false, + "default": 0.7, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HunyuanVideo15SuperResolution_ISO", + "display_name": null, + "description": "", + "category": "sd", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HunyuanVideo15SuperResolution_ISO" + }, + "HunyuanVideo15LatentUpscaleWithModel_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "LATENT_UPSCALE_MODEL", + {} + ] + }, + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "upscale_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "bilinear", + "multiselect": false, + "options": [ + "nearest-exact", + "bilinear", + "area", + "bicubic", + "bislerp" + ] + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1280, + "min": 0, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 720, + "min": 0, + "max": 16384, + "step": 8 + } + ] + }, + "crop": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "disabled", + "center" + ] + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "LATENT_UPSCALE_MODEL", + {} + ], + "samples": [ + "LATENT", + {} + ], + "upscale_method": [ + "COMBO", + { + "default": "bilinear", + "multiselect": false, + "options": [ + "nearest-exact", + "bilinear", + "area", + "bicubic", + "bislerp" + ] + } + ], + "width": [ + "INT", + { + "default": 1280, + "min": 0, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "default": 720, + "min": 0, + "max": 16384, + "step": 8 + } + ], + "crop": [ + "COMBO", + { + "multiselect": false, + "options": [ + "disabled", + "center" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model", + "samples", + "upscale_method", + "width", + "height", + "crop" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "HunyuanVideo15LatentUpscaleWithModel_ISO", + "display_name": "Hunyuan Video 15 Latent Upscale With Model_ISO", + "description": "", + "python_module": null, + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "LATENT_UPSCALE_MODEL", + { + "optional": false + } + ], + "samples": [ + "LATENT", + { + "optional": false + } + ], + "upscale_method": [ + "COMBO", + { + "optional": false, + "default": "bilinear", + "multiselect": false, + "options": [ + "nearest-exact", + "bilinear", + "area", + "bicubic", + "bislerp" + ] + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1280, + "min": 0, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 720, + "min": 0, + "max": 16384, + "step": 8 + } + ], + "crop": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "disabled", + "center" + ] + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HunyuanVideo15LatentUpscaleWithModel_ISO", + "display_name": "Hunyuan Video 15 Latent Upscale With Model_ISO", + "description": "", + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Hunyuan Video 15 Latent Upscale With Model_ISO" + }, + "LatentUpscaleModelLoader_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ltx-2-spatial-upscaler-x2-1.0.safetensors" + ] + } + ] + } + } + }, + "return_types": [ + "LATENT_UPSCALE_MODEL" + ], + "return_names": [ + "LATENT_UPSCALE_MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ltx-2-spatial-upscaler-x2-1.0.safetensors" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model_name" + ] + }, + "is_input_list": false, + "output": [ + "LATENT_UPSCALE_MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT_UPSCALE_MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentUpscaleModelLoader_ISO", + "display_name": "Load Latent Upscale Model_ISO", + "description": "", + "python_module": null, + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "ltx-2-spatial-upscaler-x2-1.0.safetensors" + ] + } + ] + }, + "output": { + "_0_LATENT_UPSCALE_MODEL_": [ + "LATENT_UPSCALE_MODEL", + { + "display_name": "_0_LATENT_UPSCALE_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentUpscaleModelLoader_ISO", + "display_name": "Load Latent Upscale Model_ISO", + "description": "", + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Latent Upscale Model_ISO" + }, + "HunyuanImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 53, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "guidance_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "v1 (concat)", + "v2 (replace)", + "custom" + ] + } + ] + } + }, + "optional": { + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "v1 (concat)", + "v2 (replace)", + "custom" + ] + } + ] + }, + "optional": { + "start_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "vae", + "width", + "height", + "length", + "batch_size", + "guidance_type" + ], + "optional": [ + "start_image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "latent" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "HunyuanImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 53, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "guidance_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "v1 (concat)", + "v2 (replace)", + "custom" + ] + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HunyuanImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HunyuanImageToVideo_ISO" + }, + "EmptyHunyuanImageLatent_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "width": [ + "INT", + { + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "width", + "height", + "batch_size" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyHunyuanImageLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 2048, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyHunyuanImageLatent_ISO", + "display_name": null, + "description": "", + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyHunyuanImageLatent_ISO" + }, + "HunyuanRefinerLatent_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "noise_augmentation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sd", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "latent": [ + "LATENT", + {} + ], + "noise_augmentation": [ + "FLOAT", + { + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "latent", + "noise_augmentation" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "HunyuanRefinerLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sd", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "latent": [ + "LATENT", + { + "optional": false + } + ], + "noise_augmentation": [ + "FLOAT", + { + "optional": false, + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HunyuanRefinerLatent_ISO", + "display_name": null, + "description": "", + "category": "sd", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HunyuanRefinerLatent_ISO" + }, + "EmptyLatentHunyuan3Dv2_ISO": { + "input_types": { + "required": { + "resolution": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3072, + "min": 1, + "max": 8192 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/3d", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "resolution": [ + "INT", + { + "default": 3072, + "min": 1, + "max": 8192 + } + ], + "batch_size": [ + "INT", + { + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "resolution", + "batch_size" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyLatentHunyuan3Dv2_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "resolution": [ + "INT", + { + "optional": false, + "default": 3072, + "min": 1, + "max": 8192 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "tooltip": "The number of latent images in the batch.", + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyLatentHunyuan3Dv2_ISO", + "display_name": null, + "description": "", + "category": "latent/3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyLatentHunyuan3Dv2_ISO" + }, + "Hunyuan3Dv2Conditioning_ISO": { + "input_types": { + "required": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING" + ], + "return_names": [ + "positive", + "negative" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + }, + "input_order": { + "required": [ + "clip_vision_output" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "negative" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "Hunyuan3Dv2Conditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Hunyuan3Dv2Conditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Hunyuan3Dv2Conditioning_ISO" + }, + "Hunyuan3Dv2ConditioningMultiView_ISO": { + "input_types": { + "required": {}, + "optional": { + "front": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "left": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "back": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "right": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING" + ], + "return_names": [ + "positive", + "negative" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {}, + "optional": { + "front": [ + "CLIP_VISION_OUTPUT", + {} + ], + "left": [ + "CLIP_VISION_OUTPUT", + {} + ], + "back": [ + "CLIP_VISION_OUTPUT", + {} + ], + "right": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + }, + "input_order": { + "required": [], + "optional": [ + "front", + "left", + "back", + "right" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "negative" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "Hunyuan3Dv2ConditioningMultiView_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "front": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "left": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "back": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "right": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Hunyuan3Dv2ConditioningMultiView_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Hunyuan3Dv2ConditioningMultiView_ISO" + }, + "VAEDecodeHunyuan3D_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "num_chunks": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 8000, + "min": 1000, + "max": 500000 + } + ] + }, + "octree_resolution": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 16, + "max": 512 + } + ] + } + } + }, + "return_types": [ + "VOXEL" + ], + "return_names": [ + "VOXEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/3d", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "vae": [ + "VAE", + {} + ], + "num_chunks": [ + "INT", + { + "default": 8000, + "min": 1000, + "max": 500000 + } + ], + "octree_resolution": [ + "INT", + { + "default": 256, + "min": 16, + "max": 512 + } + ] + } + }, + "input_order": { + "required": [ + "samples", + "vae", + "num_chunks", + "octree_resolution" + ] + }, + "is_input_list": false, + "output": [ + "VOXEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VOXEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VAEDecodeHunyuan3D_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "num_chunks": [ + "INT", + { + "optional": false, + "default": 8000, + "min": 1000, + "max": 500000 + } + ], + "octree_resolution": [ + "INT", + { + "optional": false, + "default": 256, + "min": 16, + "max": 512 + } + ] + }, + "output": { + "_0_VOXEL_": [ + "VOXEL", + { + "display_name": "_0_VOXEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "VAEDecodeHunyuan3D_ISO", + "display_name": null, + "description": "", + "category": "latent/3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "VAEDecodeHunyuan3D_ISO" + }, + "VoxelToMeshBasic_ISO": { + "input_types": { + "required": { + "voxel": { + "__pyisolate_tuple__": [ + "VOXEL", + {} + ] + }, + "threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MESH" + ], + "return_names": [ + "MESH" + ], + "function": "EXECUTE_NORMALIZED", + "category": "3d", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "voxel": [ + "VOXEL", + {} + ], + "threshold": [ + "FLOAT", + { + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "voxel", + "threshold" + ] + }, + "is_input_list": false, + "output": [ + "MESH" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MESH" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VoxelToMeshBasic_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "voxel": [ + "VOXEL", + { + "optional": false + } + ], + "threshold": [ + "FLOAT", + { + "optional": false, + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MESH_": [ + "MESH", + { + "display_name": "_0_MESH_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "VoxelToMeshBasic_ISO", + "display_name": null, + "description": "", + "category": "3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "VoxelToMeshBasic_ISO" + }, + "VoxelToMesh_ISO": { + "input_types": { + "required": { + "voxel": { + "__pyisolate_tuple__": [ + "VOXEL", + {} + ] + }, + "algorithm": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "surface net", + "basic" + ] + } + ] + }, + "threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MESH" + ], + "return_names": [ + "MESH" + ], + "function": "EXECUTE_NORMALIZED", + "category": "3d", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "voxel": [ + "VOXEL", + {} + ], + "algorithm": [ + "COMBO", + { + "multiselect": false, + "options": [ + "surface net", + "basic" + ] + } + ], + "threshold": [ + "FLOAT", + { + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "voxel", + "algorithm", + "threshold" + ] + }, + "is_input_list": false, + "output": [ + "MESH" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MESH" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VoxelToMesh_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "voxel": [ + "VOXEL", + { + "optional": false + } + ], + "algorithm": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "surface net", + "basic" + ] + } + ], + "threshold": [ + "FLOAT", + { + "optional": false, + "default": 0.6, + "min": -1.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MESH_": [ + "MESH", + { + "display_name": "_0_MESH_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "VoxelToMesh_ISO", + "display_name": null, + "description": "", + "category": "3d", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "VoxelToMesh_ISO" + }, + "SaveGLB_ISO": { + "input_types": { + "required": { + "mesh": { + "__pyisolate_tuple__": [ + "MESH", + {} + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "mesh/ComfyUI", + "multiline": false + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "3d", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "mesh": [ + "MESH", + {} + ], + "filename_prefix": [ + "STRING", + { + "default": "mesh/ComfyUI", + "multiline": false + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "mesh", + "filename_prefix" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveGLB_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "3d", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "mesh": [ + "MESH", + { + "optional": false + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "default": "mesh/ComfyUI", + "multiline": false + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveGLB_ISO", + "display_name": null, + "description": "", + "category": "3d", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SaveGLB_ISO" + }, + "HypernetworkLoader_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "hypernetwork_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [] + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "hypernetwork_name": [ + "COMBO", + { + "multiselect": false, + "options": [] + } + ], + "strength": [ + "FLOAT", + { + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "hypernetwork_name", + "strength" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "HypernetworkLoader_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "hypernetwork_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [] + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HypernetworkLoader_ISO", + "display_name": null, + "description": "", + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HypernetworkLoader_ISO" + }, + "HyperTile_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "tile_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 1, + "max": 2048 + } + ] + }, + "swap_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 2, + "min": 1, + "max": 128 + } + ] + }, + "max_depth": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 10 + } + ] + }, + "scale_depth": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "HyperTile_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "tile_size": [ + "INT", + { + "optional": false, + "default": 256, + "min": 1, + "max": 2048 + } + ], + "swap_size": [ + "INT", + { + "optional": false, + "default": 2, + "min": 1, + "max": 128 + } + ], + "max_depth": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 10 + } + ], + "scale_depth": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "HyperTile_ISO", + "display_name": null, + "description": "", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "HyperTile_ISO" + }, + "InstructPixToPixConditioning_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "pixels": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/instructpix2pix", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "vae": [ + "VAE", + {} + ], + "pixels": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "pixels" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "InstructPixToPixConditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/instructpix2pix", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "pixels": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "InstructPixToPixConditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/instructpix2pix", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "InstructPixToPixConditioning_ISO" + }, + "LatentAdd_ISO": { + "input_types": { + "required": { + "samples1": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "samples2": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples1": [ + "LATENT", + {} + ], + "samples2": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "samples1", + "samples2" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentAdd_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples1": [ + "LATENT", + { + "optional": false + } + ], + "samples2": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentAdd_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentAdd_ISO" + }, + "LatentSubtract_ISO": { + "input_types": { + "required": { + "samples1": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "samples2": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples1": [ + "LATENT", + {} + ], + "samples2": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "samples1", + "samples2" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentSubtract_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples1": [ + "LATENT", + { + "optional": false + } + ], + "samples2": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentSubtract_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentSubtract_ISO" + }, + "LatentMultiply_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "multiplier": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "multiplier": [ + "FLOAT", + { + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "samples", + "multiplier" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentMultiply_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "multiplier": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": -10.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentMultiply_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentMultiply_ISO" + }, + "LatentInterpolate_ISO": { + "input_types": { + "required": { + "samples1": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "samples2": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentInterpolate_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples1": [ + "LATENT", + { + "optional": false + } + ], + "samples2": [ + "LATENT", + { + "optional": false + } + ], + "ratio": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentInterpolate_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentInterpolate_ISO" + }, + "LatentConcat_ISO": { + "input_types": { + "required": { + "samples1": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "samples2": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "dim": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "x", + "-x", + "y", + "-y", + "t", + "-t" + ] + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples1": [ + "LATENT", + {} + ], + "samples2": [ + "LATENT", + {} + ], + "dim": [ + "COMBO", + { + "multiselect": false, + "options": [ + "x", + "-x", + "y", + "-y", + "t", + "-t" + ] + } + ] + } + }, + "input_order": { + "required": [ + "samples1", + "samples2", + "dim" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentConcat_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples1": [ + "LATENT", + { + "optional": false + } + ], + "samples2": [ + "LATENT", + { + "optional": false + } + ], + "dim": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "x", + "-x", + "y", + "-y", + "t", + "-t" + ] + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentConcat_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentConcat_ISO" + }, + "LatentCut_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "dim": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "x", + "y", + "t" + ] + } + ] + }, + "index": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": -16384, + "max": 16384, + "step": 1 + } + ] + }, + "amount": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 16384, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "dim": [ + "COMBO", + { + "multiselect": false, + "options": [ + "x", + "y", + "t" + ] + } + ], + "index": [ + "INT", + { + "default": 0, + "min": -16384, + "max": 16384, + "step": 1 + } + ], + "amount": [ + "INT", + { + "default": 1, + "min": 1, + "max": 16384, + "step": 1 + } + ] + } + }, + "input_order": { + "required": [ + "samples", + "dim", + "index", + "amount" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentCut_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "dim": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "x", + "y", + "t" + ] + } + ], + "index": [ + "INT", + { + "optional": false, + "default": 0, + "min": -16384, + "max": 16384, + "step": 1 + } + ], + "amount": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 16384, + "step": 1 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentCut_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentCut_ISO" + }, + "LatentBatch_ISO": { + "input_types": { + "required": { + "samples1": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "samples2": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/batch", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples1": [ + "LATENT", + {} + ], + "samples2": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "samples1", + "samples2" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentBatch_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples1": [ + "LATENT", + { + "optional": false + } + ], + "samples2": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentBatch_ISO", + "display_name": null, + "description": "", + "category": "latent/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentBatch_ISO" + }, + "LatentBatchSeedBehavior_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "seed_behavior": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "fixed", + "multiselect": false, + "options": [ + "random", + "fixed" + ] + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "seed_behavior": [ + "COMBO", + { + "default": "fixed", + "multiselect": false, + "options": [ + "random", + "fixed" + ] + } + ] + } + }, + "input_order": { + "required": [ + "samples", + "seed_behavior" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentBatchSeedBehavior_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "seed_behavior": [ + "COMBO", + { + "optional": false, + "default": "fixed", + "multiselect": false, + "options": [ + "random", + "fixed" + ] + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentBatchSeedBehavior_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentBatchSeedBehavior_ISO" + }, + "LatentApplyOperation_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "operation": { + "__pyisolate_tuple__": [ + "LATENT_OPERATION", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced/operations", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "operation": [ + "LATENT_OPERATION", + {} + ] + } + }, + "input_order": { + "required": [ + "samples", + "operation" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentApplyOperation_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "operation": [ + "LATENT_OPERATION", + { + "optional": false + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentApplyOperation_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentApplyOperation_ISO" + }, + "LatentApplyOperationCFG_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "operation": { + "__pyisolate_tuple__": [ + "LATENT_OPERATION", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced/operations", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "operation": [ + "LATENT_OPERATION", + {} + ] + } + }, + "input_order": { + "required": [ + "model", + "operation" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentApplyOperationCFG_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "operation": [ + "LATENT_OPERATION", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentApplyOperationCFG_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentApplyOperationCFG_ISO" + }, + "LatentOperationTonemapReinhard_ISO": { + "input_types": { + "required": { + "multiplier": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "LATENT_OPERATION" + ], + "return_names": [ + "LATENT_OPERATION" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced/operations", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "multiplier": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "multiplier" + ] + }, + "is_input_list": false, + "output": [ + "LATENT_OPERATION" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT_OPERATION" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentOperationTonemapReinhard_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "multiplier": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_LATENT_OPERATION_": [ + "LATENT_OPERATION", + { + "display_name": "_0_LATENT_OPERATION_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentOperationTonemapReinhard_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentOperationTonemapReinhard_ISO" + }, + "LatentOperationSharpen_ISO": { + "input_types": { + "required": { + "sharpen_radius": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 9, + "min": 1, + "max": 31, + "step": 1 + } + ] + }, + "sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.1 + } + ] + }, + "alpha": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.1, + "min": 0.0, + "max": 5.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "LATENT_OPERATION" + ], + "return_names": [ + "LATENT_OPERATION" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/advanced/operations", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT_OPERATION" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT_OPERATION" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LatentOperationSharpen_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "sharpen_radius": [ + "INT", + { + "optional": false, + "default": 9, + "min": 1, + "max": 31, + "step": 1 + } + ], + "sigma": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.1 + } + ], + "alpha": [ + "FLOAT", + { + "optional": false, + "default": 0.1, + "min": 0.0, + "max": 5.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_LATENT_OPERATION_": [ + "LATENT_OPERATION", + { + "display_name": "_0_LATENT_OPERATION_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LatentOperationSharpen_ISO", + "display_name": null, + "description": "", + "category": "latent/advanced/operations", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LatentOperationSharpen_ISO" + }, + "LoraSave_ISO": { + "input_types": { + "required": { + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "loras/ComfyUI_extracted_lora", + "multiline": false + } + ] + }, + "rank": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 8, + "min": 1, + "max": 4096, + "step": 1 + } + ] + }, + "lora_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": { + "__pyisolate_tuple__": [ + "standard", + "full_diff" + ] + } + } + ] + }, + "bias_diff": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + } + }, + "optional": { + "model_diff": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The ModelSubtract output to be converted to a lora." + } + ] + }, + "text_encoder_diff": { + "__pyisolate_tuple__": [ + "CLIP", + { + "tooltip": "The CLIPSubtract output to be converted to a lora." + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "filename_prefix": [ + "STRING", + { + "default": "loras/ComfyUI_extracted_lora", + "multiline": false + } + ], + "rank": [ + "INT", + { + "default": 8, + "min": 1, + "max": 4096, + "step": 1 + } + ], + "lora_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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." + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "filename_prefix", + "rank", + "lora_type", + "bias_diff" + ], + "optional": [ + "model_diff", + "text_encoder_diff" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "LoraSave_ISO", + "display_name": "Extract and Save Lora_ISO", + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "filename_prefix": [ + "STRING", + { + "optional": false, + "default": "loras/ComfyUI_extracted_lora", + "multiline": false + } + ], + "rank": [ + "INT", + { + "optional": false, + "default": 8, + "min": 1, + "max": 4096, + "step": 1 + } + ], + "lora_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "standard", + "full_diff" + ] + } + ], + "bias_diff": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "model_diff": [ + "MODEL", + { + "optional": true, + "tooltip": "The ModelSubtract output to be converted to a lora." + } + ], + "text_encoder_diff": [ + "CLIP", + { + "optional": true, + "tooltip": "The CLIPSubtract output to be converted to a lora." + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "LoraSave_ISO", + "display_name": "Extract and Save Lora_ISO", + "description": "", + "category": "_for_testing", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Extract and Save Lora_ISO" + }, + "LotusConditioning_ISO": { + "input_types": { + "required": {} + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "conditioning" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/lotus", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "conditioning" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LotusConditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/lotus", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "conditioning", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LotusConditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/lotus", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LotusConditioning_ISO" + }, + "EmptyLTXVLatentVideo_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 768, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 512, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 97, + "min": 1, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video/ltxv", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyLTXVLatentVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/video/ltxv", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 768, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 512, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 97, + "min": 1, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyLTXVLatentVideo_ISO", + "display_name": null, + "description": "", + "category": "latent/video/ltxv", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyLTXVLatentVideo_ISO" + }, + "LTXVImgToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 768, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 512, + "min": 64, + "max": 16384, + "step": 32 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 97, + "min": 9, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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 + } + ], + "strength": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "image", + "width", + "height", + "length", + "batch_size", + "strength" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "LTXVImgToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 768, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 512, + "min": 64, + "max": 16384, + "step": 32 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 97, + "min": 9, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVImgToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVImgToVideo_ISO" + }, + "ModelSamplingLTXV_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "max_shift": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 2.05, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "base_shift": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.95, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + }, + "optional": { + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/model", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ModelSamplingLTXV_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/model", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "max_shift": [ + "FLOAT", + { + "optional": false, + "default": 2.05, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ], + "base_shift": [ + "FLOAT", + { + "optional": false, + "default": 0.95, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ], + "latent": [ + "LATENT", + { + "optional": true + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ModelSamplingLTXV_ISO", + "display_name": null, + "description": "", + "category": "advanced/model", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ModelSamplingLTXV_ISO" + }, + "LTXVConditioning_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "frame_rate": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 25.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING" + ], + "return_names": [ + "positive", + "negative" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "negative" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "LTXVConditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "frame_rate": [ + "FLOAT", + { + "optional": false, + "default": 25.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVConditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVConditioning_ISO" + }, + "LTXVScheduler_ISO": { + "input_types": { + "required": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 1, + "max": 10000 + } + ] + }, + "max_shift": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 2.05, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "base_shift": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.95, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "stretch": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Stretch the sigmas to be in the range [terminal, 1].", + "default": true + } + ] + }, + "terminal": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The terminal value of the sigmas after stretching.", + "default": 0.1, + "min": 0.0, + "max": 0.99, + "step": 0.01 + } + ] + } + }, + "optional": { + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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", + { + "tooltip": "Stretch the sigmas to be in the range [terminal, 1].", + "default": true + } + ], + "terminal": [ + "FLOAT", + { + "tooltip": "The terminal value of the sigmas after stretching.", + "default": 0.1, + "min": 0.0, + "max": 0.99, + "step": 0.01 + } + ] + }, + "optional": { + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "steps", + "max_shift", + "base_shift", + "stretch", + "terminal" + ], + "optional": [ + "latent" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LTXVScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 1, + "max": 10000 + } + ], + "max_shift": [ + "FLOAT", + { + "optional": false, + "default": 2.05, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ], + "base_shift": [ + "FLOAT", + { + "optional": false, + "default": 0.95, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ], + "stretch": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Stretch the sigmas to be in the range [terminal, 1].", + "default": true + } + ], + "terminal": [ + "FLOAT", + { + "optional": false, + "tooltip": "The terminal value of the sigmas after stretching.", + "default": 0.1, + "min": 0.0, + "max": 0.99, + "step": 0.01 + } + ], + "latent": [ + "LATENT", + { + "optional": true + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVScheduler_ISO" + }, + "LTXVAddGuide_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "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": { + "__pyisolate_tuple__": [ + "INT", + { + "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.", + "default": 0, + "min": -9999, + "max": 9999 + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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", + { + "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.", + "default": 0, + "min": -9999, + "max": 9999 + } + ], + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "LTXVAddGuide_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "latent": [ + "LATENT", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "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", + { + "optional": false, + "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.", + "default": 0, + "min": -9999, + "max": 9999 + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVAddGuide_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVAddGuide_ISO" + }, + "LTXVPreprocess_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "img_compression": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Amount of compression to apply on image.", + "default": 35, + "min": 0, + "max": 100 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "output_image" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "img_compression": [ + "INT", + { + "tooltip": "Amount of compression to apply on image.", + "default": 35, + "min": 0, + "max": 100 + } + ] + } + }, + "input_order": { + "required": [ + "image", + "img_compression" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "output_image" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LTXVPreprocess_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "img_compression": [ + "INT", + { + "optional": false, + "tooltip": "Amount of compression to apply on image.", + "default": 35, + "min": 0, + "max": 100 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "output_image", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVPreprocess_ISO", + "display_name": null, + "description": "", + "category": "image", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVPreprocess_ISO" + }, + "LTXVCropGuides_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "latent" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "LTXVCropGuides_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "latent": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LTXVCropGuides_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXVCropGuides_ISO" + }, + "CLIPTextEncodeLumina2_ISO": { + "input_types": { + "required": { + "system_prompt": { + "__pyisolate_tuple__": [ + "COMBO", + { + "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.", + "multiselect": false, + "options": [ + "superior", + "alignment" + ] + } + ] + }, + "user_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text to be encoded.", + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + { + "tooltip": "The CLIP model used for encoding the text." + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "system_prompt": [ + "COMBO", + { + "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.", + "multiselect": false, + "options": [ + "superior", + "alignment" + ] + } + ], + "user_prompt": [ + "STRING", + { + "tooltip": "The text to be encoded.", + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + { + "tooltip": "The CLIP model used for encoding the text." + } + ] + } + }, + "input_order": { + "required": [ + "system_prompt", + "user_prompt", + "clip" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + "A conditioning containing the embedded text used to guide the diffusion model." + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeLumina2_ISO", + "display_name": "CLIP Text Encode for Lumina2_ISO", + "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": null, + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "system_prompt": [ + "COMBO", + { + "optional": false, + "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.", + "multiselect": false, + "options": [ + "superior", + "alignment" + ] + } + ], + "user_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text to be encoded.", + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + { + "optional": false, + "tooltip": "The CLIP model used for encoding the text." + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "tooltip": "A conditioning containing the embedded text used to guide the diffusion model.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeLumina2_ISO", + "display_name": "CLIP Text Encode for Lumina2_ISO", + "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.", + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "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.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIP Text Encode for Lumina2_ISO" + }, + "RenormCFG_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "cfg_trunc": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 100, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "renorm_cfg": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/model", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RenormCFG_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/model", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "cfg_trunc": [ + "FLOAT", + { + "optional": false, + "default": 100, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ], + "renorm_cfg": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RenormCFG_ISO", + "display_name": null, + "description": "", + "category": "advanced/model", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "RenormCFG_ISO" + }, + "Mahiro_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "patched_model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "patched_model" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Mahiro_ISO", + "display_name": "Mahiro is so cute that she deserves a better guidance function!! (\u3002\u30fb\u03c9\u30fb\u3002)_ISO", + "description": "Modify the guidance to scale more on the 'direction' of the positive prompt rather than the difference between the negative prompt.", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "patched_model", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Mahiro_ISO", + "display_name": "Mahiro is so cute that she deserves a better guidance function!! (\u3002\u30fb\u03c9\u30fb\u3002)_ISO", + "description": "Modify the guidance to scale more on the 'direction' of the positive prompt rather than the difference between the negative prompt.", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Modify the guidance to scale more on the 'direction' of the positive prompt rather than the difference between the negative prompt.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Mahiro is so cute that she deserves a better guidance function!! (\u3002\u30fb\u03c9\u30fb\u3002)_ISO" + }, + "EmptyMochiLatentVideo_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 25, + "min": 7, + "max": 16384, + "step": 6 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptyMochiLatentVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 848, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 25, + "min": 7, + "max": 16384, + "step": 6 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptyMochiLatentVideo_ISO", + "display_name": null, + "description": "", + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptyMochiLatentVideo_ISO" + }, + "PatchModelAddDownscale_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "block_number": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 1, + "max": 32, + "step": 1 + } + ] + }, + "downscale_factor": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 2.0, + "min": 0.1, + "max": 9.0, + "step": 0.001 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.35, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "downscale_after_skip": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "downscale_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bicubic", + "nearest-exact", + "bilinear", + "area", + "bislerp" + ] + } + ] + }, + "upscale_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bicubic", + "nearest-exact", + "bilinear", + "area", + "bislerp" + ] + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bicubic", + "nearest-exact", + "bilinear", + "area", + "bislerp" + ] + } + ], + "upscale_method": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PatchModelAddDownscale_ISO", + "display_name": "PatchModelAddDownscale (Kohya Deep Shrink)_ISO", + "description": "", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "block_number": [ + "INT", + { + "optional": false, + "default": 3, + "min": 1, + "max": 32, + "step": 1 + } + ], + "downscale_factor": [ + "FLOAT", + { + "optional": false, + "default": 2.0, + "min": 0.1, + "max": 9.0, + "step": 0.001 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.35, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "downscale_after_skip": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "downscale_method": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "bicubic", + "nearest-exact", + "bilinear", + "area", + "bislerp" + ] + } + ], + "upscale_method": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "bicubic", + "nearest-exact", + "bilinear", + "area", + "bislerp" + ] + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PatchModelAddDownscale_ISO", + "display_name": "PatchModelAddDownscale (Kohya Deep Shrink)_ISO", + "description": "", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PatchModelAddDownscale (Kohya Deep Shrink)_ISO" + }, + "ModelPassthrough_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "isolation/testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ModelPassthrough_ISO", + "display_name": null, + "description": "Passthrough ModelPatcher through isolation", + "python_module": null, + "category": "isolation/testing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ModelPassthrough_ISO", + "display_name": null, + "description": "Passthrough ModelPatcher through isolation", + "category": "isolation/testing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Passthrough ModelPatcher through isolation", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ModelPassthrough_ISO" + }, + "Morphology_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "operation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "erode", + "dilate", + "open", + "close", + "gradient", + "bottom_hat", + "top_hat" + ] + } + ] + }, + "kernel_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 3, + "max": 999, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/postprocessing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "operation": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Morphology_ISO", + "display_name": "ImageMorphology_ISO", + "description": "", + "python_module": null, + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "operation": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "erode", + "dilate", + "open", + "close", + "gradient", + "bottom_hat", + "top_hat" + ] + } + ], + "kernel_size": [ + "INT", + { + "optional": false, + "default": 3, + "min": 3, + "max": 999, + "step": 1 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Morphology_ISO", + "display_name": "ImageMorphology_ISO", + "description": "", + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageMorphology_ISO" + }, + "ImageRGBToYUV_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE", + "IMAGE", + "IMAGE" + ], + "return_names": [ + "Y", + "U", + "V" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/batch", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "IMAGE", + "IMAGE" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "Y", + "U", + "V" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "ImageRGBToYUV_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "Y", + "is_output_list": false + } + ], + "_1_IMAGE_": [ + "IMAGE", + { + "display_name": "U", + "is_output_list": false + } + ], + "_2_IMAGE_": [ + "IMAGE", + { + "display_name": "V", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageRGBToYUV_ISO", + "display_name": null, + "description": "", + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageRGBToYUV_ISO" + }, + "ImageYUVToRGB_ISO": { + "input_types": { + "required": { + "Y": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "U": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "V": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/batch", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Y": [ + "IMAGE", + {} + ], + "U": [ + "IMAGE", + {} + ], + "V": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "Y", + "U", + "V" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageYUVToRGB_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Y": [ + "IMAGE", + { + "optional": false + } + ], + "U": [ + "IMAGE", + { + "optional": false + } + ], + "V": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageYUVToRGB_ISO", + "display_name": null, + "description": "", + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageYUVToRGB_ISO" + }, + "wanBlockSwap_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "wanBlockSwap_ISO", + "display_name": null, + "description": "NOP", + "python_module": null, + "category": "", + "output_node": false, + "deprecated": true, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "wanBlockSwap_ISO", + "display_name": null, + "description": "NOP", + "category": "", + "output_node": false, + "deprecated": true, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "NOP", + "deprecated": true, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "wanBlockSwap_ISO" + }, + "OptimalStepsScheduler_ISO": { + "input_types": { + "required": { + "model_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "FLUX", + "Wan", + "Chroma" + ] + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 20, + "min": 3, + "max": 1000 + } + ] + }, + "denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "SIGMAS" + ], + "return_names": [ + "SIGMAS" + ], + "function": "EXECUTE_NORMALIZED", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "FLUX", + "Wan", + "Chroma" + ] + } + ], + "steps": [ + "INT", + { + "default": 20, + "min": 3, + "max": 1000 + } + ], + "denoise": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model_type", + "steps", + "denoise" + ] + }, + "is_input_list": false, + "output": [ + "SIGMAS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SIGMAS" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OptimalStepsScheduler_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "FLUX", + "Wan", + "Chroma" + ] + } + ], + "steps": [ + "INT", + { + "optional": false, + "default": 20, + "min": 3, + "max": 1000 + } + ], + "denoise": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_SIGMAS_": [ + "SIGMAS", + { + "display_name": "_0_SIGMAS_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "OptimalStepsScheduler_ISO", + "display_name": null, + "description": "", + "category": "sampling/custom_sampling/schedulers", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OptimalStepsScheduler_ISO" + }, + "PerturbedAttentionGuidance_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 3.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PerturbedAttentionGuidance_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scale": [ + "FLOAT", + { + "optional": false, + "default": 3.0, + "min": 0.0, + "max": 100.0, + "step": 0.01, + "round": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PerturbedAttentionGuidance_ISO", + "display_name": null, + "description": "", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PerturbedAttentionGuidance_ISO" + }, + "PerpNeg_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "empty_conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "neg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PerpNeg_ISO", + "display_name": "Perp-Neg (DEPRECATED by PerpNegGuider)_ISO", + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": true, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "empty_conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "neg_scale": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PerpNeg_ISO", + "display_name": "Perp-Neg (DEPRECATED by PerpNegGuider)_ISO", + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": true, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": true, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Perp-Neg (DEPRECATED by PerpNegGuider)_ISO" + }, + "PerpNegGuider_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "empty_conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "cfg": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ] + }, + "neg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "GUIDER" + ], + "return_names": [ + "GUIDER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "GUIDER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "GUIDER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PerpNegGuider_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "empty_conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "cfg": [ + "FLOAT", + { + "optional": false, + "default": 8.0, + "min": 0.0, + "max": 100.0, + "step": 0.1, + "round": 0.01 + } + ], + "neg_scale": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_GUIDER_": [ + "GUIDER", + { + "display_name": "_0_GUIDER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PerpNegGuider_ISO", + "display_name": null, + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PerpNegGuider_ISO" + }, + "PhotoMakerLoader_ISO": { + "input_types": { + "required": { + "photomaker_model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [] + } + ] + } + } + }, + "return_types": [ + "PHOTOMAKER" + ], + "return_names": [ + "PHOTOMAKER" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/photomaker", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "photomaker_model_name": [ + "COMBO", + { + "multiselect": false, + "options": [] + } + ] + } + }, + "input_order": { + "required": [ + "photomaker_model_name" + ] + }, + "is_input_list": false, + "output": [ + "PHOTOMAKER" + ], + "output_is_list": [ + false + ], + "output_name": [ + "PHOTOMAKER" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PhotoMakerLoader_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/photomaker", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "photomaker_model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [] + } + ] + }, + "output": { + "_0_PHOTOMAKER_": [ + "PHOTOMAKER", + { + "display_name": "_0_PHOTOMAKER_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PhotoMakerLoader_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/photomaker", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PhotoMakerLoader_ISO" + }, + "PhotoMakerEncode_ISO": { + "input_types": { + "required": { + "photomaker": { + "__pyisolate_tuple__": [ + "PHOTOMAKER", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "photograph of photomaker", + "multiline": true, + "dynamicPrompts": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/photomaker", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "photomaker": [ + "PHOTOMAKER", + {} + ], + "image": [ + "IMAGE", + {} + ], + "clip": [ + "CLIP", + {} + ], + "text": [ + "STRING", + { + "default": "photograph of photomaker", + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "input_order": { + "required": [ + "photomaker", + "image", + "clip", + "text" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PhotoMakerEncode_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/photomaker", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "photomaker": [ + "PHOTOMAKER", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "clip": [ + "CLIP", + { + "optional": false + } + ], + "text": [ + "STRING", + { + "optional": false, + "default": "photograph of photomaker", + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PhotoMakerEncode_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/photomaker", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PhotoMakerEncode_ISO" + }, + "CLIPTextEncodePixArtAlpha_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "width": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "text": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + {} + ] + } + }, + "input_order": { + "required": [ + "width", + "height", + "text", + "clip" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodePixArtAlpha_ISO", + "display_name": null, + "description": "Encodes text and sets the resolution conditioning for PixArt Alpha. Does not apply to PixArt Sigma.", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 0, + "max": 16384 + } + ], + "text": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "clip": [ + "CLIP", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodePixArtAlpha_ISO", + "display_name": null, + "description": "Encodes text and sets the resolution conditioning for PixArt Alpha. Does not apply to PixArt Sigma.", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Encodes text and sets the resolution conditioning for PixArt Alpha. Does not apply to PixArt Sigma.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodePixArtAlpha_ISO" + }, + "ImageBlend_ISO": { + "input_types": { + "required": { + "image1": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image2": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "blend_factor": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "blend_mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "multiply", + "screen", + "overlay", + "soft_light", + "difference" + ] + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/postprocessing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image1": [ + "IMAGE", + {} + ], + "image2": [ + "IMAGE", + {} + ], + "blend_factor": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "blend_mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "multiply", + "screen", + "overlay", + "soft_light", + "difference" + ] + } + ] + } + }, + "input_order": { + "required": [ + "image1", + "image2", + "blend_factor", + "blend_mode" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageBlend_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image1": [ + "IMAGE", + { + "optional": false + } + ], + "image2": [ + "IMAGE", + { + "optional": false + } + ], + "blend_factor": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "blend_mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "normal", + "multiply", + "screen", + "overlay", + "soft_light", + "difference" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageBlend_ISO", + "display_name": null, + "description": "", + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageBlend_ISO" + }, + "ImageBlur_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "blur_radius": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 31, + "step": 1 + } + ] + }, + "sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.1 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/postprocessing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageBlur_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "blur_radius": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 31, + "step": 1 + } + ], + "sigma": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.1 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageBlur_ISO", + "display_name": null, + "description": "", + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageBlur_ISO" + }, + "ImageQuantize_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "colors": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 1, + "max": 256, + "step": 1 + } + ] + }, + "dither": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "none", + "floyd-steinberg", + "bayer-2", + "bayer-4", + "bayer-8", + "bayer-16" + ] + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/postprocessing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "colors": [ + "INT", + { + "default": 256, + "min": 1, + "max": 256, + "step": 1 + } + ], + "dither": [ + "COMBO", + { + "multiselect": false, + "options": [ + "none", + "floyd-steinberg", + "bayer-2", + "bayer-4", + "bayer-8", + "bayer-16" + ] + } + ] + } + }, + "input_order": { + "required": [ + "image", + "colors", + "dither" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageQuantize_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "colors": [ + "INT", + { + "optional": false, + "default": 256, + "min": 1, + "max": 256, + "step": 1 + } + ], + "dither": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "none", + "floyd-steinberg", + "bayer-2", + "bayer-4", + "bayer-8", + "bayer-16" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageQuantize_ISO", + "display_name": null, + "description": "", + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageQuantize_ISO" + }, + "ImageSharpen_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "sharpen_radius": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 31, + "step": 1 + } + ] + }, + "sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.01 + } + ] + }, + "alpha": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 5.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/postprocessing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageSharpen_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "sharpen_radius": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 31, + "step": 1 + } + ], + "sigma": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.1, + "max": 10.0, + "step": 0.01 + } + ], + "alpha": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 5.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageSharpen_ISO", + "display_name": null, + "description": "", + "category": "image/postprocessing", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageSharpen_ISO" + }, + "ImageScaleToTotalPixels_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "upscale_method": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "nearest-exact", + "bilinear", + "area", + "bicubic", + "lanczos" + ] + } + ] + }, + "megapixels": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.01, + "max": 16.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/upscaling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "upscale_method": [ + "COMBO", + { + "multiselect": false, + "options": [ + "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" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageScaleToTotalPixels_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/upscaling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "upscale_method": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "nearest-exact", + "bilinear", + "area", + "bicubic", + "lanczos" + ] + } + ], + "megapixels": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.01, + "max": 16.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageScaleToTotalPixels_ISO", + "display_name": null, + "description": "", + "category": "image/upscaling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ImageScaleToTotalPixels_ISO" + }, + "PrimitiveString_ISO": { + "input_types": { + "required": { + "value": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/primitive", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "value": [ + "STRING", + { + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "value" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PrimitiveString_ISO", + "display_name": "String_ISO", + "description": "", + "python_module": null, + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "value": [ + "STRING", + { + "optional": false, + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PrimitiveString_ISO", + "display_name": "String_ISO", + "description": "", + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "String_ISO" + }, + "PrimitiveStringMultiline_ISO": { + "input_types": { + "required": { + "value": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/primitive", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "value": [ + "STRING", + { + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "value" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PrimitiveStringMultiline_ISO", + "display_name": "String (Multiline)_ISO", + "description": "", + "python_module": null, + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "value": [ + "STRING", + { + "optional": false, + "multiline": true + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PrimitiveStringMultiline_ISO", + "display_name": "String (Multiline)_ISO", + "description": "", + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "String (Multiline)_ISO" + }, + "PrimitiveInt_ISO": { + "input_types": { + "required": { + "value": { + "__pyisolate_tuple__": [ + "INT", + { + "min": -9223372036854775807, + "max": 9223372036854775807, + "control_after_generate": true + } + ] + } + } + }, + "return_types": [ + "INT" + ], + "return_names": [ + "INT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/primitive", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "value": [ + "INT", + { + "min": -9223372036854775807, + "max": 9223372036854775807, + "control_after_generate": true + } + ] + } + }, + "input_order": { + "required": [ + "value" + ] + }, + "is_input_list": false, + "output": [ + "INT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "INT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PrimitiveInt_ISO", + "display_name": "Int_ISO", + "description": "", + "python_module": null, + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "value": [ + "INT", + { + "optional": false, + "min": -9223372036854775807, + "max": 9223372036854775807, + "control_after_generate": true + } + ] + }, + "output": { + "_0_INT_": [ + "INT", + { + "display_name": "_0_INT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PrimitiveInt_ISO", + "display_name": "Int_ISO", + "description": "", + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Int_ISO" + }, + "PrimitiveFloat_ISO": { + "input_types": { + "required": { + "value": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "min": -9223372036854775807, + "max": 9223372036854775807 + } + ] + } + } + }, + "return_types": [ + "FLOAT" + ], + "return_names": [ + "FLOAT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/primitive", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "value": [ + "FLOAT", + { + "min": -9223372036854775807, + "max": 9223372036854775807 + } + ] + } + }, + "input_order": { + "required": [ + "value" + ] + }, + "is_input_list": false, + "output": [ + "FLOAT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "FLOAT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PrimitiveFloat_ISO", + "display_name": "Float_ISO", + "description": "", + "python_module": null, + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "value": [ + "FLOAT", + { + "optional": false, + "min": -9223372036854775807, + "max": 9223372036854775807 + } + ] + }, + "output": { + "_0_FLOAT_": [ + "FLOAT", + { + "display_name": "_0_FLOAT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PrimitiveFloat_ISO", + "display_name": "Float_ISO", + "description": "", + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Float_ISO" + }, + "PrimitiveBoolean_ISO": { + "input_types": { + "required": { + "value": { + "__pyisolate_tuple__": [ + "BOOLEAN", + {} + ] + } + } + }, + "return_types": [ + "BOOLEAN" + ], + "return_names": [ + "BOOLEAN" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/primitive", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "value": [ + "BOOLEAN", + {} + ] + } + }, + "input_order": { + "required": [ + "value" + ] + }, + "is_input_list": false, + "output": [ + "BOOLEAN" + ], + "output_is_list": [ + false + ], + "output_name": [ + "BOOLEAN" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PrimitiveBoolean_ISO", + "display_name": "Boolean_ISO", + "description": "", + "python_module": null, + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "value": [ + "BOOLEAN", + { + "optional": false + } + ] + }, + "output": { + "_0_BOOLEAN_": [ + "BOOLEAN", + { + "display_name": "_0_BOOLEAN_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PrimitiveBoolean_ISO", + "display_name": "Boolean_ISO", + "description": "", + "category": "utils/primitive", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Boolean_ISO" + }, + "TextEncodeQwenImageEdit_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "optional": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "prompt": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "optional": { + "vae": [ + "VAE", + {} + ], + "image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "clip", + "prompt" + ], + "optional": [ + "vae", + "image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TextEncodeQwenImageEdit_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "vae": [ + "VAE", + { + "optional": true + } + ], + "image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TextEncodeQwenImageEdit_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TextEncodeQwenImageEdit_ISO" + }, + "TextEncodeQwenImageEditPlus_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + } + }, + "optional": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "image1": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image2": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image3": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "prompt": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "optional": { + "vae": [ + "VAE", + {} + ], + "image1": [ + "IMAGE", + {} + ], + "image2": [ + "IMAGE", + {} + ], + "image3": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "clip", + "prompt" + ], + "optional": [ + "vae", + "image1", + "image2", + "image3" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TextEncodeQwenImageEditPlus_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "vae": [ + "VAE", + { + "optional": true + } + ], + "image1": [ + "IMAGE", + { + "optional": true + } + ], + "image2": [ + "IMAGE", + { + "optional": true + } + ], + "image3": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TextEncodeQwenImageEditPlus_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TextEncodeQwenImageEditPlus_ISO" + }, + "RebatchLatents_ISO": { + "input_types": { + "required": { + "latents": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/batch", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "latents": [ + "LATENT", + {} + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "latents", + "batch_size" + ] + }, + "is_input_list": true, + "output": [ + "LATENT" + ], + "output_is_list": [ + true + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RebatchLatents_ISO", + "display_name": "Rebatch Latents_ISO", + "description": "", + "python_module": null, + "category": "latent/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "latents": [ + "LATENT", + { + "optional": false + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "RebatchLatents_ISO", + "display_name": "Rebatch Latents_ISO", + "description": "", + "category": "latent/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Rebatch Latents_ISO" + }, + "RebatchImages_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/batch", + "output_node": false, + "output_is_list": [ + true + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + {} + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "input_order": { + "required": [ + "images", + "batch_size" + ] + }, + "is_input_list": true, + "output": [ + "IMAGE" + ], + "output_is_list": [ + true + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RebatchImages_ISO", + "display_name": "Rebatch Images_ISO", + "description": "", + "python_module": null, + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": true + } + ] + }, + "hidden": [], + "name": "RebatchImages_ISO", + "display_name": "Rebatch Images_ISO", + "description": "", + "category": "image/batch", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Rebatch Images_ISO" + }, + "ScaleROPE_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scale_x": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + }, + "shift_x": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ] + }, + "scale_y": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + }, + "shift_y": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ] + }, + "scale_t": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ] + }, + "shift_t": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/model_patches", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "scale_x": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_x": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ], + "scale_y": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_y": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ], + "scale_t": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_t": [ + "FLOAT", + { + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "scale_x", + "shift_x", + "scale_y", + "shift_y", + "scale_t", + "shift_t" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ScaleROPE_ISO", + "display_name": null, + "description": "Scale and shift the ROPE of the model.", + "python_module": null, + "category": "advanced/model_patches", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scale_x": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_x": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ], + "scale_y": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_y": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ], + "scale_t": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 100.0, + "step": 0.1 + } + ], + "shift_t": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -256.0, + "max": 256.0, + "step": 0.1 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ScaleROPE_ISO", + "display_name": null, + "description": "Scale and shift the ROPE of the model.", + "category": "advanced/model_patches", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Scale and shift the ROPE of the model.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ScaleROPE_ISO" + }, + "SelfAttentionGuidance_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": -2.0, + "max": 5.0, + "step": 0.01 + } + ] + }, + "blur_sigma": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 2.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SelfAttentionGuidance_ISO", + "display_name": "Self-Attention Guidance_ISO", + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "scale": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": -2.0, + "max": 5.0, + "step": 0.01 + } + ], + "blur_sigma": [ + "FLOAT", + { + "optional": false, + "default": 2.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SelfAttentionGuidance_ISO", + "display_name": "Self-Attention Guidance_ISO", + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Self-Attention Guidance_ISO" + }, + "TripleCLIPLoader_ISO": { + "input_types": { + "required": { + "clip_name1": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "clip_name2": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "clip_name3": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + } + } + }, + "return_types": [ + "CLIP" + ], + "return_names": [ + "CLIP" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip_name1": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name2": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name3": [ + "COMBO", + { + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + } + }, + "input_order": { + "required": [ + "clip_name1", + "clip_name2", + "clip_name3" + ] + }, + "is_input_list": false, + "output": [ + "CLIP" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CLIP" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TripleCLIPLoader_ISO", + "display_name": null, + "description": "[Recipes]\n\nsd3: clip-l, clip-g, t5", + "python_module": null, + "category": "advanced/loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_name1": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name2": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ], + "clip_name3": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "EVA02_CLIP_L_336_psz14_s6B.pt", + "awq-int4-flux.1-t5xxl.safetensors", + "clip_l.safetensors", + "gemma_3_12B_it.safetensors", + "gemma_3_12B_it_fp4_mixed.safetensors", + "llama_3.1_8b_instruct_fp8_scaled.safetensors", + "llava_llama3_fp8_scaled.safetensors", + "oldt5_xxl_fp8_e4m3fn_scaled.safetensors", + "qwen_2.5_vl_7b_fp8_scaled.safetensors", + "qwen_3_4b.safetensors", + "qwen_3_8b_fp8mixed.safetensors", + "t5xxl_fp16.safetensors", + "t5xxl_fp8_e4m3fn.safetensors", + "t5xxl_fp8_e4m3fn_scaled.safetensors", + "umt5-xxl-enc-bf16.safetensors", + "umt5_xxl_fp8_e4m3fn_scaled.safetensors" + ] + } + ] + }, + "output": { + "_0_CLIP_": [ + "CLIP", + { + "display_name": "_0_CLIP_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TripleCLIPLoader_ISO", + "display_name": null, + "description": "[Recipes]\n\nsd3: clip-l, clip-g, t5", + "category": "advanced/loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "[Recipes]\n\nsd3: clip-l, clip-g, t5", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TripleCLIPLoader_ISO" + }, + "EmptySD3LatentImage_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/sd3", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "EmptySD3LatentImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/sd3", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "EmptySD3LatentImage_ISO", + "display_name": null, + "description": "", + "category": "latent/sd3", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "EmptySD3LatentImage_ISO" + }, + "CLIPTextEncodeSD3_ISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "clip_l": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "clip_g": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "t5xxl": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true, + "dynamicPrompts": true + } + ] + }, + "empty_padding": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "none", + "empty_prompt" + ] + } + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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": [ + "COMBO", + { + "multiselect": false, + "options": [ + "none", + "empty_prompt" + ] + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "clip_l", + "clip_g", + "t5xxl", + "empty_padding" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncodeSD3_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "clip_l": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "clip_g": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "t5xxl": [ + "STRING", + { + "optional": false, + "multiline": true, + "dynamicPrompts": true + } + ], + "empty_padding": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "none", + "empty_prompt" + ] + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncodeSD3_ISO", + "display_name": null, + "description": "", + "category": "advanced/conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncodeSD3_ISO" + }, + "ControlNetApplySD3_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "control_net": { + "__pyisolate_tuple__": [ + "CONTROL_NET", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING" + ], + "return_names": [ + "positive", + "negative" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/controlnet", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "positive", + "negative" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "ControlNetApplySD3_ISO", + "display_name": "Apply Controlnet with VAE_ISO", + "description": "", + "python_module": null, + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": true, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "control_net": [ + "CONTROL_NET", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ControlNetApplySD3_ISO", + "display_name": "Apply Controlnet with VAE_ISO", + "description": "", + "category": "conditioning/controlnet", + "output_node": false, + "deprecated": true, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": true, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Apply Controlnet with VAE_ISO" + }, + "SkipLayerGuidanceSD3_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "layers": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ] + }, + "scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 3.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.01, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SkipLayerGuidanceSD3_ISO", + "display_name": null, + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "layers": [ + "STRING", + { + "optional": false, + "default": "7, 8, 9", + "multiline": false + } + ], + "scale": [ + "FLOAT", + { + "optional": false, + "default": 3.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.01, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SkipLayerGuidanceSD3_ISO", + "display_name": null, + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SkipLayerGuidanceSD3_ISO" + }, + "SD_4XUpscale_Conditioning_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "scale_ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 4.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "noise_augmentation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/upscale_diffusion", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "SD_4XUpscale_Conditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/upscale_diffusion", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "scale_ratio": [ + "FLOAT", + { + "optional": false, + "default": 4.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ], + "noise_augmentation": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SD_4XUpscale_Conditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/upscale_diffusion", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SD_4XUpscale_Conditioning_ISO" + }, + "SkipLayerGuidanceDiT_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "double_layers": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ] + }, + "single_layers": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ] + }, + "scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 3.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.01, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "rescaling_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SkipLayerGuidanceDiT_ISO", + "display_name": null, + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "double_layers": [ + "STRING", + { + "optional": false, + "default": "7, 8, 9", + "multiline": false + } + ], + "single_layers": [ + "STRING", + { + "optional": false, + "default": "7, 8, 9", + "multiline": false + } + ], + "scale": [ + "FLOAT", + { + "optional": false, + "default": 3.0, + "min": 0.0, + "max": 10.0, + "step": 0.1 + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.01, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.15, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "rescaling_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 10.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SkipLayerGuidanceDiT_ISO", + "display_name": null, + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Generic version of SkipLayerGuidance node that can be used on every DiT model.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SkipLayerGuidanceDiT_ISO" + }, + "SkipLayerGuidanceDiTSimple_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "double_layers": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ] + }, + "single_layers": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ] + }, + "start_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "end_percent": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "double_layers": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ], + "single_layers": [ + "STRING", + { + "default": "7, 8, 9", + "multiline": false + } + ], + "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": [ + "model", + "double_layers", + "single_layers", + "start_percent", + "end_percent" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "SkipLayerGuidanceDiTSimple_ISO", + "display_name": null, + "description": "Simple version of the SkipLayerGuidanceDiT node that only modifies the uncond pass.", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "double_layers": [ + "STRING", + { + "optional": false, + "default": "7, 8, 9", + "multiline": false + } + ], + "single_layers": [ + "STRING", + { + "optional": false, + "default": "7, 8, 9", + "multiline": false + } + ], + "start_percent": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ], + "end_percent": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.001 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SkipLayerGuidanceDiTSimple_ISO", + "display_name": null, + "description": "Simple version of the SkipLayerGuidanceDiT node that only modifies the uncond pass.", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "Simple version of the SkipLayerGuidanceDiT node that only modifies the uncond pass.", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SkipLayerGuidanceDiTSimple_ISO" + }, + "StableZero123_Conditioning_ISO": { + "input_types": { + "required": { + "clip_vision": { + "__pyisolate_tuple__": [ + "CLIP_VISION", + {} + ] + }, + "init_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "elevation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "azimuth": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/3d_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "StableZero123_Conditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_vision": [ + "CLIP_VISION", + { + "optional": false + } + ], + "init_image": [ + "IMAGE", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "elevation": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ], + "azimuth": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableZero123_Conditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableZero123_Conditioning_ISO" + }, + "StableZero123_Conditioning_Batched_ISO": { + "input_types": { + "required": { + "clip_vision": { + "__pyisolate_tuple__": [ + "CLIP_VISION", + {} + ] + }, + "init_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "elevation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "azimuth": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "elevation_batch_increment": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "azimuth_batch_increment": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/3d_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "StableZero123_Conditioning_Batched_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_vision": [ + "CLIP_VISION", + { + "optional": false + } + ], + "init_image": [ + "IMAGE", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 256, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "elevation": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ], + "azimuth": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ], + "elevation_batch_increment": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ], + "azimuth_batch_increment": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -180.0, + "max": 180.0, + "step": 0.1, + "round": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableZero123_Conditioning_Batched_ISO", + "display_name": null, + "description": "", + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableZero123_Conditioning_Batched_ISO" + }, + "SV3D_Conditioning_ISO": { + "input_types": { + "required": { + "clip_vision": { + "__pyisolate_tuple__": [ + "CLIP_VISION", + {} + ] + }, + "init_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 576, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 576, + "min": 16, + "max": 16384, + "step": 8 + } + ] + }, + "video_frames": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 21, + "min": 1, + "max": 4096 + } + ] + }, + "elevation": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.0, + "min": -90.0, + "max": 90.0, + "step": 0.1, + "round": false + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/3d_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "SV3D_Conditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip_vision": [ + "CLIP_VISION", + { + "optional": false + } + ], + "init_image": [ + "IMAGE", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 576, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 576, + "min": 16, + "max": 16384, + "step": 8 + } + ], + "video_frames": [ + "INT", + { + "optional": false, + "default": 21, + "min": 1, + "max": 4096 + } + ], + "elevation": [ + "FLOAT", + { + "optional": false, + "default": 0.0, + "min": -90.0, + "max": 90.0, + "step": 0.1, + "round": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "SV3D_Conditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/3d_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SV3D_Conditioning_ISO" + }, + "StableCascade_EmptyLatentImage_ISO": { + "input_types": { + "required": { + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 256, + "max": 16384, + "step": 8 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 256, + "max": 16384, + "step": 8 + } + ] + }, + "compression": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42, + "min": 4, + "max": 128, + "step": 1 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + } + }, + "return_types": [ + "LATENT", + "LATENT" + ], + "return_names": [ + "stage_c", + "stage_b" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/stable_cascade", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "LATENT" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "stage_c", + "stage_b" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "StableCascade_EmptyLatentImage_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 256, + "max": 16384, + "step": 8 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 256, + "max": 16384, + "step": 8 + } + ], + "compression": [ + "INT", + { + "optional": false, + "default": 42, + "min": 4, + "max": 128, + "step": 1 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "stage_c", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "stage_b", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableCascade_EmptyLatentImage_ISO", + "display_name": null, + "description": "", + "category": "latent/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableCascade_EmptyLatentImage_ISO" + }, + "StableCascade_StageB_Conditioning_ISO": { + "input_types": { + "required": { + "conditioning": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "stage_c": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/stable_cascade", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "conditioning": [ + "CONDITIONING", + {} + ], + "stage_c": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "conditioning", + "stage_c" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StableCascade_StageB_Conditioning_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "conditioning": [ + "CONDITIONING", + { + "optional": false + } + ], + "stage_c": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableCascade_StageB_Conditioning_ISO", + "display_name": null, + "description": "", + "category": "conditioning/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableCascade_StageB_Conditioning_ISO" + }, + "StableCascade_StageC_VAEEncode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "compression": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42, + "min": 4, + "max": 128, + "step": 1 + } + ] + } + } + }, + "return_types": [ + "LATENT", + "LATENT" + ], + "return_names": [ + "stage_c", + "stage_b" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/stable_cascade", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "vae": [ + "VAE", + {} + ], + "compression": [ + "INT", + { + "default": 42, + "min": 4, + "max": 128, + "step": 1 + } + ] + } + }, + "input_order": { + "required": [ + "image", + "vae", + "compression" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "LATENT" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "stage_c", + "stage_b" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "StableCascade_StageC_VAEEncode_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "compression": [ + "INT", + { + "optional": false, + "default": 42, + "min": 4, + "max": 128, + "step": 1 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "stage_c", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "stage_b", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableCascade_StageC_VAEEncode_ISO", + "display_name": null, + "description": "", + "category": "latent/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableCascade_StageC_VAEEncode_ISO" + }, + "StableCascade_SuperResolutionControlnet_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE", + "LATENT", + "LATENT" + ], + "return_names": [ + "controlnet_input", + "stage_c", + "stage_b" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing/stable_cascade", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "vae": [ + "VAE", + {} + ] + } + }, + "input_order": { + "required": [ + "image", + "vae" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "LATENT", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "controlnet_input", + "stage_c", + "stage_b" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "StableCascade_SuperResolutionControlnet_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "controlnet_input", + "is_output_list": false + } + ], + "_1_LATENT_": [ + "LATENT", + { + "display_name": "stage_c", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "stage_b", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StableCascade_SuperResolutionControlnet_ISO", + "display_name": null, + "description": "", + "category": "_for_testing/stable_cascade", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "StableCascade_SuperResolutionControlnet_ISO" + }, + "StringConcatenate_ISO": { + "input_types": { + "required": { + "string_a": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "string_b": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "delimiter": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string_a": [ + "STRING", + { + "multiline": true + } + ], + "string_b": [ + "STRING", + { + "multiline": true + } + ], + "delimiter": [ + "STRING", + { + "default": "", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "string_a", + "string_b", + "delimiter" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringConcatenate_ISO", + "display_name": "Concatenate_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string_a": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "string_b": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "delimiter": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringConcatenate_ISO", + "display_name": "Concatenate_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Concatenate_ISO" + }, + "StringSubstring_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "start": { + "__pyisolate_tuple__": [ + "INT", + {} + ] + }, + "end": { + "__pyisolate_tuple__": [ + "INT", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "start": [ + "INT", + {} + ], + "end": [ + "INT", + {} + ] + } + }, + "input_order": { + "required": [ + "string", + "start", + "end" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringSubstring_ISO", + "display_name": "Substring_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "start": [ + "INT", + { + "optional": false + } + ], + "end": [ + "INT", + { + "optional": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringSubstring_ISO", + "display_name": "Substring_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Substring_ISO" + }, + "StringLength_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + } + } + }, + "return_types": [ + "INT" + ], + "return_names": [ + "length" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "string" + ] + }, + "is_input_list": false, + "output": [ + "INT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "length" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringLength_ISO", + "display_name": "Length_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ] + }, + "output": { + "_0_INT_": [ + "INT", + { + "display_name": "length", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringLength_ISO", + "display_name": "Length_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Length_ISO" + }, + "CaseConverter_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "UPPERCASE", + "lowercase", + "Capitalize", + "Title Case" + ] + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "UPPERCASE", + "lowercase", + "Capitalize", + "Title Case" + ] + } + ] + } + }, + "input_order": { + "required": [ + "string", + "mode" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CaseConverter_ISO", + "display_name": "Case Converter_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "UPPERCASE", + "lowercase", + "Capitalize", + "Title Case" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CaseConverter_ISO", + "display_name": "Case Converter_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Case Converter_ISO" + }, + "StringTrim_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Both", + "Left", + "Right" + ] + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Both", + "Left", + "Right" + ] + } + ] + } + }, + "input_order": { + "required": [ + "string", + "mode" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringTrim_ISO", + "display_name": "Trim_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "Both", + "Left", + "Right" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringTrim_ISO", + "display_name": "Trim_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Trim_ISO" + }, + "StringReplace_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "find": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "replace": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "find": [ + "STRING", + { + "multiline": true + } + ], + "replace": [ + "STRING", + { + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "string", + "find", + "replace" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringReplace_ISO", + "display_name": "Replace_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "find": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "replace": [ + "STRING", + { + "optional": false, + "multiline": true + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringReplace_ISO", + "display_name": "Replace_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Replace_ISO" + }, + "StringContains_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "substring": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "case_sensitive": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + } + } + }, + "return_types": [ + "BOOLEAN" + ], + "return_names": [ + "contains" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "substring": [ + "STRING", + { + "multiline": true + } + ], + "case_sensitive": [ + "BOOLEAN", + { + "default": true + } + ] + } + }, + "input_order": { + "required": [ + "string", + "substring", + "case_sensitive" + ] + }, + "is_input_list": false, + "output": [ + "BOOLEAN" + ], + "output_is_list": [ + false + ], + "output_name": [ + "contains" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringContains_ISO", + "display_name": "Contains_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "substring": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "case_sensitive": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ] + }, + "output": { + "_0_BOOLEAN_": [ + "BOOLEAN", + { + "display_name": "contains", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringContains_ISO", + "display_name": "Contains_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Contains_ISO" + }, + "StringCompare_ISO": { + "input_types": { + "required": { + "string_a": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "string_b": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Starts With", + "Ends With", + "Equal" + ] + } + ] + }, + "case_sensitive": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + } + } + }, + "return_types": [ + "BOOLEAN" + ], + "return_names": [ + "BOOLEAN" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string_a": [ + "STRING", + { + "multiline": true + } + ], + "string_b": [ + "STRING", + { + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Starts With", + "Ends With", + "Equal" + ] + } + ], + "case_sensitive": [ + "BOOLEAN", + { + "default": true + } + ] + } + }, + "input_order": { + "required": [ + "string_a", + "string_b", + "mode", + "case_sensitive" + ] + }, + "is_input_list": false, + "output": [ + "BOOLEAN" + ], + "output_is_list": [ + false + ], + "output_name": [ + "BOOLEAN" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StringCompare_ISO", + "display_name": "Compare_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string_a": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "string_b": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "Starts With", + "Ends With", + "Equal" + ] + } + ], + "case_sensitive": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ] + }, + "output": { + "_0_BOOLEAN_": [ + "BOOLEAN", + { + "display_name": "_0_BOOLEAN_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "StringCompare_ISO", + "display_name": "Compare_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Compare_ISO" + }, + "RegexMatch_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "regex_pattern": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "case_insensitive": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "multiline": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "dotall": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + } + }, + "return_types": [ + "BOOLEAN" + ], + "return_names": [ + "matches" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "multiline": true + } + ], + "case_insensitive": [ + "BOOLEAN", + { + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "default": false + } + ] + } + }, + "input_order": { + "required": [ + "string", + "regex_pattern", + "case_insensitive", + "multiline", + "dotall" + ] + }, + "is_input_list": false, + "output": [ + "BOOLEAN" + ], + "output_is_list": [ + false + ], + "output_name": [ + "matches" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RegexMatch_ISO", + "display_name": "Regex Match_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "case_insensitive": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ] + }, + "output": { + "_0_BOOLEAN_": [ + "BOOLEAN", + { + "display_name": "matches", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RegexMatch_ISO", + "display_name": "Regex Match_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Regex Match_ISO" + }, + "RegexExtract_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "regex_pattern": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "First Match", + "All Matches", + "First Group", + "All Groups" + ] + } + ] + }, + "case_insensitive": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "multiline": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "dotall": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "group_index": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 0, + "max": 100 + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "First Match", + "All Matches", + "First Group", + "All Groups" + ] + } + ], + "case_insensitive": [ + "BOOLEAN", + { + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "default": false + } + ], + "group_index": [ + "INT", + { + "default": 1, + "min": 0, + "max": 100 + } + ] + } + }, + "input_order": { + "required": [ + "string", + "regex_pattern", + "mode", + "case_insensitive", + "multiline", + "dotall", + "group_index" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RegexExtract_ISO", + "display_name": "Regex Extract_ISO", + "description": "", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "First Match", + "All Matches", + "First Group", + "All Groups" + ] + } + ], + "case_insensitive": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ], + "group_index": [ + "INT", + { + "optional": false, + "default": 1, + "min": 0, + "max": 100 + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RegexExtract_ISO", + "display_name": "Regex Extract_ISO", + "description": "", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Regex Extract_ISO" + }, + "RegexReplace_ISO": { + "input_types": { + "required": { + "string": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "regex_pattern": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "replace": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + } + }, + "optional": { + "case_insensitive": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "multiline": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "dotall": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "When enabled, the dot (.) character will match any character including newline characters. When disabled, dots won't match newlines.", + "default": false + } + ] + }, + "count": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Maximum number of replacements to make. Set to 0 to replace all occurrences (default). Set to 1 to replace only the first match, 2 for the first two matches, etc.", + "default": 0, + "min": 0, + "max": 100 + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "utils/string", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "string": [ + "STRING", + { + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "multiline": true + } + ], + "replace": [ + "STRING", + { + "multiline": true + } + ] + }, + "optional": { + "case_insensitive": [ + "BOOLEAN", + { + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "tooltip": "When enabled, the dot (.) character will match any character including newline characters. When disabled, dots won't match newlines.", + "default": false + } + ], + "count": [ + "INT", + { + "tooltip": "Maximum number of replacements to make. Set to 0 to replace all occurrences (default). Set to 1 to replace only the first match, 2 for the first two matches, etc.", + "default": 0, + "min": 0, + "max": 100 + } + ] + } + }, + "input_order": { + "required": [ + "string", + "regex_pattern", + "replace" + ], + "optional": [ + "case_insensitive", + "multiline", + "dotall", + "count" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RegexReplace_ISO", + "display_name": "Regex Replace_ISO", + "description": "Find and replace text using regex patterns.", + "python_module": null, + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "string": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "regex_pattern": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "replace": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "case_insensitive": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "multiline": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ], + "dotall": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "When enabled, the dot (.) character will match any character including newline characters. When disabled, dots won't match newlines.", + "default": false + } + ], + "count": [ + "INT", + { + "optional": true, + "tooltip": "Maximum number of replacements to make. Set to 0 to replace all occurrences (default). Set to 1 to replace only the first match, 2 for the first two matches, etc.", + "default": 0, + "min": 0, + "max": 100 + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RegexReplace_ISO", + "display_name": "Regex Replace_ISO", + "description": "Find and replace text using regex patterns.", + "category": "utils/string", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Find and replace text using regex patterns.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Regex Replace_ISO" + }, + "TCFG_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "patched_model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "advanced/guidance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "patched_model" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TCFG_ISO", + "display_name": "Tangential Damping CFG_ISO", + "description": "TCFG \u2013 Tangential Damping CFG (2503.18137)\n\nRefine the uncond (negative) to align with the cond (positive) for improving quality.", + "python_module": null, + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "patched_model", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TCFG_ISO", + "display_name": "Tangential Damping CFG_ISO", + "description": "TCFG \u2013 Tangential Damping CFG (2503.18137)\n\nRefine the uncond (negative) to align with the cond (positive) for improving quality.", + "category": "advanced/guidance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "TCFG \u2013 Tangential Damping CFG (2503.18137)\n\nRefine the uncond (negative) to align with the cond (positive) for improving quality.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tangential Damping CFG_ISO" + }, + "TomePatchModel_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.3, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "model_patches/unet", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "ratio": [ + "FLOAT", + { + "default": 0.3, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "ratio" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TomePatchModel_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "ratio": [ + "FLOAT", + { + "optional": false, + "default": 0.3, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TomePatchModel_ISO", + "display_name": null, + "description": "", + "category": "model_patches/unet", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TomePatchModel_ISO" + }, + "TorchCompileModel_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "backend": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "inductor", + "cudagraphs" + ] + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "_for_testing", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "backend": [ + "COMBO", + { + "multiselect": false, + "options": [ + "inductor", + "cudagraphs" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model", + "backend" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TorchCompileModel_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "backend": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "inductor", + "cudagraphs" + ] + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "_0_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TorchCompileModel_ISO", + "display_name": null, + "description": "", + "category": "_for_testing", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TorchCompileModel_ISO" + }, + "TrainLoraNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The model to train the LoRA on." + } + ] + }, + "latents": { + "__pyisolate_tuple__": [ + "LATENT", + { + "tooltip": "The Latents to use for training, serve as dataset/input of the model." + } + ] + }, + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + { + "tooltip": "The positive conditioning to use for training." + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The batch size to use for training.", + "default": 1, + "min": 1, + "max": 10000 + } + ] + }, + "grad_accumulation_steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of gradient accumulation steps to use for training.", + "default": 1, + "min": 1, + "max": 1024 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of steps to train the LoRA for.", + "default": 16, + "min": 1, + "max": 100000 + } + ] + }, + "learning_rate": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "The learning rate to use for training.", + "default": 0.0005, + "min": 1e-07, + "max": 1.0, + "step": 1e-07 + } + ] + }, + "rank": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The rank of the LoRA layers.", + "default": 8, + "min": 1, + "max": 128 + } + ] + }, + "optimizer": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The optimizer to use for training.", + "default": "AdamW", + "multiselect": false, + "options": [ + "AdamW", + "Adam", + "SGD", + "RMSprop" + ] + } + ] + }, + "loss_function": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The loss function to use for training.", + "default": "MSE", + "multiselect": false, + "options": [ + "MSE", + "L1", + "Huber", + "SmoothL1" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The seed to use for training (used in generator for LoRA weight initialization and noise sampling)", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ] + }, + "training_dtype": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The dtype to use for training.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ] + }, + "lora_dtype": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The dtype to use for lora.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ] + }, + "algorithm": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The algorithm to use for training.", + "default": "LoRA", + "multiselect": false, + "options": [ + "LoRA", + "LoHa", + "LoKr", + "OFT" + ] + } + ] + }, + "gradient_checkpointing": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Use gradient checkpointing for training.", + "default": true + } + ] + }, + "existing_lora": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The existing LoRA to append to. Set to None for new LoRA.", + "default": "[None]", + "multiselect": false, + "options": [ + "FLUX/Classic_Doomguy_for_Flux.safetensors", + "FLUX/FluxMythP0rtr4itStyle.safetensors", + "FLUX/aidmaMJ6.1-FLUX-v0.5.safetensors", + "JuggerCineXL2.safetensors", + "Qwen-Image-Lightning-4steps-V1.0.safetensors", + "SDXLFaeTastic2400.safetensors", + "Sinfully_Stylish_1.0_SDXL.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/high_noise_model.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/low_noise_model.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/high_noise.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/low_noise.safetensors", + "ZiTD3tailed4nime.safetensors", + "angela3_000001500.safetensors", + "beauty_of_rain_r032_8e-05_wan1_3B.safetensors", + "jan6.safetensors", + "jan6_000001500.safetensors", + "kristi5.safetensors", + "kristi5_000001000.safetensors", + "kristi_z_000000250.safetensors", + "kristi_z_000002000.safetensors", + "ltx-2-19b-distilled-lora-384.safetensors", + "ltx-2-19b-lora-camera-control-dolly-left.safetensors", + "ltxv/arcane_jinx_step_12000_comfy.safetensors", + "ltxv/ltxv_095_squish_lora.safetensors", + "zimage/angela3_000001500.safetensors", + "zimage/jan6.safetensors", + "zimage/kristi5.safetensors", + "zimage/kristi6.safetensors", + "[None]" + ] + } + ] + } + } + }, + "return_types": [ + "MODEL", + "LORA_MODEL", + "LOSS_MAP", + "INT" + ], + "return_names": [ + "model", + "lora", + "loss_map", + "steps" + ], + "function": "EXECUTE_NORMALIZED", + "category": "training", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The model to train the LoRA on." + } + ], + "latents": [ + "LATENT", + { + "tooltip": "The Latents to use for training, serve as dataset/input of the model." + } + ], + "positive": [ + "CONDITIONING", + { + "tooltip": "The positive conditioning to use for training." + } + ], + "batch_size": [ + "INT", + { + "tooltip": "The batch size to use for training.", + "default": 1, + "min": 1, + "max": 10000 + } + ], + "grad_accumulation_steps": [ + "INT", + { + "tooltip": "The number of gradient accumulation steps to use for training.", + "default": 1, + "min": 1, + "max": 1024 + } + ], + "steps": [ + "INT", + { + "tooltip": "The number of steps to train the LoRA for.", + "default": 16, + "min": 1, + "max": 100000 + } + ], + "learning_rate": [ + "FLOAT", + { + "tooltip": "The learning rate to use for training.", + "default": 0.0005, + "min": 1e-07, + "max": 1.0, + "step": 1e-07 + } + ], + "rank": [ + "INT", + { + "tooltip": "The rank of the LoRA layers.", + "default": 8, + "min": 1, + "max": 128 + } + ], + "optimizer": [ + "COMBO", + { + "tooltip": "The optimizer to use for training.", + "default": "AdamW", + "multiselect": false, + "options": [ + "AdamW", + "Adam", + "SGD", + "RMSprop" + ] + } + ], + "loss_function": [ + "COMBO", + { + "tooltip": "The loss function to use for training.", + "default": "MSE", + "multiselect": false, + "options": [ + "MSE", + "L1", + "Huber", + "SmoothL1" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "The seed to use for training (used in generator for LoRA weight initialization and noise sampling)", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ], + "training_dtype": [ + "COMBO", + { + "tooltip": "The dtype to use for training.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ], + "lora_dtype": [ + "COMBO", + { + "tooltip": "The dtype to use for lora.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ], + "algorithm": [ + "COMBO", + { + "tooltip": "The algorithm to use for training.", + "default": "LoRA", + "multiselect": false, + "options": [ + "LoRA", + "LoHa", + "LoKr", + "OFT" + ] + } + ], + "gradient_checkpointing": [ + "BOOLEAN", + { + "tooltip": "Use gradient checkpointing for training.", + "default": true + } + ], + "existing_lora": [ + "COMBO", + { + "tooltip": "The existing LoRA to append to. Set to None for new LoRA.", + "default": "[None]", + "multiselect": false, + "options": [ + "FLUX/Classic_Doomguy_for_Flux.safetensors", + "FLUX/FluxMythP0rtr4itStyle.safetensors", + "FLUX/aidmaMJ6.1-FLUX-v0.5.safetensors", + "JuggerCineXL2.safetensors", + "Qwen-Image-Lightning-4steps-V1.0.safetensors", + "SDXLFaeTastic2400.safetensors", + "Sinfully_Stylish_1.0_SDXL.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/high_noise_model.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/low_noise_model.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/high_noise.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/low_noise.safetensors", + "ZiTD3tailed4nime.safetensors", + "angela3_000001500.safetensors", + "beauty_of_rain_r032_8e-05_wan1_3B.safetensors", + "jan6.safetensors", + "jan6_000001500.safetensors", + "kristi5.safetensors", + "kristi5_000001000.safetensors", + "kristi_z_000000250.safetensors", + "kristi_z_000002000.safetensors", + "ltx-2-19b-distilled-lora-384.safetensors", + "ltx-2-19b-lora-camera-control-dolly-left.safetensors", + "ltxv/arcane_jinx_step_12000_comfy.safetensors", + "ltxv/ltxv_095_squish_lora.safetensors", + "zimage/angela3_000001500.safetensors", + "zimage/jan6.safetensors", + "zimage/kristi5.safetensors", + "zimage/kristi6.safetensors", + "[None]" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model", + "latents", + "positive", + "batch_size", + "grad_accumulation_steps", + "steps", + "learning_rate", + "rank", + "optimizer", + "loss_function", + "seed", + "training_dtype", + "lora_dtype", + "algorithm", + "gradient_checkpointing", + "existing_lora" + ] + }, + "is_input_list": true, + "output": [ + "MODEL", + "LORA_MODEL", + "LOSS_MAP", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false + ], + "output_name": [ + "model", + "lora", + "loss_map", + "steps" + ], + "output_tooltips": [ + "Model with LoRA applied", + "LoRA weights", + "Loss history", + "Total training steps" + ], + "output_matchtypes": null, + "name": "TrainLoraNode_ISO", + "display_name": "Train LoRA_ISO", + "description": "", + "python_module": null, + "category": "training", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The model to train the LoRA on." + } + ], + "latents": [ + "LATENT", + { + "optional": false, + "tooltip": "The Latents to use for training, serve as dataset/input of the model." + } + ], + "positive": [ + "CONDITIONING", + { + "optional": false, + "tooltip": "The positive conditioning to use for training." + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "tooltip": "The batch size to use for training.", + "default": 1, + "min": 1, + "max": 10000 + } + ], + "grad_accumulation_steps": [ + "INT", + { + "optional": false, + "tooltip": "The number of gradient accumulation steps to use for training.", + "default": 1, + "min": 1, + "max": 1024 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "The number of steps to train the LoRA for.", + "default": 16, + "min": 1, + "max": 100000 + } + ], + "learning_rate": [ + "FLOAT", + { + "optional": false, + "tooltip": "The learning rate to use for training.", + "default": 0.0005, + "min": 1e-07, + "max": 1.0, + "step": 1e-07 + } + ], + "rank": [ + "INT", + { + "optional": false, + "tooltip": "The rank of the LoRA layers.", + "default": 8, + "min": 1, + "max": 128 + } + ], + "optimizer": [ + "COMBO", + { + "optional": false, + "tooltip": "The optimizer to use for training.", + "default": "AdamW", + "multiselect": false, + "options": [ + "AdamW", + "Adam", + "SGD", + "RMSprop" + ] + } + ], + "loss_function": [ + "COMBO", + { + "optional": false, + "tooltip": "The loss function to use for training.", + "default": "MSE", + "multiselect": false, + "options": [ + "MSE", + "L1", + "Huber", + "SmoothL1" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The seed to use for training (used in generator for LoRA weight initialization and noise sampling)", + "default": 0, + "min": 0, + "max": 18446744073709551615 + } + ], + "training_dtype": [ + "COMBO", + { + "optional": false, + "tooltip": "The dtype to use for training.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ], + "lora_dtype": [ + "COMBO", + { + "optional": false, + "tooltip": "The dtype to use for lora.", + "default": "bf16", + "multiselect": false, + "options": [ + "bf16", + "fp32" + ] + } + ], + "algorithm": [ + "COMBO", + { + "optional": false, + "tooltip": "The algorithm to use for training.", + "default": "LoRA", + "multiselect": false, + "options": [ + "LoRA", + "LoHa", + "LoKr", + "OFT" + ] + } + ], + "gradient_checkpointing": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Use gradient checkpointing for training.", + "default": true + } + ], + "existing_lora": [ + "COMBO", + { + "optional": false, + "tooltip": "The existing LoRA to append to. Set to None for new LoRA.", + "default": "[None]", + "multiselect": false, + "options": [ + "FLUX/Classic_Doomguy_for_Flux.safetensors", + "FLUX/FluxMythP0rtr4itStyle.safetensors", + "FLUX/aidmaMJ6.1-FLUX-v0.5.safetensors", + "JuggerCineXL2.safetensors", + "Qwen-Image-Lightning-4steps-V1.0.safetensors", + "SDXLFaeTastic2400.safetensors", + "Sinfully_Stylish_1.0_SDXL.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/high_noise_model.safetensors", + "Wan2.2-I2V-A14B-4steps-lora-rank64-Seko-V1/low_noise_model.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/high_noise.safetensors", + "Wan2.2-T2V-A14B-4steps-lora-rank64-Seko-V1.1/low_noise.safetensors", + "ZiTD3tailed4nime.safetensors", + "angela3_000001500.safetensors", + "beauty_of_rain_r032_8e-05_wan1_3B.safetensors", + "jan6.safetensors", + "jan6_000001500.safetensors", + "kristi5.safetensors", + "kristi5_000001000.safetensors", + "kristi_z_000000250.safetensors", + "kristi_z_000002000.safetensors", + "ltx-2-19b-distilled-lora-384.safetensors", + "ltx-2-19b-lora-camera-control-dolly-left.safetensors", + "ltxv/arcane_jinx_step_12000_comfy.safetensors", + "ltxv/ltxv_095_squish_lora.safetensors", + "zimage/angela3_000001500.safetensors", + "zimage/jan6.safetensors", + "zimage/kristi5.safetensors", + "zimage/kristi6.safetensors", + "[None]" + ] + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "model", + "tooltip": "Model with LoRA applied", + "is_output_list": false + } + ], + "_1_LORA_MODEL_": [ + "LORA_MODEL", + { + "display_name": "lora", + "tooltip": "LoRA weights", + "is_output_list": false + } + ], + "_2_LOSS_MAP_": [ + "LOSS_MAP", + { + "display_name": "loss_map", + "tooltip": "Loss history", + "is_output_list": false + } + ], + "_3_INT_": [ + "INT", + { + "display_name": "steps", + "tooltip": "Total training steps", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TrainLoraNode_ISO", + "display_name": "Train LoRA_ISO", + "description": "", + "category": "training", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": true, + "not_idempotent": false, + "display_name": "Train LoRA_ISO" + }, + "LoraModelLoader_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + { + "tooltip": "The diffusion model the LoRA will be applied to." + } + ] + }, + "lora": { + "__pyisolate_tuple__": [ + "LORA_MODEL", + { + "tooltip": "The LoRA model to apply to the diffusion model." + } + ] + }, + "strength_model": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "How strongly to modify the diffusion model. This value can be negative.", + "default": 1.0, + "min": -100.0, + "max": 100.0 + } + ] + } + } + }, + "return_types": [ + "MODEL" + ], + "return_names": [ + "model" + ], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + { + "tooltip": "The diffusion model the LoRA will be applied to." + } + ], + "lora": [ + "LORA_MODEL", + { + "tooltip": "The LoRA model to apply to the diffusion model." + } + ], + "strength_model": [ + "FLOAT", + { + "tooltip": "How strongly to modify the diffusion model. This value can be negative.", + "default": 1.0, + "min": -100.0, + "max": 100.0 + } + ] + } + }, + "input_order": { + "required": [ + "model", + "lora", + "strength_model" + ] + }, + "is_input_list": false, + "output": [ + "MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "model" + ], + "output_tooltips": [ + "The modified diffusion model." + ], + "output_matchtypes": null, + "name": "LoraModelLoader_ISO", + "display_name": "Load LoRA Model_ISO", + "description": "", + "python_module": null, + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false, + "tooltip": "The diffusion model the LoRA will be applied to." + } + ], + "lora": [ + "LORA_MODEL", + { + "optional": false, + "tooltip": "The LoRA model to apply to the diffusion model." + } + ], + "strength_model": [ + "FLOAT", + { + "optional": false, + "tooltip": "How strongly to modify the diffusion model. This value can be negative.", + "default": 1.0, + "min": -100.0, + "max": 100.0 + } + ] + }, + "output": { + "_0_MODEL_": [ + "MODEL", + { + "display_name": "model", + "tooltip": "The modified diffusion model.", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LoraModelLoader_ISO", + "display_name": "Load LoRA Model_ISO", + "description": "", + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load LoRA Model_ISO" + }, + "SaveLoRA_ISO": { + "input_types": { + "required": { + "lora": { + "__pyisolate_tuple__": [ + "LORA_MODEL", + { + "tooltip": "The LoRA model to save. Do not use the model with LoRA layers." + } + ] + }, + "prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The prefix to use for the saved LoRA file.", + "default": "loras/ComfyUI_trained_lora", + "multiline": false + } + ] + } + }, + "optional": { + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Optional: The number of steps to LoRA has been trained for, used to name the saved file." + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "lora": [ + "LORA_MODEL", + { + "tooltip": "The LoRA model to save. Do not use the model with LoRA layers." + } + ], + "prefix": [ + "STRING", + { + "tooltip": "The prefix to use for the saved LoRA file.", + "default": "loras/ComfyUI_trained_lora", + "multiline": false + } + ] + }, + "optional": { + "steps": [ + "INT", + { + "tooltip": "Optional: The number of steps to LoRA has been trained for, used to name the saved file." + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "lora", + "prefix" + ], + "optional": [ + "steps" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveLoRA_ISO", + "display_name": "Save LoRA Weights_ISO", + "description": "", + "python_module": null, + "category": "loaders", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "lora": [ + "LORA_MODEL", + { + "optional": false, + "tooltip": "The LoRA model to save. Do not use the model with LoRA layers." + } + ], + "prefix": [ + "STRING", + { + "optional": false, + "tooltip": "The prefix to use for the saved LoRA file.", + "default": "loras/ComfyUI_trained_lora", + "multiline": false + } + ], + "steps": [ + "INT", + { + "optional": true, + "tooltip": "Optional: The number of steps to LoRA has been trained for, used to name the saved file." + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveLoRA_ISO", + "display_name": "Save LoRA Weights_ISO", + "description": "", + "category": "loaders", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Save LoRA Weights_ISO" + }, + "LossGraphNode_ISO": { + "input_types": { + "required": { + "loss": { + "__pyisolate_tuple__": [ + "LOSS_MAP", + { + "tooltip": "Loss map from training node." + } + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prefix for the saved loss graph image.", + "default": "loss_graph", + "multiline": false + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "training", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "loss": [ + "LOSS_MAP", + { + "tooltip": "Loss map from training node." + } + ], + "filename_prefix": [ + "STRING", + { + "tooltip": "Prefix for the saved loss graph image.", + "default": "loss_graph", + "multiline": false + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "loss", + "filename_prefix" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "LossGraphNode_ISO", + "display_name": "Plot Loss Graph_ISO", + "description": "", + "python_module": null, + "category": "training", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "loss": [ + "LOSS_MAP", + { + "optional": false, + "tooltip": "Loss map from training node." + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "tooltip": "Prefix for the saved loss graph image.", + "default": "loss_graph", + "multiline": false + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "LossGraphNode_ISO", + "display_name": "Plot Loss Graph_ISO", + "description": "", + "category": "training", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Plot Loss Graph_ISO" + }, + "UpscaleModelLoader_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "lollypop.pth" + ] + } + ] + } + } + }, + "return_types": [ + "UPSCALE_MODEL" + ], + "return_names": [ + "UPSCALE_MODEL" + ], + "function": "EXECUTE_NORMALIZED", + "category": "loaders", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "lollypop.pth" + ] + } + ] + } + }, + "input_order": { + "required": [ + "model_name" + ] + }, + "is_input_list": false, + "output": [ + "UPSCALE_MODEL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "UPSCALE_MODEL" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "UpscaleModelLoader_ISO", + "display_name": "Load Upscale Model_ISO", + "description": "", + "python_module": null, + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "lollypop.pth" + ] + } + ] + }, + "output": { + "_0_UPSCALE_MODEL_": [ + "UPSCALE_MODEL", + { + "display_name": "_0_UPSCALE_MODEL_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "UpscaleModelLoader_ISO", + "display_name": "Load Upscale Model_ISO", + "description": "", + "category": "loaders", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Upscale Model_ISO" + }, + "ImageUpscaleWithModel_ISO": { + "input_types": { + "required": { + "upscale_model": { + "__pyisolate_tuple__": [ + "UPSCALE_MODEL", + {} + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/upscaling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "upscale_model": [ + "UPSCALE_MODEL", + {} + ], + "image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "upscale_model", + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ImageUpscaleWithModel_ISO", + "display_name": "Upscale Image (using Model)_ISO", + "description": "", + "python_module": null, + "category": "image/upscaling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "upscale_model": [ + "UPSCALE_MODEL", + { + "optional": false + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ImageUpscaleWithModel_ISO", + "display_name": "Upscale Image (using Model)_ISO", + "description": "", + "category": "image/upscaling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Upscale Image (using Model)_ISO" + }, + "VAEDecode_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "vae": [ + "VAE", + {} + ] + } + }, + "input_order": { + "required": [ + "samples", + "vae" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VAEDecode_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "VAEDecode_ISO", + "display_name": null, + "description": "", + "category": "latent", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "VAEDecode_ISO" + }, + "CLIPTextEncode_ISO": { + "input_types": { + "required": { + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING" + ], + "return_names": [ + "CONDITIONING" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "text": [ + "STRING", + { + "multiline": true + } + ], + "clip": [ + "CLIP", + {} + ] + } + }, + "input_order": { + "required": [ + "text", + "clip" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "CONDITIONING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CLIPTextEncode_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "clip": [ + "CLIP", + { + "optional": false + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CLIPTextEncode_ISO", + "display_name": null, + "description": "", + "category": "conditioning", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "CLIPTextEncode_ISO" + }, + "SaveWEBM_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "ComfyUI", + "multiline": false + } + ] + }, + "codec": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "vp9", + "av1" + ] + } + ] + }, + "fps": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 24.0, + "min": 0.01, + "max": 1000.0, + "step": 0.01 + } + ] + }, + "crf": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize.", + "default": 32.0, + "min": 0, + "max": 63.0, + "step": 1 + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "image/video", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + {} + ], + "filename_prefix": [ + "STRING", + { + "default": "ComfyUI", + "multiline": false + } + ], + "codec": [ + "COMBO", + { + "multiselect": false, + "options": [ + "vp9", + "av1" + ] + } + ], + "fps": [ + "FLOAT", + { + "default": 24.0, + "min": 0.01, + "max": 1000.0, + "step": 0.01 + } + ], + "crf": [ + "FLOAT", + { + "tooltip": "Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize.", + "default": 32.0, + "min": 0, + "max": 63.0, + "step": 1 + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "images", + "filename_prefix", + "codec", + "fps", + "crf" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveWEBM_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "image/video", + "output_node": true, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "default": "ComfyUI", + "multiline": false + } + ], + "codec": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "vp9", + "av1" + ] + } + ], + "fps": [ + "FLOAT", + { + "optional": false, + "default": 24.0, + "min": 0.01, + "max": 1000.0, + "step": 0.01 + } + ], + "crf": [ + "FLOAT", + { + "optional": false, + "tooltip": "Higher crf means lower quality with a smaller file size, lower crf means higher quality higher filesize.", + "default": 32.0, + "min": 0, + "max": 63.0, + "step": 1 + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveWEBM_ISO", + "display_name": null, + "description": "", + "category": "image/video", + "output_node": true, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "SaveWEBM_ISO" + }, + "SaveVideo_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "The video to save." + } + ] + }, + "filename_prefix": { + "__pyisolate_tuple__": [ + "STRING", + { + "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.", + "default": "video/ComfyUI", + "multiline": false + } + ] + }, + "format": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The format to save the video as.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "mp4" + ] + } + ] + }, + "codec": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The codec to use for the video.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "h264" + ] + } + ] + } + }, + "hidden": { + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED", + "category": "image/video", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + { + "tooltip": "The video to save." + } + ], + "filename_prefix": [ + "STRING", + { + "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.", + "default": "video/ComfyUI", + "multiline": false + } + ], + "format": [ + "COMBO", + { + "tooltip": "The format to save the video as.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "mp4" + ] + } + ], + "codec": [ + "COMBO", + { + "tooltip": "The codec to use for the video.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "h264" + ] + } + ] + }, + "hidden": { + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "video", + "filename_prefix", + "format", + "codec" + ], + "hidden": [ + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "SaveVideo_ISO", + "display_name": "Save Video_ISO", + "description": "Saves the input images to your ComfyUI output directory.", + "python_module": null, + "category": "image/video", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "The video to save." + } + ], + "filename_prefix": [ + "STRING", + { + "optional": false, + "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.", + "default": "video/ComfyUI", + "multiline": false + } + ], + "format": [ + "COMBO", + { + "optional": false, + "tooltip": "The format to save the video as.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "mp4" + ] + } + ], + "codec": [ + "COMBO", + { + "optional": false, + "tooltip": "The codec to use for the video.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "h264" + ] + } + ] + }, + "output": {}, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "SaveVideo_ISO", + "display_name": "Save Video_ISO", + "description": "Saves the input images to your ComfyUI output directory.", + "category": "image/video", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [ + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "Saves the input images to your ComfyUI output directory.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Save Video_ISO" + }, + "CreateVideo_ISO": { + "input_types": { + "required": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The images to create a video from." + } + ] + }, + "fps": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 30.0, + "min": 1.0, + "max": 120.0, + "step": 1.0 + } + ] + } + }, + "optional": { + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "The audio to add to the video." + } + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "images": [ + "IMAGE", + { + "tooltip": "The images to create a video from." + } + ], + "fps": [ + "FLOAT", + { + "default": 30.0, + "min": 1.0, + "max": 120.0, + "step": 1.0 + } + ] + }, + "optional": { + "audio": [ + "AUDIO", + { + "tooltip": "The audio to add to the video." + } + ] + } + }, + "input_order": { + "required": [ + "images", + "fps" + ], + "optional": [ + "audio" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "CreateVideo_ISO", + "display_name": "Create Video_ISO", + "description": "Create a video from images.", + "python_module": null, + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "The images to create a video from." + } + ], + "fps": [ + "FLOAT", + { + "optional": false, + "default": 30.0, + "min": 1.0, + "max": 120.0, + "step": 1.0 + } + ], + "audio": [ + "AUDIO", + { + "optional": true, + "tooltip": "The audio to add to the video." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "CreateVideo_ISO", + "display_name": "Create Video_ISO", + "description": "Create a video from images.", + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Create a video from images.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Create Video_ISO" + }, + "GetVideoComponents_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "The video to extract components from." + } + ] + } + } + }, + "return_types": [ + "IMAGE", + "AUDIO", + "FLOAT" + ], + "return_names": [ + "images", + "audio", + "fps" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/video", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + { + "tooltip": "The video to extract components from." + } + ] + } + }, + "input_order": { + "required": [ + "video" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "AUDIO", + "FLOAT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "images", + "audio", + "fps" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "GetVideoComponents_ISO", + "display_name": "Get Video Components_ISO", + "description": "Extracts all components from a video: frames, audio, and framerate.", + "python_module": null, + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "The video to extract components from." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "images", + "is_output_list": false + } + ], + "_1_AUDIO_": [ + "AUDIO", + { + "display_name": "audio", + "is_output_list": false + } + ], + "_2_FLOAT_": [ + "FLOAT", + { + "display_name": "fps", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "GetVideoComponents_ISO", + "display_name": "Get Video Components_ISO", + "description": "Extracts all components from a video: frames, audio, and framerate.", + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Extracts all components from a video: frames, audio, and framerate.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Get Video Components_ISO" + }, + "LoadVideo_ISO": { + "input_types": { + "required": { + "file": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "A New Hope Opening Scene (2 3) [4k UltraHD] - Star Wars A New Hope.mp4", + "APISoraVideo_00001_.mp4", + "AnimateDiff_00016.mp4", + "ComfyUI-WanVideoWrapper wanvideo_1_3B control_lora.webm", + "ComfyUI_16214_.webm", + "MTV_crafter_example_pose.mp4", + "MultiGPU_00053_.webm", + "bedroom.mp4", + "jeep.mp4", + "leftv4.mp4", + "video.mp4", + "video_2024-11-24_05-05-52.mp4", + "wWSUzClgoVJbNGwgKn1Gu.mp4", + "wan2_2 t2v lightx2v lora distorch2.webm", + "wolf_interpolated.mp4" + ], + "video_upload": true + } + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED", + "category": "image/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "file": [ + "COMBO", + { + "multiselect": false, + "options": [ + "A New Hope Opening Scene (2 3) [4k UltraHD] - Star Wars A New Hope.mp4", + "APISoraVideo_00001_.mp4", + "AnimateDiff_00016.mp4", + "ComfyUI-WanVideoWrapper wanvideo_1_3B control_lora.webm", + "ComfyUI_16214_.webm", + "MTV_crafter_example_pose.mp4", + "MultiGPU_00053_.webm", + "bedroom.mp4", + "jeep.mp4", + "leftv4.mp4", + "video.mp4", + "video_2024-11-24_05-05-52.mp4", + "wWSUzClgoVJbNGwgKn1Gu.mp4", + "wan2_2 t2v lightx2v lora distorch2.webm", + "wolf_interpolated.mp4" + ], + "video_upload": true + } + ] + } + }, + "input_order": { + "required": [ + "file" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LoadVideo_ISO", + "display_name": "Load Video_ISO", + "description": "", + "python_module": null, + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "file": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "A New Hope Opening Scene (2 3) [4k UltraHD] - Star Wars A New Hope.mp4", + "APISoraVideo_00001_.mp4", + "AnimateDiff_00016.mp4", + "ComfyUI-WanVideoWrapper wanvideo_1_3B control_lora.webm", + "ComfyUI_16214_.webm", + "MTV_crafter_example_pose.mp4", + "MultiGPU_00053_.webm", + "bedroom.mp4", + "jeep.mp4", + "leftv4.mp4", + "video.mp4", + "video_2024-11-24_05-05-52.mp4", + "wWSUzClgoVJbNGwgKn1Gu.mp4", + "wan2_2 t2v lightx2v lora distorch2.webm", + "wolf_interpolated.mp4" + ], + "video_upload": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LoadVideo_ISO", + "display_name": "Load Video_ISO", + "description": "", + "category": "image/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Load Video_ISO" + }, + "WanTrackToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "tracks": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "[]", + "multiline": true + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "temperature": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 220.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ] + }, + "topk": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 2, + "min": 1, + "max": 10 + } + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "vae": [ + "VAE", + {} + ], + "tracks": [ + "STRING", + { + "default": "[]", + "multiline": true + } + ], + "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 + } + ], + "temperature": [ + "FLOAT", + { + "default": 220.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ], + "topk": [ + "INT", + { + "default": 2, + "min": 1, + "max": 10 + } + ], + "start_image": [ + "IMAGE", + {} + ] + }, + "optional": { + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "tracks", + "width", + "height", + "length", + "batch_size", + "temperature", + "topk", + "start_image" + ], + "optional": [ + "clip_vision_output" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanTrackToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "tracks": [ + "STRING", + { + "optional": false, + "default": "[]", + "multiline": true + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "temperature": [ + "FLOAT", + { + "optional": false, + "default": 220.0, + "min": 1.0, + "max": 1000.0, + "step": 0.1 + } + ], + "topk": [ + "INT", + { + "optional": false, + "default": 2, + "min": 1, + "max": 10 + } + ], + "start_image": [ + "IMAGE", + { + "optional": false + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanTrackToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanTrackToVideo_ISO" + }, + "WanImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanImageToVideo_ISO" + }, + "WanFunControlToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "control_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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", + {} + ], + "control_video": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "clip_vision_output", + "start_image", + "control_video" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanFunControlToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "control_video": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanFunControlToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanFunControlToVideo_ISO" + }, + "Wan22FunControlToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "ref_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "control_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": { + "ref_image": [ + "IMAGE", + {} + ], + "control_video": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "ref_image", + "control_video" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "Wan22FunControlToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "ref_image": [ + "IMAGE", + { + "optional": true + } + ], + "control_video": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Wan22FunControlToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan22FunControlToVideo_ISO" + }, + "WanFunInpaintToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "end_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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", + {} + ], + "end_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "clip_vision_output", + "start_image", + "end_image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanFunInpaintToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "end_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanFunInpaintToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanFunInpaintToVideo_ISO" + }, + "WanFirstLastFrameToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "clip_vision_start_image": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "clip_vision_end_image": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "end_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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_start_image": [ + "CLIP_VISION_OUTPUT", + {} + ], + "clip_vision_end_image": [ + "CLIP_VISION_OUTPUT", + {} + ], + "start_image": [ + "IMAGE", + {} + ], + "end_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "clip_vision_start_image", + "clip_vision_end_image", + "start_image", + "end_image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanFirstLastFrameToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_start_image": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "clip_vision_end_image": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "end_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanFirstLastFrameToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanFirstLastFrameToVideo_ISO" + }, + "WanVaceToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ] + } + }, + "optional": { + "control_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "control_masks": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "reference_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT", + "INT" + ], + "return_names": [ + "positive", + "negative", + "latent", + "trim_latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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 + } + ], + "strength": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ] + }, + "optional": { + "control_video": [ + "IMAGE", + {} + ], + "control_masks": [ + "MASK", + {} + ], + "reference_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size", + "strength" + ], + "optional": [ + "control_video", + "control_masks", + "reference_image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent", + "trim_latent" + ], + "output_tooltips": [ + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanVaceToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1000.0, + "step": 0.01 + } + ], + "control_video": [ + "IMAGE", + { + "optional": true + } + ], + "control_masks": [ + "MASK", + { + "optional": true + } + ], + "reference_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ], + "_3_INT_": [ + "INT", + { + "display_name": "trim_latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanVaceToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanVaceToVideo_ISO" + }, + "TrimVideoLatent_ISO": { + "input_types": { + "required": { + "samples": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "trim_amount": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 99999 + } + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "latent/video", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "samples": [ + "LATENT", + {} + ], + "trim_amount": [ + "INT", + { + "default": 0, + "min": 0, + "max": 99999 + } + ] + } + }, + "input_order": { + "required": [ + "samples", + "trim_amount" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TrimVideoLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "samples": [ + "LATENT", + { + "optional": false + } + ], + "trim_amount": [ + "INT", + { + "optional": false, + "default": 0, + "min": 0, + "max": 99999 + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TrimVideoLatent_ISO", + "display_name": null, + "description": "", + "category": "latent/video", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "TrimVideoLatent_ISO" + }, + "WanCameraImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "camera_conditions": { + "__pyisolate_tuple__": [ + "WAN_CAMERA_EMBEDDING", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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", + {} + ], + "camera_conditions": [ + "WAN_CAMERA_EMBEDDING", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "clip_vision_output", + "start_image", + "camera_conditions" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanCameraImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ], + "camera_conditions": [ + "WAN_CAMERA_EMBEDDING", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanCameraImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanCameraImageToVideo_ISO" + }, + "WanPhantomSubjectToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative_text", + "negative_img_text", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": { + "images": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "images" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false, + false + ], + "output_name": [ + "positive", + "negative_text", + "negative_img_text", + "latent" + ], + "output_tooltips": [ + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanPhantomSubjectToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 81, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "images": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative_text", + "is_output_list": false + } + ], + "_2_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative_img_text", + "is_output_list": false + } + ], + "_3_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanPhantomSubjectToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanPhantomSubjectToVideo_ISO" + }, + "WanSoundImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "audio_encoder_output": { + "__pyisolate_tuple__": [ + "AUDIO_ENCODER_OUTPUT", + {} + ] + }, + "ref_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "control_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "ref_motion": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "optional": { + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + {} + ], + "ref_image": [ + "IMAGE", + {} + ], + "control_video": [ + "IMAGE", + {} + ], + "ref_motion": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "audio_encoder_output", + "ref_image", + "control_video", + "ref_motion" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanSoundImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + { + "optional": true + } + ], + "ref_image": [ + "IMAGE", + { + "optional": true + } + ], + "control_video": [ + "IMAGE", + { + "optional": true + } + ], + "ref_motion": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanSoundImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanSoundImageToVideo_ISO" + }, + "WanSoundImageToVideoExtend_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "video_latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + }, + "optional": { + "audio_encoder_output": { + "__pyisolate_tuple__": [ + "AUDIO_ENCODER_OUTPUT", + {} + ] + }, + "ref_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "control_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "positive": [ + "CONDITIONING", + {} + ], + "negative": [ + "CONDITIONING", + {} + ], + "vae": [ + "VAE", + {} + ], + "length": [ + "INT", + { + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "video_latent": [ + "LATENT", + {} + ] + }, + "optional": { + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + {} + ], + "ref_image": [ + "IMAGE", + {} + ], + "control_video": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "length", + "video_latent" + ], + "optional": [ + "audio_encoder_output", + "ref_image", + "control_video" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanSoundImageToVideoExtend_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "video_latent": [ + "LATENT", + { + "optional": false + } + ], + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + { + "optional": true + } + ], + "ref_image": [ + "IMAGE", + { + "optional": true + } + ], + "control_video": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanSoundImageToVideoExtend_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanSoundImageToVideoExtend_ISO" + }, + "WanHuMoImageToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 97, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "audio_encoder_output": { + "__pyisolate_tuple__": [ + "AUDIO_ENCODER_OUTPUT", + {} + ] + }, + "ref_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "return_names": [ + "positive", + "negative", + "latent" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": 97, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "optional": { + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + {} + ], + "ref_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "audio_encoder_output", + "ref_image" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanHuMoImageToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 97, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "audio_encoder_output": [ + "AUDIO_ENCODER_OUTPUT", + { + "optional": true + } + ], + "ref_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanHuMoImageToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanHuMoImageToVideo_ISO" + }, + "WanAnimateToVideo_ISO": { + "input_types": { + "required": { + "positive": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "negative": { + "__pyisolate_tuple__": [ + "CONDITIONING", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "continue_motion_max_frames": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 5, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "video_frame_offset": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The amount of frames to seek in all the input videos. Used for generating longer videos by chunk. Connect to the video_frame_offset output of the previous node for extending a video.", + "default": 0, + "min": 0, + "max": 16384, + "step": 1 + } + ] + } + }, + "optional": { + "clip_vision_output": { + "__pyisolate_tuple__": [ + "CLIP_VISION_OUTPUT", + {} + ] + }, + "reference_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "face_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "pose_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "background_video": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "character_mask": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "continue_motion": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "CONDITIONING", + "LATENT", + "INT", + "INT", + "INT" + ], + "return_names": [ + "positive", + "negative", + "latent", + "trim_latent", + "trim_image", + "video_frame_offset" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/video_models", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "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": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ], + "continue_motion_max_frames": [ + "INT", + { + "default": 5, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "video_frame_offset": [ + "INT", + { + "tooltip": "The amount of frames to seek in all the input videos. Used for generating longer videos by chunk. Connect to the video_frame_offset output of the previous node for extending a video.", + "default": 0, + "min": 0, + "max": 16384, + "step": 1 + } + ] + }, + "optional": { + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + {} + ], + "reference_image": [ + "IMAGE", + {} + ], + "face_video": [ + "IMAGE", + {} + ], + "pose_video": [ + "IMAGE", + {} + ], + "background_video": [ + "IMAGE", + {} + ], + "character_mask": [ + "MASK", + {} + ], + "continue_motion": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "positive", + "negative", + "vae", + "width", + "height", + "length", + "batch_size", + "continue_motion_max_frames", + "video_frame_offset" + ], + "optional": [ + "clip_vision_output", + "reference_image", + "face_video", + "pose_video", + "background_video", + "character_mask", + "continue_motion" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "CONDITIONING", + "LATENT", + "INT", + "INT", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false, + false, + false + ], + "output_name": [ + "positive", + "negative", + "latent", + "trim_latent", + "trim_image", + "video_frame_offset" + ], + "output_tooltips": [ + null, + null, + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "WanAnimateToVideo_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": true, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "positive": [ + "CONDITIONING", + { + "optional": false + } + ], + "negative": [ + "CONDITIONING", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 832, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 480, + "min": 16, + "max": 16384, + "step": 16 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 77, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "clip_vision_output": [ + "CLIP_VISION_OUTPUT", + { + "optional": true + } + ], + "reference_image": [ + "IMAGE", + { + "optional": true + } + ], + "face_video": [ + "IMAGE", + { + "optional": true + } + ], + "pose_video": [ + "IMAGE", + { + "optional": true + } + ], + "continue_motion_max_frames": [ + "INT", + { + "optional": false, + "default": 5, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "background_video": [ + "IMAGE", + { + "optional": true + } + ], + "character_mask": [ + "MASK", + { + "optional": true + } + ], + "continue_motion": [ + "IMAGE", + { + "optional": true + } + ], + "video_frame_offset": [ + "INT", + { + "optional": false, + "tooltip": "The amount of frames to seek in all the input videos. Used for generating longer videos by chunk. Connect to the video_frame_offset output of the previous node for extending a video.", + "default": 0, + "min": 0, + "max": 16384, + "step": 1 + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "positive", + "is_output_list": false + } + ], + "_1_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "negative", + "is_output_list": false + } + ], + "_2_LATENT_": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ], + "_3_INT_": [ + "INT", + { + "display_name": "trim_latent", + "is_output_list": false + } + ], + "_4_INT_": [ + "INT", + { + "display_name": "trim_image", + "is_output_list": false + } + ], + "_5_INT_": [ + "INT", + { + "display_name": "video_frame_offset", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "WanAnimateToVideo_ISO", + "display_name": null, + "description": "", + "category": "conditioning/video_models", + "output_node": false, + "deprecated": false, + "experimental": true, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": true, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "WanAnimateToVideo_ISO" + }, + "Wan22ImageToVideoLatent_ISO": { + "input_types": { + "required": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1280, + "min": 32, + "max": 16384, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 704, + "min": 32, + "max": 16384, + "step": 32 + } + ] + }, + "length": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 49, + "min": 1, + "max": 16384, + "step": 4 + } + ] + }, + "batch_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + } + }, + "optional": { + "start_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + } + }, + "return_types": [ + "LATENT" + ], + "return_names": [ + "LATENT" + ], + "function": "EXECUTE_NORMALIZED", + "category": "conditioning/inpaint", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "vae": [ + "VAE", + {} + ], + "width": [ + "INT", + { + "default": 1280, + "min": 32, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "default": 704, + "min": 32, + "max": 16384, + "step": 32 + } + ], + "length": [ + "INT", + { + "default": 49, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "default": 1, + "min": 1, + "max": 4096 + } + ] + }, + "optional": { + "start_image": [ + "IMAGE", + {} + ] + } + }, + "input_order": { + "required": [ + "vae", + "width", + "height", + "length", + "batch_size" + ], + "optional": [ + "start_image" + ] + }, + "is_input_list": false, + "output": [ + "LATENT" + ], + "output_is_list": [ + false + ], + "output_name": [ + "LATENT" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Wan22ImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "python_module": null, + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "vae": [ + "VAE", + { + "optional": false + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1280, + "min": 32, + "max": 16384, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 704, + "min": 32, + "max": 16384, + "step": 32 + } + ], + "length": [ + "INT", + { + "optional": false, + "default": 49, + "min": 1, + "max": 16384, + "step": 4 + } + ], + "batch_size": [ + "INT", + { + "optional": false, + "default": 1, + "min": 1, + "max": 4096 + } + ], + "start_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_LATENT_": [ + "LATENT", + { + "display_name": "_0_LATENT_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "Wan22ImageToVideoLatent_ISO", + "display_name": null, + "description": "", + "category": "conditioning/inpaint", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan22ImageToVideoLatent_ISO" + }, + "PyIsolatedTestNodeV3": { + "input_types": { + "required": {} + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "message" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "message" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PyIsolatedTestNodeV3", + "display_name": "PyIsolatedTestNodeV3", + "description": "", + "python_module": null, + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "message": [ + "STRING", + { + "display_name": "message", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PyIsolatedTestNodeV3", + "display_name": "PyIsolatedTestNodeV3", + "description": "", + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PyIsolatedTestNodeV3" + }, + "PyIsolatedExecuteV3": { + "input_types": { + "required": { + "code": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ] + } + }, + "optional": { + "text_payload": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": false + } + ] + }, + "image_payload": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "latent_payload": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "mask_payload": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + } + } + }, + "return_types": [ + "STRING", + "IMAGE", + "LATENT", + "STRING", + "INT" + ], + "return_names": [ + "result_text", + "result_image", + "result_latent", + "stdout", + "exit_code" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "code": [ + "STRING", + { + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ] + }, + "optional": { + "text_payload": [ + "STRING", + { + "multiline": false + } + ], + "image_payload": [ + "IMAGE", + {} + ], + "latent_payload": [ + "LATENT", + {} + ], + "mask_payload": [ + "MASK", + {} + ] + } + }, + "input_order": { + "required": [ + "code" + ], + "optional": [ + "text_payload", + "image_payload", + "latent_payload", + "mask_payload" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "IMAGE", + "LATENT", + "STRING", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false, + false + ], + "output_name": [ + "result_text", + "result_image", + "result_latent", + "stdout", + "exit_code" + ], + "output_tooltips": [ + null, + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "PyIsolatedExecuteV3", + "display_name": "PyIsolatedExecuteV3", + "description": "", + "python_module": null, + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "code": [ + "STRING", + { + "optional": false, + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ], + "text_payload": [ + "STRING", + { + "optional": true, + "multiline": false + } + ], + "image_payload": [ + "IMAGE", + { + "optional": true + } + ], + "latent_payload": [ + "LATENT", + { + "optional": true + } + ], + "mask_payload": [ + "MASK", + { + "optional": true + } + ] + }, + "output": { + "result_text": [ + "STRING", + { + "display_name": "result_text", + "is_output_list": false + } + ], + "result_image": [ + "IMAGE", + { + "display_name": "result_image", + "is_output_list": false + } + ], + "result_latent": [ + "LATENT", + { + "display_name": "result_latent", + "is_output_list": false + } + ], + "stdout": [ + "STRING", + { + "display_name": "stdout", + "is_output_list": false + } + ], + "exit_code": [ + "INT", + { + "display_name": "exit_code", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PyIsolatedExecuteV3", + "display_name": "PyIsolatedExecuteV3", + "description": "", + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PyIsolatedExecuteV3" + }, + "PyIsolatedExecuteAdvancedV3": { + "input_types": { + "required": { + "code": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ] + } + }, + "optional": { + "text_payload": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": false + } + ] + }, + "image_payload": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "latent_payload": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + }, + "mask_payload": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "dependencies": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "# One package per line", + "multiline": true + } + ] + } + } + }, + "return_types": [ + "STRING", + "IMAGE", + "LATENT", + "STRING", + "INT" + ], + "return_names": [ + "result_text", + "result_image", + "result_latent", + "stdout", + "exit_code" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated", + "output_node": false, + "output_is_list": [ + false, + false, + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "code": [ + "STRING", + { + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ] + }, + "optional": { + "text_payload": [ + "STRING", + { + "multiline": false + } + ], + "image_payload": [ + "IMAGE", + {} + ], + "latent_payload": [ + "LATENT", + {} + ], + "mask_payload": [ + "MASK", + {} + ], + "dependencies": [ + "STRING", + { + "default": "# One package per line", + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "code" + ], + "optional": [ + "text_payload", + "image_payload", + "latent_payload", + "mask_payload", + "dependencies" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "IMAGE", + "LATENT", + "STRING", + "INT" + ], + "output_is_list": [ + false, + false, + false, + false, + false + ], + "output_name": [ + "result_text", + "result_image", + "result_latent", + "stdout", + "exit_code" + ], + "output_tooltips": [ + null, + null, + null, + null, + null + ], + "output_matchtypes": null, + "name": "PyIsolatedExecuteAdvancedV3", + "display_name": "PyIsolatedExecuteAdvancedV3", + "description": "", + "python_module": null, + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "code": [ + "STRING", + { + "optional": false, + "default": "result = f'Received text: {text_payload}'", + "multiline": true + } + ], + "text_payload": [ + "STRING", + { + "optional": true, + "multiline": false + } + ], + "image_payload": [ + "IMAGE", + { + "optional": true + } + ], + "latent_payload": [ + "LATENT", + { + "optional": true + } + ], + "mask_payload": [ + "MASK", + { + "optional": true + } + ], + "dependencies": [ + "STRING", + { + "optional": true, + "default": "# One package per line", + "multiline": true + } + ] + }, + "output": { + "result_text": [ + "STRING", + { + "display_name": "result_text", + "is_output_list": false + } + ], + "result_image": [ + "IMAGE", + { + "display_name": "result_image", + "is_output_list": false + } + ], + "result_latent": [ + "LATENT", + { + "display_name": "result_latent", + "is_output_list": false + } + ], + "stdout": [ + "STRING", + { + "display_name": "stdout", + "is_output_list": false + } + ], + "exit_code": [ + "INT", + { + "display_name": "exit_code", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PyIsolatedExecuteAdvancedV3", + "display_name": "PyIsolatedExecuteAdvancedV3", + "description": "", + "category": "PyIsolated", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PyIsolatedExecuteAdvancedV3" + }, + "ZeroCopyArange": { + "input_types": { + "required": {} + }, + "return_types": [ + "LATENT", + "STRING", + "INT" + ], + "return_names": [ + "latent", + "device", + "data_ptr" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/Debug", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "LATENT", + "STRING", + "INT" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "latent", + "device", + "data_ptr" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "ZeroCopyArange", + "display_name": "ZeroCopyArange", + "description": "Create small CUDA tensor and report device/data_ptr", + "python_module": null, + "category": "PyIsolated/Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "latent": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ], + "device": [ + "STRING", + { + "display_name": "device", + "is_output_list": false + } + ], + "data_ptr": [ + "INT", + { + "display_name": "data_ptr", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ZeroCopyArange", + "display_name": "ZeroCopyArange", + "description": "Create small CUDA tensor and report device/data_ptr", + "category": "PyIsolated/Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Create small CUDA tensor and report device/data_ptr", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ZeroCopyArange" + }, + "GateAny": { + "input_types": { + "required": { + "gate": { + "__pyisolate_tuple__": [ + "*", + { + "display_name": "Gate" + } + ] + }, + "source": { + "__pyisolate_tuple__": [ + "*", + { + "display_name": "Source" + } + ] + } + } + }, + "return_types": [ + "*", + "*" + ], + "return_names": [ + "Gate", + "Drain" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolate/Flow", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "gate": [ + "*", + { + "display_name": "Gate" + } + ], + "source": [ + "*", + { + "display_name": "Source" + } + ] + } + }, + "input_order": { + "required": [ + "gate", + "source" + ] + }, + "is_input_list": false, + "output": [ + "*", + "*" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "Gate", + "Drain" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "GateAny", + "display_name": "Gate (Any)", + "description": "", + "python_module": null, + "category": "PyIsolate/Flow", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "gate": [ + "*", + { + "display_name": "Gate", + "optional": false + } + ], + "source": [ + "*", + { + "display_name": "Source", + "optional": false + } + ] + }, + "output": { + "gate_out": [ + "*", + { + "display_name": "Gate", + "is_output_list": false + } + ], + "drain": [ + "*", + { + "display_name": "Drain", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "GateAny", + "display_name": "Gate (Any)", + "description": "", + "category": "PyIsolate/Flow", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Gate (Any)" + }, + "FreeMemoryImagePassthrough": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "display_name": "Image" + } + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "Image" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolate/Debug", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "display_name": "Image" + } + ] + } + }, + "input_order": { + "required": [ + "image" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Image" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FreeMemoryImagePassthrough", + "display_name": "Free Memory (Image Passthrough)", + "description": "", + "python_module": null, + "category": "PyIsolate/Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "display_name": "Image", + "optional": false + } + ] + }, + "output": { + "image": [ + "IMAGE", + { + "display_name": "Image", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "FreeMemoryImagePassthrough", + "display_name": "Free Memory (Image Passthrough)", + "description": "", + "category": "PyIsolate/Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Free Memory (Image Passthrough)" + }, + "TestCLIPProxy_APISO": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "a photo of a cat", + "multiline": true + } + ] + } + } + }, + "return_types": [ + "CONDITIONING", + "STRING" + ], + "return_names": [ + "CONDITIONING", + "report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolate/API Debug", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "text": [ + "STRING", + { + "default": "a photo of a cat", + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "text" + ] + }, + "is_input_list": false, + "output": [ + "CONDITIONING", + "STRING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "CONDITIONING", + "report" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TestCLIPProxy_APISO", + "display_name": "Test CLIP Proxy (Full) APISO", + "description": "", + "python_module": null, + "category": "PyIsolate/API Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "text": [ + "STRING", + { + "optional": false, + "default": "a photo of a cat", + "multiline": true + } + ] + }, + "output": { + "_0_CONDITIONING_": [ + "CONDITIONING", + { + "display_name": "_0_CONDITIONING_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "TestCLIPProxy_APISO", + "display_name": "Test CLIP Proxy (Full) APISO", + "description": "", + "category": "PyIsolate/API Debug", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Test CLIP Proxy (Full) APISO" + }, + "ProxyTestModelManagement": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + }, + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ], + "clip": [ + "CLIP", + {} + ], + "vae": [ + "VAE", + {} + ] + } + }, + "input_order": { + "required": [ + "model", + "clip", + "vae" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestModelManagement", + "display_name": "Proxy Test: Model Management (Full)", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "clip": [ + "CLIP", + { + "optional": false + } + ], + "vae": [ + "VAE", + { + "optional": false + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestModelManagement", + "display_name": "Proxy Test: Model Management (Full)", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Model Management (Full)" + }, + "ProxyTestFolderPaths": { + "input_types": { + "required": {} + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestFolderPaths", + "display_name": "Proxy Test: Folder Paths", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestFolderPaths", + "display_name": "Proxy Test: Folder Paths", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Folder Paths" + }, + "ProxyTestUtils": { + "input_types": { + "required": {}, + "optional": { + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {}, + "optional": { + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [], + "optional": [ + "latent" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestUtils", + "display_name": "Proxy Test: Utils", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "latent": [ + "LATENT", + { + "optional": true + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestUtils", + "display_name": "Proxy Test: Utils", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Utils" + }, + "ProxyTestLatentFormats": { + "input_types": { + "required": {} + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestLatentFormats", + "display_name": "Proxy Test: Latent Formats", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestLatentFormats", + "display_name": "Proxy Test: Latent Formats", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Latent Formats" + }, + "ProxyTestModelPatcher": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + }, + "optional": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + }, + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + }, + "optional": { + "clip": [ + "CLIP", + {} + ], + "vae": [ + "VAE", + {} + ], + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ], + "optional": [ + "clip", + "vae", + "latent" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestModelPatcher", + "display_name": "Proxy Test: Model Patcher (Full)", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ], + "clip": [ + "CLIP", + { + "optional": true + } + ], + "vae": [ + "VAE", + { + "optional": true + } + ], + "latent": [ + "LATENT", + { + "optional": true + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestModelPatcher", + "display_name": "Proxy Test: Model Patcher (Full)", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Model Patcher (Full)" + }, + "ProxyTestCLIP": { + "input_types": { + "required": { + "clip": { + "__pyisolate_tuple__": [ + "CLIP", + {} + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "A photo of a cat", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "clip": [ + "CLIP", + {} + ], + "text": [ + "STRING", + { + "default": "A photo of a cat", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "clip", + "text" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestCLIP", + "display_name": "Proxy Test: CLIP (Full)", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "clip": [ + "CLIP", + { + "optional": false + } + ], + "text": [ + "STRING", + { + "optional": false, + "default": "A photo of a cat", + "multiline": false + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestCLIP", + "display_name": "Proxy Test: CLIP (Full)", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: CLIP (Full)" + }, + "ProxyTestVAE": { + "input_types": { + "required": { + "vae": { + "__pyisolate_tuple__": [ + "VAE", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "vae": [ + "VAE", + {} + ] + } + }, + "input_order": { + "required": [ + "vae" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestVAE", + "display_name": "Proxy Test: VAE (Full)", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "vae": [ + "VAE", + { + "optional": false + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestVAE", + "display_name": "Proxy Test: VAE (Full)", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: VAE (Full)" + }, + "ProxyTestModelSampler": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestModelSampler", + "display_name": "Proxy Test: ModelSampler (Full)", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestModelSampler", + "display_name": "Proxy Test: ModelSampler (Full)", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: ModelSampler (Full)" + }, + "ProxyTestCliArgs": { + "input_types": { + "required": {} + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {} + }, + "input_order": { + "required": [] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestCliArgs", + "display_name": "Proxy Test: CLI Args", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": {}, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestCliArgs", + "display_name": "Proxy Test: CLI Args", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: CLI Args" + }, + "ProxyTestPreviewPipeline": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "MODEL", + {} + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "Report" + ], + "function": "EXECUTE_NORMALIZED", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "MODEL", + {} + ] + } + }, + "input_order": { + "required": [ + "model" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "Report" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ProxyTestPreviewPipeline", + "display_name": "Proxy Test: Preview Pipeline", + "description": "", + "python_module": null, + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "MODEL", + { + "optional": false + } + ] + }, + "output": { + "report": [ + "STRING", + { + "display_name": "Report", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ProxyTestPreviewPipeline", + "display_name": "Proxy Test: Preview Pipeline", + "description": "", + "category": "PyIsolated/ProxyTests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Proxy Test: Preview Pipeline" + }, + "FluxProUltraImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ] + }, + "raw": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "When True, generate less processed, more natural-looking images.", + "default": false + } + ] + } + }, + "optional": { + "image_prompt": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image_prompt_strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Blend between the prompt and the image prompt.", + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "aspect_ratio": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "raw": [ + "BOOLEAN", + { + "tooltip": "When True, generate less processed, more natural-looking images.", + "default": false + } + ] + }, + "optional": { + "image_prompt": [ + "IMAGE", + {} + ], + "image_prompt_strength": [ + "FLOAT", + { + "tooltip": "Blend between the prompt and the image prompt.", + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "prompt_upsampling", + "seed", + "aspect_ratio", + "raw" + ], + "optional": [ + "image_prompt", + "image_prompt_strength" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxProUltraImageNode_ISO", + "display_name": "Flux 1.1 [pro] Ultra Image_ISO", + "description": "Generates images using Flux Pro 1.1 Ultra via api based on prompt and resolution.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "aspect_ratio": [ + "STRING", + { + "optional": false, + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "raw": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "When True, generate less processed, more natural-looking images.", + "default": false + } + ], + "image_prompt": [ + "IMAGE", + { + "optional": true + } + ], + "image_prompt_strength": [ + "FLOAT", + { + "optional": true, + "tooltip": "Blend between the prompt and the image prompt.", + "default": 0.1, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "FluxProUltraImageNode_ISO", + "display_name": "Flux 1.1 [pro] Ultra Image_ISO", + "description": "Generates images using Flux Pro 1.1 Ultra via api based on prompt and resolution.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images using Flux Pro 1.1 Ultra via api based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux 1.1 [pro] Ultra Image_ISO" + }, + "FluxKontextProImageNode": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + } + }, + "optional": { + "input_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "guidance": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "optional": { + "input_image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio", + "guidance", + "steps", + "seed", + "prompt_upsampling" + ], + "optional": [ + "input_image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxKontextProImageNode", + "display_name": "Flux.1 Kontext [pro] Image", + "description": "Edits images using Flux.1 Kontext [pro] via api based on prompt and aspect ratio.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "STRING", + { + "optional": false, + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "input_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "FluxKontextProImageNode", + "display_name": "Flux.1 Kontext [pro] Image", + "description": "Edits images using Flux.1 Kontext [pro] via api based on prompt and aspect ratio.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Edits images using Flux.1 Kontext [pro] via api based on prompt and aspect ratio.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux.1 Kontext [pro] Image" + }, + "FluxKontextMaxImageNode": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + } + }, + "optional": { + "input_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "STRING", + { + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "guidance": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "optional": { + "input_image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio", + "guidance", + "steps", + "seed", + "prompt_upsampling" + ], + "optional": [ + "input_image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxKontextMaxImageNode", + "display_name": "Flux.1 Kontext [max] Image", + "description": "Edits images using Flux.1 Kontext [max] via api based on prompt and aspect ratio.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation - specify what and how to edit.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "STRING", + { + "optional": false, + "tooltip": "Aspect ratio of image; must be between 1:4 and 4:1.", + "default": "16:9", + "multiline": false + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance strength for the image generation process", + "default": 3.0, + "min": 0.1, + "max": 99.0, + "step": 0.1 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 1, + "max": 150 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 1234, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "input_image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "FluxKontextMaxImageNode", + "display_name": "Flux.1 Kontext [max] Image", + "description": "Edits images using Flux.1 Kontext [max] via api based on prompt and aspect ratio.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Edits images using Flux.1 Kontext [max] via api based on prompt and aspect ratio.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux.1 Kontext [max] Image" + }, + "FluxProExpandNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "top": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of pixels to expand at the top of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ] + }, + "bottom": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of pixels to expand at the bottom of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ] + }, + "left": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of pixels to expand at the left of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ] + }, + "right": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of pixels to expand at the right of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "top": [ + "INT", + { + "tooltip": "Number of pixels to expand at the top of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "bottom": [ + "INT", + { + "tooltip": "Number of pixels to expand at the bottom of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "left": [ + "INT", + { + "tooltip": "Number of pixels to expand at the left of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "right": [ + "INT", + { + "tooltip": "Number of pixels to expand at the right of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "guidance": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "prompt_upsampling", + "top", + "bottom", + "left", + "right", + "guidance", + "steps", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxProExpandNode_ISO", + "display_name": "Flux.1 Expand Image_ISO", + "description": "Outpaints image based on prompt.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "top": [ + "INT", + { + "optional": false, + "tooltip": "Number of pixels to expand at the top of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "bottom": [ + "INT", + { + "optional": false, + "tooltip": "Number of pixels to expand at the bottom of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "left": [ + "INT", + { + "optional": false, + "tooltip": "Number of pixels to expand at the left of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "right": [ + "INT", + { + "optional": false, + "tooltip": "Number of pixels to expand at the right of the image", + "default": 0, + "min": 0, + "max": 2048 + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "FluxProExpandNode_ISO", + "display_name": "Flux.1 Expand Image_ISO", + "description": "Outpaints image based on prompt.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Outpaints image based on prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux.1 Expand Image_ISO" + }, + "FluxProFillNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "guidance": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "mask": [ + "MASK", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "guidance": [ + "FLOAT", + { + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "mask", + "prompt", + "prompt_upsampling", + "guidance", + "steps", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "FluxProFillNode_ISO", + "display_name": "Flux.1 Fill Image_ISO", + "description": "Inpaints image based on mask and prompt.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "mask": [ + "MASK", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "guidance": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance strength for the image generation process", + "default": 60, + "min": 1.5, + "max": 100 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of steps for the image generation process", + "default": 50, + "min": 15, + "max": 50 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "FluxProFillNode_ISO", + "display_name": "Flux.1 Fill Image_ISO", + "description": "Inpaints image based on mask and prompt.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Inpaints image based on mask and prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux.1 Fill Image_ISO" + }, + "Flux2ProImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation or edit", + "default": "", + "multiline": true + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 256, + "max": 2048, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 768, + "min": 256, + "max": 2048, + "step": 32 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "prompt_upsampling": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Up to 4 images to be used as references." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/BFL", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation or edit", + "default": "", + "multiline": true + } + ], + "width": [ + "INT", + { + "default": 1024, + "min": 256, + "max": 2048, + "step": 32 + } + ], + "height": [ + "INT", + { + "default": 768, + "min": 256, + "max": 2048, + "step": 32 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ] + }, + "optional": { + "images": [ + "IMAGE", + { + "tooltip": "Up to 4 images to be used as references." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "width", + "height", + "seed", + "prompt_upsampling" + ], + "optional": [ + "images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Flux2ProImageNode_ISO", + "display_name": "Flux.2 [pro] Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "python_module": null, + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation or edit", + "default": "", + "multiline": true + } + ], + "width": [ + "INT", + { + "optional": false, + "default": 1024, + "min": 256, + "max": 2048, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": false, + "default": 768, + "min": 256, + "max": 2048, + "step": 32 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "prompt_upsampling": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to perform upsampling on the prompt. If active, automatically modifies the prompt for more creative generation, but results are nondeterministic (same seed will not produce exactly the same result).", + "default": false + } + ], + "images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Up to 4 images to be used as references." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Flux2ProImageNode_ISO", + "display_name": "Flux.2 [pro] Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "category": "api node/image/BFL", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Flux.2 [pro] Image_ISO" + }, + "ByteDanceImageNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedream-3-0-t2i-250415", + "multiselect": false, + "options": [ + "seedream-3-0-t2i-250415" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text prompt used to generate the image", + "multiline": true + } + ] + }, + "size_preset": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Pick a recommended size. Select Custom to use the width and height below", + "multiselect": false, + "options": [ + "1024x1024 (1:1)", + "864x1152 (3:4)", + "1152x864 (4:3)", + "1280x720 (16:9)", + "720x1280 (9:16)", + "832x1248 (2:3)", + "1248x832 (3:2)", + "1512x648 (21:9)", + "2048x2048 (1:1)", + "Custom" + ] + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "guidance_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 2.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedream-3-0-t2i-250415", + "multiselect": false, + "options": [ + "seedream-3-0-t2i-250415" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "The text prompt used to generate the image", + "multiline": true + } + ], + "size_preset": [ + "COMBO", + { + "tooltip": "Pick a recommended size. Select Custom to use the width and height below", + "multiselect": false, + "options": [ + "1024x1024 (1:1)", + "864x1152 (3:4)", + "1152x864 (4:3)", + "1280x720 (16:9)", + "720x1280 (9:16)", + "832x1248 (2:3)", + "1248x832 (3:2)", + "1512x648 (21:9)", + "2048x2048 (1:1)", + "Custom" + ] + } + ], + "width": [ + "INT", + { + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ], + "height": [ + "INT", + { + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "guidance_scale": [ + "FLOAT", + { + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 2.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "size_preset", + "width", + "height" + ], + "optional": [ + "seed", + "guidance_scale", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceImageNode_ISO", + "display_name": "ByteDance Image_ISO", + "description": "Generate images using ByteDance models via api based on prompt", + "python_module": null, + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seedream-3-0-t2i-250415", + "multiselect": false, + "options": [ + "seedream-3-0-t2i-250415" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text prompt used to generate the image", + "multiline": true + } + ], + "size_preset": [ + "COMBO", + { + "optional": false, + "tooltip": "Pick a recommended size. Select Custom to use the width and height below", + "multiselect": false, + "options": [ + "1024x1024 (1:1)", + "864x1152 (3:4)", + "1152x864 (4:3)", + "1280x720 (16:9)", + "720x1280 (9:16)", + "832x1248 (2:3)", + "1248x832 (3:2)", + "1512x648 (21:9)", + "2048x2048 (1:1)", + "Custom" + ] + } + ], + "width": [ + "INT", + { + "optional": false, + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ], + "height": [ + "INT", + { + "optional": false, + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 1024, + "min": 512, + "max": 2048, + "step": 64 + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "guidance_scale": [ + "FLOAT", + { + "optional": true, + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 2.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceImageNode_ISO", + "display_name": "ByteDance Image_ISO", + "description": "Generate images using ByteDance models via api based on prompt", + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate images using ByteDance models via api based on prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Image_ISO" + }, + "ByteDanceImageEditNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seededit-3-0-i2i-250628", + "multiselect": false, + "options": [ + "seededit-3-0-i2i-250628" + ] + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The base image to edit" + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Instruction to edit image", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "guidance_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 5.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seededit-3-0-i2i-250628", + "multiselect": false, + "options": [ + "seededit-3-0-i2i-250628" + ] + } + ], + "image": [ + "IMAGE", + { + "tooltip": "The base image to edit" + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Instruction to edit image", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "guidance_scale": [ + "FLOAT", + { + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 5.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "image", + "prompt" + ], + "optional": [ + "seed", + "guidance_scale", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceImageEditNode_ISO", + "display_name": "ByteDance Image Edit_ISO", + "description": "Edit images using ByteDance models via api based on prompt", + "python_module": null, + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seededit-3-0-i2i-250628", + "multiselect": false, + "options": [ + "seededit-3-0-i2i-250628" + ] + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "The base image to edit" + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Instruction to edit image", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "guidance_scale": [ + "FLOAT", + { + "optional": true, + "tooltip": "Higher value makes the image follow the prompt more closely", + "default": 5.5, + "min": 1.0, + "max": 10.0, + "step": 0.01, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the image", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceImageEditNode_ISO", + "display_name": "ByteDance Image Edit_ISO", + "description": "Edit images using ByteDance models via api based on prompt", + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Edit images using ByteDance models via api based on prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Image Edit_ISO" + }, + "ByteDanceSeedreamNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "multiselect": false, + "options": [ + "seedream-4-0-250828" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for creating or editing an image.", + "default": "", + "multiline": true + } + ] + }, + "size_preset": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Pick a recommended size. Select Custom to use the width and height below.", + "multiselect": false, + "options": [ + "2048x2048 (1:1)", + "2304x1728 (4:3)", + "1728x2304 (3:4)", + "2560x1440 (16:9)", + "1440x2560 (9:16)", + "2496x1664 (3:2)", + "1664x2496 (2:3)", + "3024x1296 (21:9)", + "4096x4096 (1:1)", + "Custom" + ] + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Input image(s) for image-to-image generation. List of 1-10 images for single or multi-reference generation." + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ] + }, + "sequential_image_generation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Group image generation mode. 'disabled' generates a single image. 'auto' lets the model decide whether to generate multiple related images (e.g., story scenes, character variations).", + "multiselect": false, + "options": [ + "disabled", + "auto" + ] + } + ] + }, + "max_images": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Maximum number of images to generate when sequential_image_generation='auto'. Total images (input + generated) cannot exceed 15.", + "default": 1, + "min": 1, + "max": 15, + "step": 1, + "display": "number" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image.", + "default": true + } + ] + }, + "fail_on_partial": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "If enabled, abort execution if any requested images are missing or return an error.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "multiselect": false, + "options": [ + "seedream-4-0-250828" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for creating or editing an image.", + "default": "", + "multiline": true + } + ], + "size_preset": [ + "COMBO", + { + "tooltip": "Pick a recommended size. Select Custom to use the width and height below.", + "multiselect": false, + "options": [ + "2048x2048 (1:1)", + "2304x1728 (4:3)", + "1728x2304 (3:4)", + "2560x1440 (16:9)", + "1440x2560 (9:16)", + "2496x1664 (3:2)", + "1664x2496 (2:3)", + "3024x1296 (21:9)", + "4096x4096 (1:1)", + "Custom" + ] + } + ] + }, + "optional": { + "image": [ + "IMAGE", + { + "tooltip": "Input image(s) for image-to-image generation. List of 1-10 images for single or multi-reference generation." + } + ], + "width": [ + "INT", + { + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ], + "height": [ + "INT", + { + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ], + "sequential_image_generation": [ + "COMBO", + { + "tooltip": "Group image generation mode. 'disabled' generates a single image. 'auto' lets the model decide whether to generate multiple related images (e.g., story scenes, character variations).", + "multiselect": false, + "options": [ + "disabled", + "auto" + ] + } + ], + "max_images": [ + "INT", + { + "tooltip": "Maximum number of images to generate when sequential_image_generation='auto'. Total images (input + generated) cannot exceed 15.", + "default": 1, + "min": 1, + "max": 15, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the image.", + "default": true + } + ], + "fail_on_partial": [ + "BOOLEAN", + { + "tooltip": "If enabled, abort execution if any requested images are missing or return an error.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "size_preset" + ], + "optional": [ + "image", + "width", + "height", + "sequential_image_generation", + "max_images", + "seed", + "watermark", + "fail_on_partial" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceSeedreamNode_ISO", + "display_name": "ByteDance Seedream 4_ISO", + "description": "Unified text-to-image generation and precise single-sentence editing at up to 4K resolution.", + "python_module": null, + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "multiselect": false, + "options": [ + "seedream-4-0-250828" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for creating or editing an image.", + "default": "", + "multiline": true + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Input image(s) for image-to-image generation. List of 1-10 images for single or multi-reference generation." + } + ], + "size_preset": [ + "COMBO", + { + "optional": false, + "tooltip": "Pick a recommended size. Select Custom to use the width and height below.", + "multiselect": false, + "options": [ + "2048x2048 (1:1)", + "2304x1728 (4:3)", + "1728x2304 (3:4)", + "2560x1440 (16:9)", + "1440x2560 (9:16)", + "2496x1664 (3:2)", + "1664x2496 (2:3)", + "3024x1296 (21:9)", + "4096x4096 (1:1)", + "Custom" + ] + } + ], + "width": [ + "INT", + { + "optional": true, + "tooltip": "Custom width for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ], + "height": [ + "INT", + { + "optional": true, + "tooltip": "Custom height for image. Value is working only if `size_preset` is set to `Custom`", + "default": 2048, + "min": 1024, + "max": 4096, + "step": 64 + } + ], + "sequential_image_generation": [ + "COMBO", + { + "optional": true, + "tooltip": "Group image generation mode. 'disabled' generates a single image. 'auto' lets the model decide whether to generate multiple related images (e.g., story scenes, character variations).", + "multiselect": false, + "options": [ + "disabled", + "auto" + ] + } + ], + "max_images": [ + "INT", + { + "optional": true, + "tooltip": "Maximum number of images to generate when sequential_image_generation='auto'. Total images (input + generated) cannot exceed 15.", + "default": 1, + "min": 1, + "max": 15, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the image.", + "default": true + } + ], + "fail_on_partial": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "If enabled, abort execution if any requested images are missing or return an error.", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceSeedreamNode_ISO", + "display_name": "ByteDance Seedream 4_ISO", + "description": "Unified text-to-image generation and precise single-sentence editing at up to 4K resolution.", + "category": "api node/image/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Unified text-to-image generation and precise single-sentence editing at up to 4K resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Seedream 4_ISO" + }, + "ByteDanceTextToVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-t2v-250428" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "camera_fixed": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-t2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "resolution", + "aspect_ratio", + "duration" + ], + "optional": [ + "seed", + "camera_fixed", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceTextToVideoNode_ISO", + "display_name": "ByteDance Text to Video_ISO", + "description": "Generate video using ByteDance models via api based on prompt", + "python_module": null, + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-t2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceTextToVideoNode_ISO", + "display_name": "ByteDance Text to Video_ISO", + "description": "Generate video using ByteDance models via api based on prompt", + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video using ByteDance models via api based on prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Text to Video_ISO" + }, + "ByteDanceImageToVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "camera_fixed": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "image": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "image", + "resolution", + "aspect_ratio", + "duration" + ], + "optional": [ + "seed", + "camera_fixed", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceImageToVideoNode_ISO", + "display_name": "ByteDance Image to Video_ISO", + "description": "Generate video using ByteDance models via api based on image and prompt", + "python_module": null, + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seedance-1-0-pro-250528", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "First frame to be used for the video." + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceImageToVideoNode_ISO", + "display_name": "ByteDance Image to Video_ISO", + "description": "Generate video using ByteDance models via api based on image and prompt", + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video using ByteDance models via api based on image and prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Image to Video_ISO" + }, + "ByteDanceFirstLastFrameNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ] + }, + "first_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ] + }, + "last_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Last frame to be used for the video." + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "camera_fixed": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "first_frame": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ], + "last_frame": [ + "IMAGE", + { + "tooltip": "Last frame to be used for the video." + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "first_frame", + "last_frame", + "resolution", + "aspect_ratio", + "duration" + ], + "optional": [ + "seed", + "camera_fixed", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceFirstLastFrameNode_ISO", + "display_name": "ByteDance First-Last-Frame to Video_ISO", + "description": "Generate video using prompt and first and last frames.", + "python_module": null, + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-pro-250528", + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "first_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "First frame to be used for the video." + } + ], + "last_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Last frame to be used for the video." + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "camera_fixed": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Specifies whether to fix the camera. The platform appends an instruction to fix the camera to your prompt, but does not guarantee the actual effect.", + "default": false + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceFirstLastFrameNode_ISO", + "display_name": "ByteDance First-Last-Frame to Video_ISO", + "description": "Generate video using prompt and first and last frames.", + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video using prompt and first and last frames.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance First-Last-Frame to Video_ISO" + }, + "ByteDanceImageReferenceNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-lite-i2v-250428" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ] + }, + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "One to four images." + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/ByteDance", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "images": [ + "IMAGE", + { + "tooltip": "One to four images." + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "images", + "resolution", + "aspect_ratio", + "duration" + ], + "optional": [ + "seed", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ByteDanceImageReferenceNode_ISO", + "display_name": "ByteDance Reference Images to Video_ISO", + "description": "Generate video using prompt and reference images.", + "python_module": null, + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "seedance-1-0-lite-i2v-250428", + "multiselect": false, + "options": [ + "seedance-1-0-lite-i2v-250428" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "The text prompt used to generate the video.", + "multiline": true + } + ], + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "One to four images." + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "The resolution of the output video.", + "multiselect": false, + "options": [ + "480p", + "720p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "The aspect ratio of the output video.", + "multiselect": false, + "options": [ + "adaptive", + "16:9", + "4:3", + "1:1", + "3:4", + "9:16", + "21:9" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "tooltip": "The duration of the output video in seconds.", + "default": 5, + "min": 3, + "max": 12, + "step": 1, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the video.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ByteDanceImageReferenceNode_ISO", + "display_name": "ByteDance Reference Images to Video_ISO", + "description": "Generate video using prompt and reference images.", + "category": "api node/video/ByteDance", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video using prompt and reference images.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ByteDance Reference Images to Video_ISO" + }, + "GeminiNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text inputs to the model, used to generate a response. You can include detailed instructions, questions, or context for the model.", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-pro", + "multiselect": false, + "options": [ + "gemini-2.5-pro-preview-05-06", + "gemini-2.5-flash-preview-04-17", + "gemini-2.5-pro", + "gemini-2.5-flash", + "gemini-3-pro-preview" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "Optional audio to use as context for the model." + } + ] + }, + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "Optional video to use as context for the model." + } + ] + }, + "files": { + "__pyisolate_tuple__": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/text/Gemini", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text inputs to the model, used to generate a response. You can include detailed instructions, questions, or context for the model.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-pro", + "multiselect": false, + "options": [ + "gemini-2.5-pro-preview-05-06", + "gemini-2.5-flash-preview-04-17", + "gemini-2.5-pro", + "gemini-2.5-flash", + "gemini-3-pro-preview" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "images": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "audio": [ + "AUDIO", + { + "tooltip": "Optional audio to use as context for the model." + } + ], + "video": [ + "VIDEO", + { + "tooltip": "Optional video to use as context for the model." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "seed" + ], + "optional": [ + "images", + "audio", + "video", + "files" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "GeminiNode_ISO", + "display_name": "Google Gemini_ISO", + "description": "Generate text responses with Google's Gemini AI model. You can provide multiple types of inputs (text, images, audio, video) as context for generating more relevant and meaningful responses.", + "python_module": null, + "category": "api node/text/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text inputs to the model, used to generate a response. You can include detailed instructions, questions, or context for the model.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-pro", + "multiselect": false, + "options": [ + "gemini-2.5-pro-preview-05-06", + "gemini-2.5-flash-preview-04-17", + "gemini-2.5-pro", + "gemini-2.5-flash", + "gemini-3-pro-preview" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "audio": [ + "AUDIO", + { + "optional": true, + "tooltip": "Optional audio to use as context for the model." + } + ], + "video": [ + "VIDEO", + { + "optional": true, + "tooltip": "Optional video to use as context for the model." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "optional": true, + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "GeminiNode_ISO", + "display_name": "Google Gemini_ISO", + "description": "Generate text responses with Google's Gemini AI model. You can provide multiple types of inputs (text, images, audio, video) as context for generating more relevant and meaningful responses.", + "category": "api node/text/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate text responses with Google's Gemini AI model. You can provide multiple types of inputs (text, images, audio, video) as context for generating more relevant and meaningful responses.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Google Gemini_ISO" + }, + "GeminiImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-flash-image", + "multiselect": false, + "options": [ + "gemini-2.5-flash-image-preview", + "gemini-2.5-flash-image" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ] + }, + "files": { + "__pyisolate_tuple__": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Defaults to matching the output image size to that of your input image, or otherwise generates 1:1 squares.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ] + }, + "response_modalities": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE", + "STRING" + ], + "return_names": [ + "IMAGE", + "STRING" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Gemini", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-flash-image", + "multiselect": false, + "options": [ + "gemini-2.5-flash-image-preview", + "gemini-2.5-flash-image" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "images": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Defaults to matching the output image size to that of your input image, or otherwise generates 1:1 squares.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ], + "response_modalities": [ + "COMBO", + { + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "seed" + ], + "optional": [ + "images", + "files", + "aspect_ratio", + "response_modalities" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "STRING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "STRING" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "GeminiImageNode_ISO", + "display_name": "Nano Banana (Google Gemini Image)_ISO", + "description": "Edit images synchronously via Google API.", + "python_module": null, + "category": "api node/image/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "The Gemini model to use for generating responses.", + "default": "gemini-2.5-flash-image", + "multiselect": false, + "options": [ + "gemini-2.5-flash-image-preview", + "gemini-2.5-flash-image" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "When seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "optional": true, + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "Defaults to matching the output image size to that of your input image, or otherwise generates 1:1 squares.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ], + "response_modalities": [ + "COMBO", + { + "optional": true, + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "_1_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "GeminiImageNode_ISO", + "display_name": "Nano Banana (Google Gemini Image)_ISO", + "description": "Edit images synchronously via Google API.", + "category": "api node/image/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Edit images synchronously via Google API.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Nano Banana (Google Gemini Image)_ISO" + }, + "GeminiImage2Node_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt describing the image to generate or the edits to apply. Include any constraints, styles, or details the model should follow.", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gemini-3-pro-image-preview" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "When the seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "If set to 'auto', matches your input image's aspect ratio; if no image is provided, a 16:9 square is usually generated.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Target output resolution. For 2K/4K the native Gemini upscaler is used.", + "multiselect": false, + "options": [ + "1K", + "2K", + "4K" + ] + } + ] + }, + "response_modalities": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image(s). To include multiple images, use the Batch Images node (up to 14)." + } + ] + }, + "files": { + "__pyisolate_tuple__": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE", + "STRING" + ], + "return_names": [ + "IMAGE", + "STRING" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Gemini", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt describing the image to generate or the edits to apply. Include any constraints, styles, or details the model should follow.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "gemini-3-pro-image-preview" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "When the seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "If set to 'auto', matches your input image's aspect ratio; if no image is provided, a 16:9 square is usually generated.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Target output resolution. For 2K/4K the native Gemini upscaler is used.", + "multiselect": false, + "options": [ + "1K", + "2K", + "4K" + ] + } + ], + "response_modalities": [ + "COMBO", + { + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ] + }, + "optional": { + "images": [ + "IMAGE", + { + "tooltip": "Optional reference image(s). To include multiple images, use the Batch Images node (up to 14)." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "seed", + "aspect_ratio", + "resolution", + "response_modalities" + ], + "optional": [ + "images", + "files" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "STRING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "STRING" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "GeminiImage2Node_ISO", + "display_name": "Nano Banana Pro (Google Gemini Image)_ISO", + "description": "Generate or edit images synchronously via Google Vertex API.", + "python_module": null, + "category": "api node/image/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt describing the image to generate or the edits to apply. Include any constraints, styles, or details the model should follow.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "gemini-3-pro-image-preview" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "When the seed is fixed to a specific value, the model makes a best effort to provide the same response for repeated requests. Deterministic output isn't guaranteed. Also, changing the model or parameter settings, such as the temperature, can cause variations in the response even when you use the same seed value. By default, a random seed value is used.", + "default": 42, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "If set to 'auto', matches your input image's aspect ratio; if no image is provided, a 16:9 square is usually generated.", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1:1", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "9:16", + "16:9", + "21:9" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "Target output resolution. For 2K/4K the native Gemini upscaler is used.", + "multiselect": false, + "options": [ + "1K", + "2K", + "4K" + ] + } + ], + "response_modalities": [ + "COMBO", + { + "optional": false, + "tooltip": "Choose 'IMAGE' for image-only output, or 'IMAGE+TEXT' to return both the generated image and a text response.", + "multiselect": false, + "options": [ + "IMAGE+TEXT", + "IMAGE" + ] + } + ], + "images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image(s). To include multiple images, use the Batch Images node (up to 14)." + } + ], + "files": [ + "GEMINI_INPUT_FILES", + { + "optional": true, + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the Gemini Generate Content Input Files node." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "_1_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "GeminiImage2Node_ISO", + "display_name": "Nano Banana Pro (Google Gemini Image)_ISO", + "description": "Generate or edit images synchronously via Google Vertex API.", + "category": "api node/image/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate or edit images synchronously via Google Vertex API.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Nano Banana Pro (Google Gemini Image)_ISO" + }, + "GeminiInputFiles_ISO": { + "input_types": { + "required": { + "file": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ] + } + }, + "optional": { + "GEMINI_INPUT_FILES": { + "__pyisolate_tuple__": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + } + } + }, + "return_types": [ + "GEMINI_INPUT_FILES" + ], + "return_names": [ + "GEMINI_INPUT_FILES" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/text/Gemini", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "file": [ + "COMBO", + { + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ] + }, + "optional": { + "GEMINI_INPUT_FILES": [ + "GEMINI_INPUT_FILES", + { + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + } + }, + "input_order": { + "required": [ + "file" + ], + "optional": [ + "GEMINI_INPUT_FILES" + ] + }, + "is_input_list": false, + "output": [ + "GEMINI_INPUT_FILES" + ], + "output_is_list": [ + false + ], + "output_name": [ + "GEMINI_INPUT_FILES" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "GeminiInputFiles_ISO", + "display_name": "Gemini Input Files_ISO", + "description": "Loads and prepares input files to include as inputs for Gemini LLM nodes. The files will be read by the Gemini model when generating a response. The contents of the text file count toward the token limit. \ud83d\udec8 TIP: Can be chained together with other Gemini Input File nodes.", + "python_module": null, + "category": "api node/text/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "file": [ + "COMBO", + { + "optional": false, + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ], + "GEMINI_INPUT_FILES": [ + "GEMINI_INPUT_FILES", + { + "optional": true, + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + }, + "output": { + "_0_GEMINI_INPUT_FILES_": [ + "GEMINI_INPUT_FILES", + { + "display_name": "_0_GEMINI_INPUT_FILES_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "GeminiInputFiles_ISO", + "display_name": "Gemini Input Files_ISO", + "description": "Loads and prepares input files to include as inputs for Gemini LLM nodes. The files will be read by the Gemini model when generating a response. The contents of the text file count toward the token limit. \ud83d\udec8 TIP: Can be chained together with other Gemini Input File nodes.", + "category": "api node/text/Gemini", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Loads and prepares input files to include as inputs for Gemini LLM nodes. The files will be read by the Gemini model when generating a response. The contents of the text file count toward the token limit. \ud83d\udec8 TIP: Can be chained together with other Gemini Input File nodes.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Gemini Input Files_ISO" + }, + "IdeogramV1_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "turbo": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ] + } + }, + "optional": { + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ] + }, + "magic_prompt_option": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ] + }, + "num_images": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Ideogram", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "turbo": [ + "BOOLEAN", + { + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ] + }, + "optional": { + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ], + "num_images": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "turbo" + ], + "optional": [ + "aspect_ratio", + "magic_prompt_option", + "seed", + "negative_prompt", + "num_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "IdeogramV1_ISO", + "display_name": "Ideogram V1_ISO", + "description": "Generates images using the Ideogram V1 model.", + "python_module": null, + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "turbo": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "The aspect ratio for image generation.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "optional": true, + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ], + "num_images": [ + "INT", + { + "optional": true, + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "IdeogramV1_ISO", + "display_name": "Ideogram V1_ISO", + "description": "Generates images using the Ideogram V1 model.", + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images using the Ideogram V1 model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Ideogram V1_ISO" + }, + "IdeogramV2_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "turbo": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ] + } + }, + "optional": { + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to AUTO.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution for image generation. If not set to AUTO, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512 x 1536", + "576 x 1408", + "576 x 1472", + "576 x 1536", + "640 x 1024", + "640 x 1344", + "640 x 1408", + "640 x 1472", + "640 x 1536", + "704 x 1152", + "704 x 1216", + "704 x 1280", + "704 x 1344", + "704 x 1408", + "704 x 1472", + "720 x 1280", + "736 x 1312", + "768 x 1024", + "768 x 1088", + "768 x 1152", + "768 x 1216", + "768 x 1232", + "768 x 1280", + "768 x 1344", + "832 x 960", + "832 x 1024", + "832 x 1088", + "832 x 1152", + "832 x 1216", + "832 x 1248", + "864 x 1152", + "896 x 960", + "896 x 1024", + "896 x 1088", + "896 x 1120", + "896 x 1152", + "960 x 832", + "960 x 896", + "960 x 1024", + "960 x 1088", + "1024 x 640", + "1024 x 768", + "1024 x 832", + "1024 x 896", + "1024 x 960", + "1024 x 1024", + "1088 x 768", + "1088 x 832", + "1088 x 896", + "1088 x 960", + "1120 x 896", + "1152 x 704", + "1152 x 768", + "1152 x 832", + "1152 x 864", + "1152 x 896", + "1216 x 704", + "1216 x 768", + "1216 x 832", + "1232 x 768", + "1248 x 832", + "1280 x 704", + "1280 x 720", + "1280 x 768", + "1280 x 800", + "1312 x 736", + "1344 x 640", + "1344 x 704", + "1344 x 768", + "1408 x 576", + "1408 x 640", + "1408 x 704", + "1472 x 576", + "1472 x 640", + "1472 x 704", + "1536 x 512", + "1536 x 576", + "1536 x 640" + ] + } + ] + }, + "magic_prompt_option": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "style_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Style type for generation (V2 only)", + "default": "NONE", + "multiselect": false, + "options": [ + "AUTO", + "GENERAL", + "REALISTIC", + "DESIGN", + "RENDER_3D", + "ANIME" + ] + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ] + }, + "num_images": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Ideogram", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "turbo": [ + "BOOLEAN", + { + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ] + }, + "optional": { + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to AUTO.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution for image generation. If not set to AUTO, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512 x 1536", + "576 x 1408", + "576 x 1472", + "576 x 1536", + "640 x 1024", + "640 x 1344", + "640 x 1408", + "640 x 1472", + "640 x 1536", + "704 x 1152", + "704 x 1216", + "704 x 1280", + "704 x 1344", + "704 x 1408", + "704 x 1472", + "720 x 1280", + "736 x 1312", + "768 x 1024", + "768 x 1088", + "768 x 1152", + "768 x 1216", + "768 x 1232", + "768 x 1280", + "768 x 1344", + "832 x 960", + "832 x 1024", + "832 x 1088", + "832 x 1152", + "832 x 1216", + "832 x 1248", + "864 x 1152", + "896 x 960", + "896 x 1024", + "896 x 1088", + "896 x 1120", + "896 x 1152", + "960 x 832", + "960 x 896", + "960 x 1024", + "960 x 1088", + "1024 x 640", + "1024 x 768", + "1024 x 832", + "1024 x 896", + "1024 x 960", + "1024 x 1024", + "1088 x 768", + "1088 x 832", + "1088 x 896", + "1088 x 960", + "1120 x 896", + "1152 x 704", + "1152 x 768", + "1152 x 832", + "1152 x 864", + "1152 x 896", + "1216 x 704", + "1216 x 768", + "1216 x 832", + "1232 x 768", + "1248 x 832", + "1280 x 704", + "1280 x 720", + "1280 x 768", + "1280 x 800", + "1312 x 736", + "1344 x 640", + "1344 x 704", + "1344 x 768", + "1408 x 576", + "1408 x 640", + "1408 x 704", + "1472 x 576", + "1472 x 640", + "1472 x 704", + "1536 x 512", + "1536 x 576", + "1536 x 640" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "style_type": [ + "COMBO", + { + "tooltip": "Style type for generation (V2 only)", + "default": "NONE", + "multiselect": false, + "options": [ + "AUTO", + "GENERAL", + "REALISTIC", + "DESIGN", + "RENDER_3D", + "ANIME" + ] + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ], + "num_images": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "turbo" + ], + "optional": [ + "aspect_ratio", + "resolution", + "magic_prompt_option", + "seed", + "style_type", + "negative_prompt", + "num_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "IdeogramV2_ISO", + "display_name": "Ideogram V2_ISO", + "description": "Generates images using the Ideogram V2 model.", + "python_module": null, + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "turbo": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Whether to use turbo mode (faster generation, potentially lower quality)", + "default": false + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to AUTO.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "4:3", + "3:4", + "16:9", + "9:16", + "2:1", + "1:2", + "3:2", + "2:3", + "4:5", + "5:4" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "The resolution for image generation. If not set to AUTO, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512 x 1536", + "576 x 1408", + "576 x 1472", + "576 x 1536", + "640 x 1024", + "640 x 1344", + "640 x 1408", + "640 x 1472", + "640 x 1536", + "704 x 1152", + "704 x 1216", + "704 x 1280", + "704 x 1344", + "704 x 1408", + "704 x 1472", + "720 x 1280", + "736 x 1312", + "768 x 1024", + "768 x 1088", + "768 x 1152", + "768 x 1216", + "768 x 1232", + "768 x 1280", + "768 x 1344", + "832 x 960", + "832 x 1024", + "832 x 1088", + "832 x 1152", + "832 x 1216", + "832 x 1248", + "864 x 1152", + "896 x 960", + "896 x 1024", + "896 x 1088", + "896 x 1120", + "896 x 1152", + "960 x 832", + "960 x 896", + "960 x 1024", + "960 x 1088", + "1024 x 640", + "1024 x 768", + "1024 x 832", + "1024 x 896", + "1024 x 960", + "1024 x 1024", + "1088 x 768", + "1088 x 832", + "1088 x 896", + "1088 x 960", + "1120 x 896", + "1152 x 704", + "1152 x 768", + "1152 x 832", + "1152 x 864", + "1152 x 896", + "1216 x 704", + "1216 x 768", + "1216 x 832", + "1232 x 768", + "1248 x 832", + "1280 x 704", + "1280 x 720", + "1280 x 768", + "1280 x 800", + "1312 x 736", + "1344 x 640", + "1344 x 704", + "1344 x 768", + "1408 x 576", + "1408 x 640", + "1408 x 704", + "1472 x 576", + "1472 x 640", + "1472 x 704", + "1536 x 512", + "1536 x 576", + "1536 x 640" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "optional": true, + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "style_type": [ + "COMBO", + { + "optional": true, + "tooltip": "Style type for generation (V2 only)", + "default": "NONE", + "multiselect": false, + "options": [ + "AUTO", + "GENERAL", + "REALISTIC", + "DESIGN", + "RENDER_3D", + "ANIME" + ] + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Description of what to exclude from the image", + "default": "", + "multiline": true + } + ], + "num_images": [ + "INT", + { + "optional": true, + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "IdeogramV2_ISO", + "display_name": "Ideogram V2_ISO", + "description": "Generates images using the Ideogram V2 model.", + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images using the Ideogram V2 model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Ideogram V2_ISO" + }, + "IdeogramV3_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation or editing", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to Auto.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:3", + "3:1", + "1:2", + "2:1", + "9:16", + "16:9", + "10:16", + "16:10", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "1:1" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The resolution for image generation. If not set to Auto, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512x1536", + "576x1408", + "576x1472", + "576x1536", + "640x1344", + "640x1408", + "640x1472", + "640x1536", + "704x1152", + "704x1216", + "704x1280", + "704x1344", + "704x1408", + "704x1472", + "736x1312", + "768x1088", + "768x1216", + "768x1280", + "768x1344", + "800x1280", + "832x960", + "832x1024", + "832x1088", + "832x1152", + "832x1216", + "832x1248", + "864x1152", + "896x960", + "896x1024", + "896x1088", + "896x1120", + "896x1152", + "960x832", + "960x896", + "960x1024", + "960x1088", + "1024x832", + "1024x896", + "1024x960", + "1024x1024", + "1088x768", + "1088x832", + "1088x896", + "1088x960", + "1120x896", + "1152x704", + "1152x832", + "1152x864", + "1152x896", + "1216x704", + "1216x768", + "1216x832", + "1248x832", + "1280x704", + "1280x768", + "1280x800", + "1312x736", + "1344x640", + "1344x704", + "1344x768", + "1408x576", + "1408x640", + "1408x704", + "1472x576", + "1472x640", + "1472x704", + "1536x512", + "1536x576", + "1536x640" + ] + } + ] + }, + "magic_prompt_option": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "num_images": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "rendering_speed": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Controls the trade-off between generation speed and quality", + "default": "DEFAULT", + "multiselect": false, + "options": [ + "DEFAULT", + "TURBO", + "QUALITY" + ] + } + ] + }, + "character_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to use as character reference." + } + ] + }, + "character_mask": { + "__pyisolate_tuple__": [ + "MASK", + { + "tooltip": "Optional mask for character reference image." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Ideogram", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation or editing", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "image": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to Auto.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:3", + "3:1", + "1:2", + "2:1", + "9:16", + "16:9", + "10:16", + "16:10", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The resolution for image generation. If not set to Auto, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512x1536", + "576x1408", + "576x1472", + "576x1536", + "640x1344", + "640x1408", + "640x1472", + "640x1536", + "704x1152", + "704x1216", + "704x1280", + "704x1344", + "704x1408", + "704x1472", + "736x1312", + "768x1088", + "768x1216", + "768x1280", + "768x1344", + "800x1280", + "832x960", + "832x1024", + "832x1088", + "832x1152", + "832x1216", + "832x1248", + "864x1152", + "896x960", + "896x1024", + "896x1088", + "896x1120", + "896x1152", + "960x832", + "960x896", + "960x1024", + "960x1088", + "1024x832", + "1024x896", + "1024x960", + "1024x1024", + "1088x768", + "1088x832", + "1088x896", + "1088x960", + "1120x896", + "1152x704", + "1152x832", + "1152x864", + "1152x896", + "1216x704", + "1216x768", + "1216x832", + "1248x832", + "1280x704", + "1280x768", + "1280x800", + "1312x736", + "1344x640", + "1344x704", + "1344x768", + "1408x576", + "1408x640", + "1408x704", + "1472x576", + "1472x640", + "1472x704", + "1536x512", + "1536x576", + "1536x640" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "num_images": [ + "INT", + { + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "rendering_speed": [ + "COMBO", + { + "tooltip": "Controls the trade-off between generation speed and quality", + "default": "DEFAULT", + "multiselect": false, + "options": [ + "DEFAULT", + "TURBO", + "QUALITY" + ] + } + ], + "character_image": [ + "IMAGE", + { + "tooltip": "Image to use as character reference." + } + ], + "character_mask": [ + "MASK", + { + "tooltip": "Optional mask for character reference image." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt" + ], + "optional": [ + "image", + "mask", + "aspect_ratio", + "resolution", + "magic_prompt_option", + "seed", + "num_images", + "rendering_speed", + "character_image", + "character_mask" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "IdeogramV3_ISO", + "display_name": "Ideogram V3_ISO", + "description": "Generates images using the Ideogram V3 model. Supports both regular image generation from text prompts and image editing with mask.", + "python_module": null, + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation or editing", + "default": "", + "multiline": true + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "optional": true, + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "The aspect ratio for image generation. Ignored if resolution is not set to Auto.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:3", + "3:1", + "1:2", + "2:1", + "9:16", + "16:9", + "10:16", + "16:10", + "2:3", + "3:2", + "3:4", + "4:3", + "4:5", + "5:4", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "The resolution for image generation. If not set to Auto, this overrides the aspect_ratio setting.", + "default": "Auto", + "multiselect": false, + "options": [ + "Auto", + "512x1536", + "576x1408", + "576x1472", + "576x1536", + "640x1344", + "640x1408", + "640x1472", + "640x1536", + "704x1152", + "704x1216", + "704x1280", + "704x1344", + "704x1408", + "704x1472", + "736x1312", + "768x1088", + "768x1216", + "768x1280", + "768x1344", + "800x1280", + "832x960", + "832x1024", + "832x1088", + "832x1152", + "832x1216", + "832x1248", + "864x1152", + "896x960", + "896x1024", + "896x1088", + "896x1120", + "896x1152", + "960x832", + "960x896", + "960x1024", + "960x1088", + "1024x832", + "1024x896", + "1024x960", + "1024x1024", + "1088x768", + "1088x832", + "1088x896", + "1088x960", + "1120x896", + "1152x704", + "1152x832", + "1152x864", + "1152x896", + "1216x704", + "1216x768", + "1216x832", + "1248x832", + "1280x704", + "1280x768", + "1280x800", + "1312x736", + "1344x640", + "1344x704", + "1344x768", + "1408x576", + "1408x640", + "1408x704", + "1472x576", + "1472x640", + "1472x704", + "1536x512", + "1536x576", + "1536x640" + ] + } + ], + "magic_prompt_option": [ + "COMBO", + { + "optional": true, + "tooltip": "Determine if MagicPrompt should be used in generation", + "default": "AUTO", + "multiselect": false, + "options": [ + "AUTO", + "ON", + "OFF" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "num_images": [ + "INT", + { + "optional": true, + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "rendering_speed": [ + "COMBO", + { + "optional": true, + "tooltip": "Controls the trade-off between generation speed and quality", + "default": "DEFAULT", + "multiselect": false, + "options": [ + "DEFAULT", + "TURBO", + "QUALITY" + ] + } + ], + "character_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image to use as character reference." + } + ], + "character_mask": [ + "MASK", + { + "optional": true, + "tooltip": "Optional mask for character reference image." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "IdeogramV3_ISO", + "display_name": "Ideogram V3_ISO", + "description": "Generates images using the Ideogram V3 model. Supports both regular image generation from text prompts and image editing with mask.", + "category": "api node/image/Ideogram", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images using the Ideogram V3 model. Supports both regular image generation from text prompts and image editing with mask.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Ideogram V3_ISO" + }, + "KlingCameraControls_ISO": { + "input_types": { + "required": { + "camera_control_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "down_back", + "forward_up", + "right_turn_forward", + "left_turn_forward" + ] + } + ] + }, + "horizontal_movement": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls camera's movement along horizontal axis (x-axis). Negative indicates left, positive indicates right", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "vertical_movement": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls camera's movement along vertical axis (y-axis). Negative indicates downward, positive indicates upward.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "pan": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls camera's rotation in vertical plane (x-axis). Negative indicates downward rotation, positive indicates upward rotation.", + "default": 0.5, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "tilt": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls camera's rotation in horizontal plane (y-axis). Negative indicates left rotation, positive indicates right rotation.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "roll": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls camera's rolling amount (z-axis). Negative indicates counterclockwise, positive indicates clockwise.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "zoom": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls change in camera's focal length. Negative indicates narrower field of view, positive indicates wider field of view.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + } + } + }, + "return_types": [ + "CAMERA_CONTROL" + ], + "return_names": [ + "camera_control" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "camera_control_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "simple", + "down_back", + "forward_up", + "right_turn_forward", + "left_turn_forward" + ] + } + ], + "horizontal_movement": [ + "FLOAT", + { + "tooltip": "Controls camera's movement along horizontal axis (x-axis). Negative indicates left, positive indicates right", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "vertical_movement": [ + "FLOAT", + { + "tooltip": "Controls camera's movement along vertical axis (y-axis). Negative indicates downward, positive indicates upward.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "pan": [ + "FLOAT", + { + "tooltip": "Controls camera's rotation in vertical plane (x-axis). Negative indicates downward rotation, positive indicates upward rotation.", + "default": 0.5, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "tilt": [ + "FLOAT", + { + "tooltip": "Controls camera's rotation in horizontal plane (y-axis). Negative indicates left rotation, positive indicates right rotation.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "roll": [ + "FLOAT", + { + "tooltip": "Controls camera's rolling amount (z-axis). Negative indicates counterclockwise, positive indicates clockwise.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "zoom": [ + "FLOAT", + { + "tooltip": "Controls change in camera's focal length. Negative indicates narrower field of view, positive indicates wider field of view.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + } + }, + "input_order": { + "required": [ + "camera_control_type", + "horizontal_movement", + "vertical_movement", + "pan", + "tilt", + "roll", + "zoom" + ] + }, + "is_input_list": false, + "output": [ + "CAMERA_CONTROL" + ], + "output_is_list": [ + false + ], + "output_name": [ + "camera_control" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingCameraControls_ISO", + "display_name": "Kling Camera Controls_ISO", + "description": "Allows specifying configuration options for Kling Camera Controls and motion control effects.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "camera_control_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "simple", + "down_back", + "forward_up", + "right_turn_forward", + "left_turn_forward" + ] + } + ], + "horizontal_movement": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls camera's movement along horizontal axis (x-axis). Negative indicates left, positive indicates right", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "vertical_movement": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls camera's movement along vertical axis (y-axis). Negative indicates downward, positive indicates upward.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "pan": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls camera's rotation in vertical plane (x-axis). Negative indicates downward rotation, positive indicates upward rotation.", + "default": 0.5, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "tilt": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls camera's rotation in horizontal plane (y-axis). Negative indicates left rotation, positive indicates right rotation.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "roll": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls camera's rolling amount (z-axis). Negative indicates counterclockwise, positive indicates clockwise.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ], + "zoom": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls change in camera's focal length. Negative indicates narrower field of view, positive indicates wider field of view.", + "default": 0.0, + "min": -10.0, + "max": 10.0, + "step": 0.25, + "display": "slider" + } + ] + }, + "output": { + "_0_CAMERA_CONTROL_": [ + "CAMERA_CONTROL", + { + "display_name": "camera_control", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "KlingCameraControls_ISO", + "display_name": "Kling Camera Controls_ISO", + "description": "Allows specifying configuration options for Kling Camera Controls and motion control effects.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Allows specifying configuration options for Kling Camera Controls and motion control effects.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Camera Controls_ISO" + }, + "KlingTextToVideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "standard mode / 5s duration / kling-v1-6", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "standard mode / 10s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 10s duration / kling-v1", + "standard mode / 5s duration / kling-v1-6", + "standard mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-master", + "pro mode / 10s duration / kling-v2-master", + "standard mode / 5s duration / kling-v2-master", + "standard mode / 10s duration / kling-v2-master", + "pro mode / 5s duration / kling-v2-1-master", + "pro mode / 10s duration / kling-v2-1-master", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "mode": [ + "COMBO", + { + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "standard mode / 5s duration / kling-v1-6", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "standard mode / 10s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 10s duration / kling-v1", + "standard mode / 5s duration / kling-v1-6", + "standard mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-master", + "pro mode / 10s duration / kling-v2-master", + "standard mode / 5s duration / kling-v2-master", + "standard mode / 10s duration / kling-v2-master", + "pro mode / 5s duration / kling-v2-1-master", + "pro mode / 10s duration / kling-v2-1-master", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "cfg_scale", + "aspect_ratio", + "mode" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingTextToVideoNode_ISO", + "display_name": "Kling Text to Video_ISO", + "description": "Kling Text to Video Node", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 1.0, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "standard mode / 5s duration / kling-v1-6", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "standard mode / 10s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 10s duration / kling-v1", + "standard mode / 5s duration / kling-v1-6", + "standard mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-master", + "pro mode / 10s duration / kling-v2-master", + "standard mode / 5s duration / kling-v2-master", + "standard mode / 10s duration / kling-v2-master", + "pro mode / 5s duration / kling-v2-1-master", + "pro mode / 10s duration / kling-v2-1-master", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingTextToVideoNode_ISO", + "display_name": "Kling Text to Video_ISO", + "description": "Kling Text to Video Node", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Text to Video Node", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Text to Video_ISO" + }, + "KlingImage2VideoNode_ISO": { + "input_types": { + "required": { + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The reference image used to generate the video." + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "kling-v2-master", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.8, + "min": 0.0, + "max": 1.0 + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "5", + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "start_frame": [ + "IMAGE", + { + "tooltip": "The reference image used to generate the video." + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "model_name": [ + "COMBO", + { + "default": "kling-v2-master", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 0.8, + "min": 0.0, + "max": 1.0 + } + ], + "mode": [ + "COMBO", + { + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "COMBO", + { + "default": "5", + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "start_frame", + "prompt", + "negative_prompt", + "model_name", + "cfg_scale", + "mode", + "aspect_ratio", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingImage2VideoNode_ISO", + "display_name": "Kling Image to Video_ISO", + "description": "Kling Image to Video Node", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "The reference image used to generate the video." + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "model_name": [ + "COMBO", + { + "optional": false, + "default": "kling-v2-master", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.8, + "min": 0.0, + "max": 1.0 + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": "5", + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingImage2VideoNode_ISO", + "display_name": "Kling Image to Video_ISO", + "description": "Kling Image to Video Node", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Image to Video Node", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Image to Video_ISO" + }, + "KlingCameraControlI2VNode_ISO": { + "input_types": { + "required": { + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "camera_control": { + "__pyisolate_tuple__": [ + "CAMERA_CONTROL", + { + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "start_frame": [ + "IMAGE", + { + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "camera_control": [ + "CAMERA_CONTROL", + { + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "start_frame", + "prompt", + "negative_prompt", + "cfg_scale", + "aspect_ratio", + "camera_control" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingCameraControlI2VNode_ISO", + "display_name": "Kling Image to Video (Camera Control)_ISO", + "description": "Transform still images into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original image.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "camera_control": [ + "CAMERA_CONTROL", + { + "optional": false, + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingCameraControlI2VNode_ISO", + "display_name": "Kling Image to Video (Camera Control)_ISO", + "description": "Transform still images into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original image.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Transform still images into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original image.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Image to Video (Camera Control)_ISO" + }, + "KlingCameraControlT2VNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "camera_control": { + "__pyisolate_tuple__": [ + "CAMERA_CONTROL", + { + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "camera_control": [ + "CAMERA_CONTROL", + { + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "cfg_scale", + "aspect_ratio", + "camera_control" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingCameraControlT2VNode_ISO", + "display_name": "Kling Text to Video (Camera Control)_ISO", + "description": "Transform text into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original text.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.75, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "camera_control": [ + "CAMERA_CONTROL", + { + "optional": false, + "tooltip": "Can be created using the Kling Camera Controls node. Controls the camera movement and motion during the video generation." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingCameraControlT2VNode_ISO", + "display_name": "Kling Text to Video (Camera Control)_ISO", + "description": "Transform text into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original text.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Transform text into cinematic videos with professional camera movements that simulate real-world cinematography. Control virtual camera actions including zoom, rotation, pan, tilt, and first-person view, while maintaining focus on your original text.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Text to Video (Camera Control)_ISO" + }, + "KlingStartEndFrameNode_ISO": { + "input_types": { + "required": { + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ] + }, + "end_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Reference Image - End frame control. URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px. Base64 should not include data:image prefix." + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "pro mode / 5s duration / kling-v2-5-turbo", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1-5", + "pro mode / 10s duration / kling-v1-5", + "pro mode / 5s duration / kling-v1-6", + "pro mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-1", + "pro mode / 10s duration / kling-v2-1", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "start_frame": [ + "IMAGE", + { + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ], + "end_frame": [ + "IMAGE", + { + "tooltip": "Reference Image - End frame control. URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px. Base64 should not include data:image prefix." + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "mode": [ + "COMBO", + { + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "pro mode / 5s duration / kling-v2-5-turbo", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1-5", + "pro mode / 10s duration / kling-v1-5", + "pro mode / 5s duration / kling-v1-6", + "pro mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-1", + "pro mode / 10s duration / kling-v2-1", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "start_frame", + "end_frame", + "prompt", + "negative_prompt", + "cfg_scale", + "aspect_ratio", + "mode" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingStartEndFrameNode_ISO", + "display_name": "Kling Start-End Frame to Video_ISO", + "description": "Generate a video sequence that transitions between your provided start and end images. The node creates all frames in between, producing a smooth transformation from the first frame to the last.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Reference Image - URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1. Base64 should not include data:image prefix." + } + ], + "end_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Reference Image - End frame control. URL or Base64 encoded string, cannot exceed 10MB, resolution not less than 300*300px. Base64 should not include data:image prefix." + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "tooltip": "The configuration to use for the video generation following the format: mode / duration / model_name.", + "default": "pro mode / 5s duration / kling-v2-5-turbo", + "multiselect": false, + "options": [ + "standard mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1", + "pro mode / 5s duration / kling-v1-5", + "pro mode / 10s duration / kling-v1-5", + "pro mode / 5s duration / kling-v1-6", + "pro mode / 10s duration / kling-v1-6", + "pro mode / 5s duration / kling-v2-1", + "pro mode / 10s duration / kling-v2-1", + "pro mode / 5s duration / kling-v2-5-turbo", + "pro mode / 10s duration / kling-v2-5-turbo" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingStartEndFrameNode_ISO", + "display_name": "Kling Start-End Frame to Video_ISO", + "description": "Generate a video sequence that transitions between your provided start and end images. The node creates all frames in between, producing a smooth transformation from the first frame to the last.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video sequence that transitions between your provided start and end images. The node creates all frames in between, producing a smooth transformation from the first frame to the last.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Start-End Frame to Video_ISO" + }, + "KlingVideoExtendNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt for guiding the video extension", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt for elements to avoid in the extended video", + "multiline": true + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ] + }, + "video_id": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "The ID of the video to be extended. Supports videos generated by text-to-video, image-to-video, and previous video extension operations. Cannot exceed 3 minutes total duration after extension.", + "forceInput": true, + "multiline": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt for guiding the video extension", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt for elements to avoid in the extended video", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "video_id": [ + "STRING", + { + "tooltip": "The ID of the video to be extended. Supports videos generated by text-to-video, image-to-video, and previous video extension operations. Cannot exceed 3 minutes total duration after extension.", + "forceInput": true, + "multiline": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "cfg_scale", + "video_id" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingVideoExtendNode_ISO", + "display_name": "Kling Video Extend_ISO", + "description": "Kling Video Extend Node. Extend videos made by other Kling nodes. The video_id is created by using other Kling Nodes.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt for guiding the video extension", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt for elements to avoid in the extended video", + "multiline": true + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "default": 0.5, + "min": 0.0, + "max": 1.0 + } + ], + "video_id": [ + "STRING", + { + "optional": false, + "tooltip": "The ID of the video to be extended. Supports videos generated by text-to-video, image-to-video, and previous video extension operations. Cannot exceed 3 minutes total duration after extension.", + "forceInput": true, + "multiline": false + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingVideoExtendNode_ISO", + "display_name": "Kling Video Extend_ISO", + "description": "Kling Video Extend Node. Extend videos made by other Kling nodes. The video_id is created by using other Kling Nodes.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Video Extend Node. Extend videos made by other Kling nodes. The video_id is created by using other Kling Nodes.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Video Extend_ISO" + }, + "KlingLipSyncAudioToVideoNode_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + {} + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + {} + ] + }, + "voice_language": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "en", + "multiselect": false, + "options": [ + "zh", + "en" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + {} + ], + "audio": [ + "AUDIO", + {} + ], + "voice_language": [ + "COMBO", + { + "default": "en", + "multiselect": false, + "options": [ + "zh", + "en" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "video", + "audio", + "voice_language" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingLipSyncAudioToVideoNode_ISO", + "display_name": "Kling Lip Sync Video with Audio_ISO", + "description": "Kling Lip Sync Audio to Video Node. Syncs mouth movements in a video file to the audio content of an audio file. When using, ensure that the audio contains clearly distinguishable vocals and that the video contains a distinct face. The audio file should not be larger than 5MB. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false + } + ], + "audio": [ + "AUDIO", + { + "optional": false + } + ], + "voice_language": [ + "COMBO", + { + "optional": false, + "default": "en", + "multiselect": false, + "options": [ + "zh", + "en" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingLipSyncAudioToVideoNode_ISO", + "display_name": "Kling Lip Sync Video with Audio_ISO", + "description": "Kling Lip Sync Audio to Video Node. Syncs mouth movements in a video file to the audio content of an audio file. When using, ensure that the audio contains clearly distinguishable vocals and that the video contains a distinct face. The audio file should not be larger than 5MB. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Lip Sync Audio to Video Node. Syncs mouth movements in a video file to the audio content of an audio file. When using, ensure that the audio contains clearly distinguishable vocals and that the video contains a distinct face. The audio file should not be larger than 5MB. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Lip Sync Video with Audio_ISO" + }, + "KlingLipSyncTextToVideoNode_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + {} + ] + }, + "text": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text Content for Lip-Sync Video Generation. Required when mode is text2video. Maximum length is 120 characters.", + "multiline": true + } + ] + }, + "voice": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "Melody", + "multiselect": false, + "options": [ + "Melody", + "Sunny", + "Sage", + "Ace", + "Blossom", + "Peppy", + "Dove", + "Shine", + "Anchor", + "Lyric", + "Tender", + "Siren", + "Zippy", + "Bud", + "Sprite", + "Candy", + "Beacon", + "Rock", + "Titan", + "Grace", + "Helen", + "Lore", + "Crag", + "Prattle", + "Hearth", + "The Reader", + "Commercial Lady", + "\u9633\u5149\u5c11\u5e74", + "\u61c2\u4e8b\u5c0f\u5f1f", + "\u8fd0\u52a8\u5c11\u5e74", + "\u9752\u6625\u5c11\u5973", + "\u6e29\u67d4\u5c0f\u59b9", + "\u5143\u6c14\u5c11\u5973", + "\u9633\u5149\u7537\u751f", + "\u5e7d\u9ed8\u5c0f\u54e5", + "\u6587\u827a\u5c0f\u54e5", + "\u751c\u7f8e\u90bb\u5bb6", + "\u6e29\u67d4\u59d0\u59d0", + "\u804c\u573a\u5973\u9752", + "\u6d3b\u6cfc\u7537\u7ae5", + "\u4fcf\u76ae\u5973\u7ae5", + "\u7a33\u91cd\u8001\u7238", + "\u6e29\u67d4\u5988\u5988", + "\u4e25\u8083\u4e0a\u53f8", + "\u4f18\u96c5\u8d35\u5987", + "\u6148\u7965\u7237\u7237", + "\u5520\u53e8\u7237\u7237", + "\u5520\u53e8\u5976\u5976", + "\u548c\u853c\u5976\u5976", + "\u4e1c\u5317\u8001\u94c1", + "\u91cd\u5e86\u5c0f\u4f19", + "\u56db\u5ddd\u59b9\u5b50", + "\u6f6e\u6c55\u5927\u53d4", + "\u53f0\u6e7e\u7537\u751f", + "\u897f\u5b89\u638c\u67dc", + "\u5929\u6d25\u59d0\u59d0", + "\u65b0\u95fb\u64ad\u62a5\u7537", + "\u8bd1\u5236\u7247\u7537", + "\u6492\u5a07\u5973\u53cb", + "\u5200\u7247\u70df\u55d3", + "\u4e56\u5de7\u6b63\u592a" + ] + } + ] + }, + "voice_speed": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Speech Rate. Valid range: 0.8~2.0, accurate to one decimal place.", + "default": 1, + "min": 0.8, + "max": 2.0, + "display": "slider" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + {} + ], + "text": [ + "STRING", + { + "tooltip": "Text Content for Lip-Sync Video Generation. Required when mode is text2video. Maximum length is 120 characters.", + "multiline": true + } + ], + "voice": [ + "COMBO", + { + "default": "Melody", + "multiselect": false, + "options": [ + "Melody", + "Sunny", + "Sage", + "Ace", + "Blossom", + "Peppy", + "Dove", + "Shine", + "Anchor", + "Lyric", + "Tender", + "Siren", + "Zippy", + "Bud", + "Sprite", + "Candy", + "Beacon", + "Rock", + "Titan", + "Grace", + "Helen", + "Lore", + "Crag", + "Prattle", + "Hearth", + "The Reader", + "Commercial Lady", + "\u9633\u5149\u5c11\u5e74", + "\u61c2\u4e8b\u5c0f\u5f1f", + "\u8fd0\u52a8\u5c11\u5e74", + "\u9752\u6625\u5c11\u5973", + "\u6e29\u67d4\u5c0f\u59b9", + "\u5143\u6c14\u5c11\u5973", + "\u9633\u5149\u7537\u751f", + "\u5e7d\u9ed8\u5c0f\u54e5", + "\u6587\u827a\u5c0f\u54e5", + "\u751c\u7f8e\u90bb\u5bb6", + "\u6e29\u67d4\u59d0\u59d0", + "\u804c\u573a\u5973\u9752", + "\u6d3b\u6cfc\u7537\u7ae5", + "\u4fcf\u76ae\u5973\u7ae5", + "\u7a33\u91cd\u8001\u7238", + "\u6e29\u67d4\u5988\u5988", + "\u4e25\u8083\u4e0a\u53f8", + "\u4f18\u96c5\u8d35\u5987", + "\u6148\u7965\u7237\u7237", + "\u5520\u53e8\u7237\u7237", + "\u5520\u53e8\u5976\u5976", + "\u548c\u853c\u5976\u5976", + "\u4e1c\u5317\u8001\u94c1", + "\u91cd\u5e86\u5c0f\u4f19", + "\u56db\u5ddd\u59b9\u5b50", + "\u6f6e\u6c55\u5927\u53d4", + "\u53f0\u6e7e\u7537\u751f", + "\u897f\u5b89\u638c\u67dc", + "\u5929\u6d25\u59d0\u59d0", + "\u65b0\u95fb\u64ad\u62a5\u7537", + "\u8bd1\u5236\u7247\u7537", + "\u6492\u5a07\u5973\u53cb", + "\u5200\u7247\u70df\u55d3", + "\u4e56\u5de7\u6b63\u592a" + ] + } + ], + "voice_speed": [ + "FLOAT", + { + "tooltip": "Speech Rate. Valid range: 0.8~2.0, accurate to one decimal place.", + "default": 1, + "min": 0.8, + "max": 2.0, + "display": "slider" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "video", + "text", + "voice", + "voice_speed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingLipSyncTextToVideoNode_ISO", + "display_name": "Kling Lip Sync Video with Text_ISO", + "description": "Kling Lip Sync Text to Video Node. Syncs mouth movements in a video file to a text prompt. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false + } + ], + "text": [ + "STRING", + { + "optional": false, + "tooltip": "Text Content for Lip-Sync Video Generation. Required when mode is text2video. Maximum length is 120 characters.", + "multiline": true + } + ], + "voice": [ + "COMBO", + { + "optional": false, + "default": "Melody", + "multiselect": false, + "options": [ + "Melody", + "Sunny", + "Sage", + "Ace", + "Blossom", + "Peppy", + "Dove", + "Shine", + "Anchor", + "Lyric", + "Tender", + "Siren", + "Zippy", + "Bud", + "Sprite", + "Candy", + "Beacon", + "Rock", + "Titan", + "Grace", + "Helen", + "Lore", + "Crag", + "Prattle", + "Hearth", + "The Reader", + "Commercial Lady", + "\u9633\u5149\u5c11\u5e74", + "\u61c2\u4e8b\u5c0f\u5f1f", + "\u8fd0\u52a8\u5c11\u5e74", + "\u9752\u6625\u5c11\u5973", + "\u6e29\u67d4\u5c0f\u59b9", + "\u5143\u6c14\u5c11\u5973", + "\u9633\u5149\u7537\u751f", + "\u5e7d\u9ed8\u5c0f\u54e5", + "\u6587\u827a\u5c0f\u54e5", + "\u751c\u7f8e\u90bb\u5bb6", + "\u6e29\u67d4\u59d0\u59d0", + "\u804c\u573a\u5973\u9752", + "\u6d3b\u6cfc\u7537\u7ae5", + "\u4fcf\u76ae\u5973\u7ae5", + "\u7a33\u91cd\u8001\u7238", + "\u6e29\u67d4\u5988\u5988", + "\u4e25\u8083\u4e0a\u53f8", + "\u4f18\u96c5\u8d35\u5987", + "\u6148\u7965\u7237\u7237", + "\u5520\u53e8\u7237\u7237", + "\u5520\u53e8\u5976\u5976", + "\u548c\u853c\u5976\u5976", + "\u4e1c\u5317\u8001\u94c1", + "\u91cd\u5e86\u5c0f\u4f19", + "\u56db\u5ddd\u59b9\u5b50", + "\u6f6e\u6c55\u5927\u53d4", + "\u53f0\u6e7e\u7537\u751f", + "\u897f\u5b89\u638c\u67dc", + "\u5929\u6d25\u59d0\u59d0", + "\u65b0\u95fb\u64ad\u62a5\u7537", + "\u8bd1\u5236\u7247\u7537", + "\u6492\u5a07\u5973\u53cb", + "\u5200\u7247\u70df\u55d3", + "\u4e56\u5de7\u6b63\u592a" + ] + } + ], + "voice_speed": [ + "FLOAT", + { + "optional": false, + "tooltip": "Speech Rate. Valid range: 0.8~2.0, accurate to one decimal place.", + "default": 1, + "min": 0.8, + "max": 2.0, + "display": "slider" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingLipSyncTextToVideoNode_ISO", + "display_name": "Kling Lip Sync Video with Text_ISO", + "description": "Kling Lip Sync Text to Video Node. Syncs mouth movements in a video file to a text prompt. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Lip Sync Text to Video Node. Syncs mouth movements in a video file to a text prompt. The video file should not be larger than 100MB, should have height/width between 720px and 1920px, and should be between 2s and 10s in length.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Lip Sync Video with Text_ISO" + }, + "KlingVirtualTryOnNode_ISO": { + "input_types": { + "required": { + "human_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "cloth_image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "kolors-virtual-try-on-v1", + "multiselect": false, + "options": [ + "kolors-virtual-try-on-v1", + "kolors-virtual-try-on-v1-5" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "human_image": [ + "IMAGE", + {} + ], + "cloth_image": [ + "IMAGE", + {} + ], + "model_name": [ + "COMBO", + { + "default": "kolors-virtual-try-on-v1", + "multiselect": false, + "options": [ + "kolors-virtual-try-on-v1", + "kolors-virtual-try-on-v1-5" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "human_image", + "cloth_image", + "model_name" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingVirtualTryOnNode_ISO", + "display_name": "Kling Virtual Try On_ISO", + "description": "Kling Virtual Try On Node. Input a human image and a cloth image to try on the cloth on the human. You can merge multiple clothing item pictures into one image with a white background.", + "python_module": null, + "category": "api node/image/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "human_image": [ + "IMAGE", + { + "optional": false + } + ], + "cloth_image": [ + "IMAGE", + { + "optional": false + } + ], + "model_name": [ + "COMBO", + { + "optional": false, + "default": "kolors-virtual-try-on-v1", + "multiselect": false, + "options": [ + "kolors-virtual-try-on-v1", + "kolors-virtual-try-on-v1-5" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingVirtualTryOnNode_ISO", + "display_name": "Kling Virtual Try On_ISO", + "description": "Kling Virtual Try On Node. Input a human image and a cloth image to try on the cloth on the human. You can merge multiple clothing item pictures into one image with a white background.", + "category": "api node/image/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Virtual Try On Node. Input a human image and a cloth image to try on the cloth on the human. You can merge multiple clothing item pictures into one image with a white background.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Virtual Try On_ISO" + }, + "KlingImageGenerationNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ] + }, + "image_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "subject", + "face" + ] + } + ] + }, + "image_fidelity": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Reference intensity for user-uploaded images", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ] + }, + "human_fidelity": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Subject reference similarity", + "default": 0.45, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ] + }, + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1", + "4:3", + "3:4", + "3:2", + "2:3", + "21:9" + ] + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of generated images", + "default": 1, + "min": 1, + "max": 9 + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "image_type": [ + "COMBO", + { + "multiselect": false, + "options": [ + "subject", + "face" + ] + } + ], + "image_fidelity": [ + "FLOAT", + { + "tooltip": "Reference intensity for user-uploaded images", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ], + "human_fidelity": [ + "FLOAT", + { + "tooltip": "Subject reference similarity", + "default": 0.45, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ], + "model_name": [ + "COMBO", + { + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1", + "4:3", + "3:4", + "3:2", + "2:3", + "21:9" + ] + } + ], + "n": [ + "INT", + { + "tooltip": "Number of generated images", + "default": 1, + "min": 1, + "max": 9 + } + ] + }, + "optional": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "image_type", + "image_fidelity", + "human_fidelity", + "model_name", + "aspect_ratio", + "n" + ], + "optional": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingImageGenerationNode_ISO", + "display_name": "Kling Image Generation_ISO", + "description": "Kling Image Generation Node. Generate an image from a text prompt with an optional reference image.", + "python_module": null, + "category": "api node/image/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Positive text prompt", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt", + "multiline": true + } + ], + "image_type": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "subject", + "face" + ] + } + ], + "image_fidelity": [ + "FLOAT", + { + "optional": false, + "tooltip": "Reference intensity for user-uploaded images", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ], + "human_fidelity": [ + "FLOAT", + { + "optional": false, + "tooltip": "Subject reference similarity", + "default": 0.45, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ], + "model_name": [ + "COMBO", + { + "optional": false, + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6", + "kling-v2-master", + "kling-v2-1", + "kling-v2-1-master", + "kling-v2-5-turbo" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1", + "4:3", + "3:4", + "3:2", + "2:3", + "21:9" + ] + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "Number of generated images", + "default": 1, + "min": 1, + "max": 9 + } + ], + "image": [ + "IMAGE", + { + "optional": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingImageGenerationNode_ISO", + "display_name": "Kling Image Generation_ISO", + "description": "Kling Image Generation Node. Generate an image from a text prompt with an optional reference image.", + "category": "api node/image/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Kling Image Generation Node. Generate an image from a text prompt with an optional reference image.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Image Generation_ISO" + }, + "KlingSingleImageVideoEffectNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": " Reference Image. URL or Base64 encoded string (without data:image prefix). File size cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1" + } + ] + }, + "effect_scene": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bloombloom", + "dizzydizzy", + "fuzzyfuzzy", + "squish", + "expansion" + ] + } + ] + }, + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-v1-6" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING", + "STRING" + ], + "return_names": [ + "VIDEO", + "video_id", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": " Reference Image. URL or Base64 encoded string (without data:image prefix). File size cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1" + } + ], + "effect_scene": [ + "COMBO", + { + "multiselect": false, + "options": [ + "bloombloom", + "dizzydizzy", + "fuzzyfuzzy", + "squish", + "expansion" + ] + } + ], + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-v1-6" + ] + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "effect_scene", + "model_name", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING", + "STRING" + ], + "output_is_list": [ + false, + false, + false + ], + "output_name": [ + "VIDEO", + "video_id", + "duration" + ], + "output_tooltips": [ + null, + null, + null + ], + "output_matchtypes": null, + "name": "KlingSingleImageVideoEffectNode_ISO", + "display_name": "Kling Video Effects_ISO", + "description": "Achieve different special effects when generating a video based on the effect_scene.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": " Reference Image. URL or Base64 encoded string (without data:image prefix). File size cannot exceed 10MB, resolution not less than 300*300px, aspect ratio between 1:2.5 ~ 2.5:1" + } + ], + "effect_scene": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "bloombloom", + "dizzydizzy", + "fuzzyfuzzy", + "squish", + "expansion" + ] + } + ], + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-v1-6" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "video_id", + "is_output_list": false + } + ], + "_2_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingSingleImageVideoEffectNode_ISO", + "display_name": "Kling Video Effects_ISO", + "description": "Achieve different special effects when generating a video based on the effect_scene.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Achieve different special effects when generating a video based on the effect_scene.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Video Effects_ISO" + }, + "KlingDualCharacterVideoEffectNode_ISO": { + "input_types": { + "required": { + "image_left": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Left side image" + } + ] + }, + "image_right": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Right side image" + } + ] + }, + "effect_scene": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "hug", + "kiss", + "heart_gesture" + ] + } + ] + }, + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6" + ] + } + ] + }, + "mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO", + "STRING" + ], + "return_names": [ + "VIDEO", + "duration" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image_left": [ + "IMAGE", + { + "tooltip": "Left side image" + } + ], + "image_right": [ + "IMAGE", + { + "tooltip": "Right side image" + } + ], + "effect_scene": [ + "COMBO", + { + "multiselect": false, + "options": [ + "hug", + "kiss", + "heart_gesture" + ] + } + ], + "model_name": [ + "COMBO", + { + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6" + ] + } + ], + "mode": [ + "COMBO", + { + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image_left", + "image_right", + "effect_scene", + "model_name", + "mode", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO", + "STRING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "VIDEO", + "duration" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "KlingDualCharacterVideoEffectNode_ISO", + "display_name": "Kling Dual Character Video Effects_ISO", + "description": "Achieve different special effects when generating a video based on the effect_scene. First image will be positioned on left side, second on right side of the composite.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image_left": [ + "IMAGE", + { + "optional": false, + "tooltip": "Left side image" + } + ], + "image_right": [ + "IMAGE", + { + "optional": false, + "tooltip": "Right side image" + } + ], + "effect_scene": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "hug", + "kiss", + "heart_gesture" + ] + } + ], + "model_name": [ + "COMBO", + { + "optional": false, + "default": "kling-v1", + "multiselect": false, + "options": [ + "kling-v1", + "kling-v1-5", + "kling-v1-6" + ] + } + ], + "mode": [ + "COMBO", + { + "optional": false, + "default": "std", + "multiselect": false, + "options": [ + "std", + "pro" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ], + "_1_STRING_": [ + "STRING", + { + "display_name": "duration", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingDualCharacterVideoEffectNode_ISO", + "display_name": "Kling Dual Character Video Effects_ISO", + "description": "Achieve different special effects when generating a video based on the effect_scene. First image will be positioned on left side, second on right side of the composite.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Achieve different special effects when generating a video based on the effect_scene. First image will be positioned on left side, second on right side of the composite.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Dual Character Video Effects_ISO" + }, + "KlingOmniProTextToVideoNode_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model_name", + "prompt", + "aspect_ratio", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingOmniProTextToVideoNode_ISO", + "display_name": "Kling Omni Text to Video (Pro)_ISO", + "description": "Use text prompts to generate videos with the latest Kling model.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingOmniProTextToVideoNode_ISO", + "display_name": "Kling Omni Text to Video (Pro)_ISO", + "description": "Use text prompts to generate videos with the latest Kling model.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Use text prompts to generate videos with the latest Kling model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Omni Text to Video (Pro)_ISO" + }, + "KlingOmniProFirstLastFrameNode_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ] + }, + "first_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "end_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "An optional end frame for the video. This cannot be used simultaneously with 'reference_images'." + } + ] + }, + "reference_images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Up to 6 additional reference images." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ], + "first_frame": [ + "IMAGE", + {} + ] + }, + "optional": { + "end_frame": [ + "IMAGE", + { + "tooltip": "An optional end frame for the video. This cannot be used simultaneously with 'reference_images'." + } + ], + "reference_images": [ + "IMAGE", + { + "tooltip": "Up to 6 additional reference images." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model_name", + "prompt", + "duration", + "first_frame" + ], + "optional": [ + "end_frame", + "reference_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingOmniProFirstLastFrameNode_ISO", + "display_name": "Kling Omni First-Last-Frame to Video (Pro)_ISO", + "description": "Use a start frame, an optional end frame, or reference images with the latest Kling model.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "5", + "10" + ] + } + ], + "first_frame": [ + "IMAGE", + { + "optional": false + } + ], + "end_frame": [ + "IMAGE", + { + "optional": true, + "tooltip": "An optional end frame for the video. This cannot be used simultaneously with 'reference_images'." + } + ], + "reference_images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Up to 6 additional reference images." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingOmniProFirstLastFrameNode_ISO", + "display_name": "Kling Omni First-Last-Frame to Video (Pro)_ISO", + "description": "Use a start frame, an optional end frame, or reference images with the latest Kling model.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Use a start frame, an optional end frame, or reference images with the latest Kling model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Omni First-Last-Frame to Video (Pro)_ISO" + }, + "KlingOmniProImageToVideoNode_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ] + }, + "reference_images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Up to 7 reference images." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "INT", + { + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ], + "reference_images": [ + "IMAGE", + { + "tooltip": "Up to 7 reference images." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model_name", + "prompt", + "aspect_ratio", + "duration", + "reference_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingOmniProImageToVideoNode_ISO", + "display_name": "Kling Omni Image to Video (Pro)_ISO", + "description": "Use up to 7 reference images to generate a video with the latest Kling model.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ], + "reference_images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Up to 7 reference images." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingOmniProImageToVideoNode_ISO", + "display_name": "Kling Omni Image to Video (Pro)_ISO", + "description": "Use up to 7 reference images to generate a video with the latest Kling model.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Use up to 7 reference images to generate a video with the latest Kling model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Omni Image to Video (Pro)_ISO" + }, + "KlingOmniProVideoToVideoNode_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ] + }, + "reference_video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "Video to use as a reference." + } + ] + }, + "keep_original_sound": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + } + }, + "optional": { + "reference_images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Up to 4 additional reference images." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "INT", + { + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ], + "reference_video": [ + "VIDEO", + { + "tooltip": "Video to use as a reference." + } + ], + "keep_original_sound": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "optional": { + "reference_images": [ + "IMAGE", + { + "tooltip": "Up to 4 additional reference images." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model_name", + "prompt", + "aspect_ratio", + "duration", + "reference_video", + "keep_original_sound" + ], + "optional": [ + "reference_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingOmniProVideoToVideoNode_ISO", + "display_name": "Kling Omni Video to Video (Pro)_ISO", + "description": "Use a video and up to 4 reference images to generate a video with the latest Kling model.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "default": 3, + "min": 3, + "max": 10, + "display": "slider" + } + ], + "reference_video": [ + "VIDEO", + { + "optional": false, + "tooltip": "Video to use as a reference." + } + ], + "keep_original_sound": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "reference_images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Up to 4 additional reference images." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingOmniProVideoToVideoNode_ISO", + "display_name": "Kling Omni Video to Video (Pro)_ISO", + "description": "Use a video and up to 4 reference images to generate a video with the latest Kling model.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Use a video and up to 4 reference images to generate a video with the latest Kling model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Omni Video to Video (Pro)_ISO" + }, + "KlingOmniProEditVideoNode_ISO": { + "input_types": { + "required": { + "model_name": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ] + }, + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "Video for editing. The output video length will be the same." + } + ] + }, + "keep_original_sound": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + } + }, + "optional": { + "reference_images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Up to 4 additional reference images." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Kling", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_name": [ + "COMBO", + { + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "video": [ + "VIDEO", + { + "tooltip": "Video for editing. The output video length will be the same." + } + ], + "keep_original_sound": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "optional": { + "reference_images": [ + "IMAGE", + { + "tooltip": "Up to 4 additional reference images." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model_name", + "prompt", + "video", + "keep_original_sound" + ], + "optional": [ + "reference_images" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "KlingOmniProEditVideoNode_ISO", + "display_name": "Kling Omni Edit Video (Pro)_ISO", + "description": "Edit an existing video with the latest model from Kling.", + "python_module": null, + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_name": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "kling-video-o1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A text prompt describing the video content. This can include both positive and negative descriptions.", + "multiline": true + } + ], + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "Video for editing. The output video length will be the same." + } + ], + "keep_original_sound": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "reference_images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Up to 4 additional reference images." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "KlingOmniProEditVideoNode_ISO", + "display_name": "Kling Omni Edit Video (Pro)_ISO", + "description": "Edit an existing video with the latest model from Kling.", + "category": "api node/video/Kling", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Edit an existing video with the latest model from Kling.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Kling Omni Edit Video (Pro)_ISO" + }, + "LtxvApiTextToVideo_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ] + }, + "fps": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ] + } + }, + "optional": { + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/LTXV", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ], + "prompt": [ + "STRING", + { + "default": "", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ], + "resolution": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ], + "fps": [ + "COMBO", + { + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ] + }, + "optional": { + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "duration", + "resolution", + "fps" + ], + "optional": [ + "generate_audio" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LtxvApiTextToVideo_ISO", + "display_name": "LTXV Text To Video_ISO", + "description": "Professional-quality videos with customizable duration and resolution.", + "python_module": null, + "category": "api node/video/LTXV", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ], + "fps": [ + "COMBO", + { + "optional": false, + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LtxvApiTextToVideo_ISO", + "display_name": "LTXV Text To Video_ISO", + "description": "Professional-quality videos with customizable duration and resolution.", + "category": "api node/video/LTXV", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Professional-quality videos with customizable duration and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXV Text To Video_ISO" + }, + "LtxvApiImageToVideo_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ] + }, + "fps": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ] + } + }, + "optional": { + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/LTXV", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "First frame to be used for the video." + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ], + "prompt": [ + "STRING", + { + "default": "", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ], + "resolution": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ], + "fps": [ + "COMBO", + { + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ] + }, + "optional": { + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "model", + "prompt", + "duration", + "resolution", + "fps" + ], + "optional": [ + "generate_audio" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LtxvApiImageToVideo_ISO", + "display_name": "LTXV Image To Video_ISO", + "description": "Professional-quality videos with customizable duration and resolution based on start image.", + "python_module": null, + "category": "api node/video/LTXV", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "First frame to be used for the video." + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "LTX-2 (Pro)", + "LTX-2 (Fast)" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": true + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 8, + "multiselect": false, + "options": [ + 6, + 8, + 10, + 12, + 14, + 16, + 18, + 20 + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "1920x1080", + "2560x1440", + "3840x2160" + ] + } + ], + "fps": [ + "COMBO", + { + "optional": false, + "default": 25, + "multiselect": false, + "options": [ + 25, + 50 + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "When true, the generated video will include AI-generated audio matching the scene.", + "default": false + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LtxvApiImageToVideo_ISO", + "display_name": "LTXV Image To Video_ISO", + "description": "Professional-quality videos with customizable duration and resolution based on start image.", + "category": "api node/video/LTXV", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Professional-quality videos with customizable duration and resolution based on start image.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "LTXV Image To Video_ISO" + }, + "LumaImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "style_image_weight": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Weight of style image. Ignored if no style_image provided.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "optional": { + "image_luma_ref": { + "__pyisolate_tuple__": [ + "LUMA_REF", + { + "tooltip": "Luma Reference node connection to influence generation with input images; up to 4 images can be considered." + } + ] + }, + "style_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Style reference image; only 1 image will be used." + } + ] + }, + "character_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Character reference images; can be a batch of multiple, up to 4 images can be considered." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "style_image_weight": [ + "FLOAT", + { + "tooltip": "Weight of style image. Ignored if no style_image provided.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "optional": { + "image_luma_ref": [ + "LUMA_REF", + { + "tooltip": "Luma Reference node connection to influence generation with input images; up to 4 images can be considered." + } + ], + "style_image": [ + "IMAGE", + { + "tooltip": "Style reference image; only 1 image will be used." + } + ], + "character_image": [ + "IMAGE", + { + "tooltip": "Character reference images; can be a batch of multiple, up to 4 images can be considered." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "aspect_ratio", + "seed", + "style_image_weight" + ], + "optional": [ + "image_luma_ref", + "style_image", + "character_image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaImageNode_ISO", + "display_name": "Luma Text to Image_ISO", + "description": "Generates images synchronously based on prompt and aspect ratio.", + "python_module": null, + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "style_image_weight": [ + "FLOAT", + { + "optional": false, + "tooltip": "Weight of style image. Ignored if no style_image provided.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "image_luma_ref": [ + "LUMA_REF", + { + "optional": true, + "tooltip": "Luma Reference node connection to influence generation with input images; up to 4 images can be considered." + } + ], + "style_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Style reference image; only 1 image will be used." + } + ], + "character_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Character reference images; can be a batch of multiple, up to 4 images can be considered." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LumaImageNode_ISO", + "display_name": "Luma Text to Image_ISO", + "description": "Generates images synchronously based on prompt and aspect ratio.", + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously based on prompt and aspect ratio.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Text to Image_ISO" + }, + "LumaImageModifyNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ] + }, + "image_weight": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Weight of the image; the closer to 1.0, the less the image will be modified.", + "default": 0.1, + "min": 0.0, + "max": 0.98, + "step": 0.01 + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "image_weight": [ + "FLOAT", + { + "tooltip": "Weight of the image; the closer to 1.0, the less the image will be modified.", + "default": 0.1, + "min": 0.0, + "max": 0.98, + "step": 0.01 + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "image_weight", + "model", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaImageModifyNode_ISO", + "display_name": "Luma Image to Image_ISO", + "description": "Modifies images synchronously based on prompt and aspect ratio.", + "python_module": null, + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation", + "default": "", + "multiline": true + } + ], + "image_weight": [ + "FLOAT", + { + "optional": false, + "tooltip": "Weight of the image; the closer to 1.0, the less the image will be modified.", + "default": 0.1, + "min": 0.0, + "max": 0.98, + "step": 0.01 + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "photon-1", + "photon-flash-1" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LumaImageModifyNode_ISO", + "display_name": "Luma Image to Image_ISO", + "description": "Modifies images synchronously based on prompt and aspect ratio.", + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Modifies images synchronously based on prompt and aspect ratio.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Image to Image_ISO" + }, + "LumaVideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ] + }, + "loop": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "luma_concepts": { + "__pyisolate_tuple__": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ], + "resolution": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ], + "loop": [ + "BOOLEAN", + { + "default": false + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "aspect_ratio", + "resolution", + "duration", + "loop", + "seed" + ], + "optional": [ + "luma_concepts" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaVideoNode_ISO", + "display_name": "Luma Text to Video_ISO", + "description": "Generates videos synchronously based on prompt and output_size.", + "python_module": null, + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "default": "16:9", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "4:3", + "3:4", + "21:9", + "9:21" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ], + "loop": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "optional": true, + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LumaVideoNode_ISO", + "display_name": "Luma Text to Video_ISO", + "description": "Generates videos synchronously based on prompt and output_size.", + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos synchronously based on prompt and output_size.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Text to Video_ISO" + }, + "LumaImageToVideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ] + }, + "loop": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "first_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "First frame of generated video." + } + ] + }, + "last_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Last frame of generated video." + } + ] + }, + "luma_concepts": { + "__pyisolate_tuple__": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ], + "resolution": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ], + "loop": [ + "BOOLEAN", + { + "default": false + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "first_image": [ + "IMAGE", + { + "tooltip": "First frame of generated video." + } + ], + "last_image": [ + "IMAGE", + { + "tooltip": "Last frame of generated video." + } + ], + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "resolution", + "duration", + "loop", + "seed" + ], + "optional": [ + "first_image", + "last_image", + "luma_concepts" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaImageToVideoNode_ISO", + "display_name": "Luma Image to Video_ISO", + "description": "Generates videos synchronously based on prompt, input images, and output_size.", + "python_module": null, + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "ray-2", + "ray-flash-2", + "ray-1-6" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "540p", + "multiselect": false, + "options": [ + "540p", + "720p", + "1080p", + "4k" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "5s", + "9s" + ] + } + ], + "loop": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "first_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "First frame of generated video." + } + ], + "last_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Last frame of generated video." + } + ], + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "optional": true, + "tooltip": "Optional Camera Concepts to dictate camera motion via the Luma Concepts node." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "LumaImageToVideoNode_ISO", + "display_name": "Luma Image to Video_ISO", + "description": "Generates videos synchronously based on prompt, input images, and output_size.", + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos synchronously based on prompt, input images, and output_size.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Image to Video_ISO" + }, + "LumaReferenceNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to use as reference." + } + ] + }, + "weight": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Weight of image reference.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "optional": { + "luma_ref": { + "__pyisolate_tuple__": [ + "LUMA_REF", + {} + ] + } + } + }, + "return_types": [ + "LUMA_REF" + ], + "return_names": [ + "luma_ref" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "Image to use as reference." + } + ], + "weight": [ + "FLOAT", + { + "tooltip": "Weight of image reference.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "optional": { + "luma_ref": [ + "LUMA_REF", + {} + ] + } + }, + "input_order": { + "required": [ + "image", + "weight" + ], + "optional": [ + "luma_ref" + ] + }, + "is_input_list": false, + "output": [ + "LUMA_REF" + ], + "output_is_list": [ + false + ], + "output_name": [ + "luma_ref" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaReferenceNode_ISO", + "display_name": "Luma Reference_ISO", + "description": "Holds an image and weight for use with Luma Generate Image node.", + "python_module": null, + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to use as reference." + } + ], + "weight": [ + "FLOAT", + { + "optional": false, + "tooltip": "Weight of image reference.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "luma_ref": [ + "LUMA_REF", + { + "optional": true + } + ] + }, + "output": { + "_0_LUMA_REF_": [ + "LUMA_REF", + { + "display_name": "luma_ref", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LumaReferenceNode_ISO", + "display_name": "Luma Reference_ISO", + "description": "Holds an image and weight for use with Luma Generate Image node.", + "category": "api node/image/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Holds an image and weight for use with Luma Generate Image node.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Reference_ISO" + }, + "LumaConceptsNode_ISO": { + "input_types": { + "required": { + "concept1": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ] + }, + "concept2": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ] + }, + "concept3": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ] + }, + "concept4": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ] + } + }, + "optional": { + "luma_concepts": { + "__pyisolate_tuple__": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to add to the ones chosen here." + } + ] + } + } + }, + "return_types": [ + "LUMA_CONCEPTS" + ], + "return_names": [ + "luma_concepts" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/video/Luma", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "concept1": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept2": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept3": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept4": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ] + }, + "optional": { + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "tooltip": "Optional Camera Concepts to add to the ones chosen here." + } + ] + } + }, + "input_order": { + "required": [ + "concept1", + "concept2", + "concept3", + "concept4" + ], + "optional": [ + "luma_concepts" + ] + }, + "is_input_list": false, + "output": [ + "LUMA_CONCEPTS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "luma_concepts" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "LumaConceptsNode_ISO", + "display_name": "Luma Concepts_ISO", + "description": "Camera Concepts for use with Luma Text to Video and Luma Image to Video nodes.", + "python_module": null, + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "concept1": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept2": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept3": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "concept4": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "truck_left", + "pan_right", + "pedestal_down", + "low_angle", + "pedestal_up", + "selfie", + "pan_left", + "roll_right", + "zoom_in", + "over_the_shoulder", + "orbit_right", + "orbit_left", + "static", + "tiny_planet", + "high_angle", + "bolt_cam", + "dolly_zoom", + "overhead", + "zoom_out", + "handheld", + "roll_left", + "pov", + "aerial_drone", + "push_in", + "crane_down", + "truck_right", + "tilt_down", + "elevator_doors", + "tilt_up", + "ground_level", + "pull_out", + "aerial", + "crane_up", + "eye_level" + ] + } + ], + "luma_concepts": [ + "LUMA_CONCEPTS", + { + "optional": true, + "tooltip": "Optional Camera Concepts to add to the ones chosen here." + } + ] + }, + "output": { + "_0_LUMA_CONCEPTS_": [ + "LUMA_CONCEPTS", + { + "display_name": "luma_concepts", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "LumaConceptsNode_ISO", + "display_name": "Luma Concepts_ISO", + "description": "Camera Concepts for use with Luma Text to Video and Luma Image to Video nodes.", + "category": "api node/video/Luma", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Camera Concepts for use with Luma Text to Video and Luma Image to Video nodes.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Luma Concepts_ISO" + }, + "MinimaxTextToVideoNode_ISO": { + "input_types": { + "required": { + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use for video generation", + "default": "T2V-01", + "multiselect": false, + "options": [ + "T2V-01", + "T2V-01-Director" + ] + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/MiniMax", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt_text": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "tooltip": "Model to use for video generation", + "default": "T2V-01", + "multiselect": false, + "options": [ + "T2V-01", + "T2V-01-Director" + ] + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt_text", + "model" + ], + "optional": [ + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MinimaxTextToVideoNode_ISO", + "display_name": "MiniMax Text to Video_ISO", + "description": "Generates videos synchronously based on a prompt, and optional parameters.", + "python_module": null, + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt_text": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use for video generation", + "default": "T2V-01", + "multiselect": false, + "options": [ + "T2V-01", + "T2V-01-Director" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MinimaxTextToVideoNode_ISO", + "display_name": "MiniMax Text to Video_ISO", + "description": "Generates videos synchronously based on a prompt, and optional parameters.", + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos synchronously based on a prompt, and optional parameters.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "MiniMax Text to Video_ISO" + }, + "MinimaxImageToVideoNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image to use as first frame of video generation" + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use for video generation", + "default": "I2V-01", + "multiselect": false, + "options": [ + "I2V-01-Director", + "I2V-01", + "I2V-01-live" + ] + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/MiniMax", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "Image to use as first frame of video generation" + } + ], + "prompt_text": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "tooltip": "Model to use for video generation", + "default": "I2V-01", + "multiselect": false, + "options": [ + "I2V-01-Director", + "I2V-01", + "I2V-01-live" + ] + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt_text", + "model" + ], + "optional": [ + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MinimaxImageToVideoNode_ISO", + "display_name": "MiniMax Image to Video_ISO", + "description": "Generates videos synchronously based on an image and prompt, and optional parameters.", + "python_module": null, + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "Image to use as first frame of video generation" + } + ], + "prompt_text": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt to guide the video generation", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use for video generation", + "default": "I2V-01", + "multiselect": false, + "options": [ + "I2V-01-Director", + "I2V-01", + "I2V-01-live" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MinimaxImageToVideoNode_ISO", + "display_name": "MiniMax Image to Video_ISO", + "description": "Generates videos synchronously based on an image and prompt, and optional parameters.", + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos synchronously based on an image and prompt, and optional parameters.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "MiniMax Image to Video_ISO" + }, + "MinimaxHailuoVideoNode_ISO": { + "input_types": { + "required": { + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation.", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ] + }, + "first_frame_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional image to use as the first frame to generate a video." + } + ] + }, + "prompt_optimizer": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Optimize prompt to improve generation quality when needed.", + "default": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The length of the output video in seconds.", + "default": 6, + "multiselect": false, + "options": [ + 6, + 10 + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The dimensions of the video display. 1080p is 1920x1080, 768p is 1366x768.", + "default": "768P", + "multiselect": false, + "options": [ + "768P", + "1080P" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/MiniMax", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt_text": [ + "STRING", + { + "tooltip": "Text prompt to guide the video generation.", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ], + "first_frame_image": [ + "IMAGE", + { + "tooltip": "Optional image to use as the first frame to generate a video." + } + ], + "prompt_optimizer": [ + "BOOLEAN", + { + "tooltip": "Optimize prompt to improve generation quality when needed.", + "default": true + } + ], + "duration": [ + "COMBO", + { + "tooltip": "The length of the output video in seconds.", + "default": 6, + "multiselect": false, + "options": [ + 6, + 10 + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "The dimensions of the video display. 1080p is 1920x1080, 768p is 1366x768.", + "default": "768P", + "multiselect": false, + "options": [ + "768P", + "1080P" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt_text" + ], + "optional": [ + "seed", + "first_frame_image", + "prompt_optimizer", + "duration", + "resolution" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MinimaxHailuoVideoNode_ISO", + "display_name": "MiniMax Hailuo Video_ISO", + "description": "Generates videos from prompt, with optional start frame using the new MiniMax Hailuo-02 model.", + "python_module": null, + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt_text": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt to guide the video generation.", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "step": 1, + "control_after_generate": true + } + ], + "first_frame_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional image to use as the first frame to generate a video." + } + ], + "prompt_optimizer": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Optimize prompt to improve generation quality when needed.", + "default": true + } + ], + "duration": [ + "COMBO", + { + "optional": true, + "tooltip": "The length of the output video in seconds.", + "default": 6, + "multiselect": false, + "options": [ + 6, + 10 + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "The dimensions of the video display. 1080p is 1920x1080, 768p is 1366x768.", + "default": "768P", + "multiselect": false, + "options": [ + "768P", + "1080P" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MinimaxHailuoVideoNode_ISO", + "display_name": "MiniMax Hailuo Video_ISO", + "description": "Generates videos from prompt, with optional start frame using the new MiniMax Hailuo-02 model.", + "category": "api node/video/MiniMax", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos from prompt, with optional start frame using the new MiniMax Hailuo-02 model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "MiniMax Hailuo Video_ISO" + }, + "MoonvalleyImg2VideoNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The reference image used to generate the video" + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)" + ] + } + ] + }, + "prompt_adherence": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance scale for generation control", + "default": 4.5, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of denoising steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "The reference image used to generate the video" + } + ], + "prompt": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)" + ] + } + ], + "prompt_adherence": [ + "FLOAT", + { + "tooltip": "Guidance scale for generation control", + "default": 4.5, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of denoising steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "negative_prompt", + "resolution", + "prompt_adherence", + "seed", + "steps" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MoonvalleyImg2VideoNode_ISO", + "display_name": "Moonvalley Marey Image to Video_ISO", + "description": "Moonvalley Marey Image to Video Node", + "python_module": null, + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "The reference image used to generate the video" + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)" + ] + } + ], + "prompt_adherence": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance scale for generation control", + "default": 4.5, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of denoising steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MoonvalleyImg2VideoNode_ISO", + "display_name": "Moonvalley Marey Image to Video_ISO", + "description": "Moonvalley Marey Image to Video Node", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Moonvalley Marey Image to Video Node", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Moonvalley Marey Image to Video_ISO" + }, + "MoonvalleyTxt2VideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)", + "21:9 (2560 x 1080)" + ] + } + ] + }, + "prompt_adherence": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Guidance scale for generation control", + "default": 4.0, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)", + "21:9 (2560 x 1080)" + ] + } + ], + "prompt_adherence": [ + "FLOAT", + { + "tooltip": "Guidance scale for generation control", + "default": 4.0, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "tooltip": "Inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "resolution", + "prompt_adherence", + "seed", + "steps" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MoonvalleyTxt2VideoNode_ISO", + "display_name": "Moonvalley Marey Text to Video_ISO", + "description": "", + "python_module": null, + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "tooltip": "Resolution of the output video", + "default": "16:9 (1920 x 1080)", + "multiselect": false, + "options": [ + "16:9 (1920 x 1080)", + "9:16 (1080 x 1920)", + "1:1 (1152 x 1152)", + "4:3 (1536 x 1152)", + "3:4 (1152 x 1536)", + "21:9 (2560 x 1080)" + ] + } + ], + "prompt_adherence": [ + "FLOAT", + { + "optional": false, + "tooltip": "Guidance scale for generation control", + "default": 4.0, + "min": 1.0, + "max": 20.0, + "step": 1.0 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1 + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MoonvalleyTxt2VideoNode_ISO", + "display_name": "Moonvalley Marey Text to Video_ISO", + "description": "", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Moonvalley Marey Text to Video_ISO" + }, + "MoonvalleyVideo2VideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Describes the video to generate", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": false, + "display": "number" + } + ] + }, + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "The reference video used to generate the output video. Must be at least 5 seconds long. Videos longer than 5s will be automatically trimmed. Only MP4 format supported." + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Number of inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1, + "display": "number" + } + ] + } + }, + "optional": { + "control_type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "Motion Transfer", + "multiselect": false, + "options": [ + "Motion Transfer", + "Pose Transfer" + ] + } + ] + }, + "motion_intensity": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Only used if control_type is 'Motion Transfer'", + "default": 100, + "min": 0, + "max": 100, + "step": 1 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Describes the video to generate", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": false, + "display": "number" + } + ], + "video": [ + "VIDEO", + { + "tooltip": "The reference video used to generate the output video. Must be at least 5 seconds long. Videos longer than 5s will be automatically trimmed. Only MP4 format supported." + } + ], + "steps": [ + "INT", + { + "tooltip": "Number of inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1, + "display": "number" + } + ] + }, + "optional": { + "control_type": [ + "COMBO", + { + "default": "Motion Transfer", + "multiselect": false, + "options": [ + "Motion Transfer", + "Pose Transfer" + ] + } + ], + "motion_intensity": [ + "INT", + { + "tooltip": "Only used if control_type is 'Motion Transfer'", + "default": 100, + "min": 0, + "max": 100, + "step": 1 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "seed", + "video", + "steps" + ], + "optional": [ + "control_type", + "motion_intensity" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "MoonvalleyVideo2VideoNode_ISO", + "display_name": "Moonvalley Marey Video to Video_ISO", + "description": "", + "python_module": null, + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Describes the video to generate", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative prompt text", + "default": " gopro, bright, contrast, static, overexposed, vignette, artifacts, still, noise, texture, scanlines, videogame, 360 camera, VR, transition, flare, saturation, distorted, warped, wide angle, saturated, vibrant, glowing, cross dissolve, cheesy, ugly hands, mutated hands, mutant, disfigured, extra fingers, blown out, horrible, blurry, worst quality, bad, dissolve, melt, fade in, fade out, wobbly, weird, low quality, plastic, stock footage, video camera, boring", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed value", + "default": 9, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": false, + "display": "number" + } + ], + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "The reference video used to generate the output video. Must be at least 5 seconds long. Videos longer than 5s will be automatically trimmed. Only MP4 format supported." + } + ], + "control_type": [ + "COMBO", + { + "optional": true, + "default": "Motion Transfer", + "multiselect": false, + "options": [ + "Motion Transfer", + "Pose Transfer" + ] + } + ], + "motion_intensity": [ + "INT", + { + "optional": true, + "tooltip": "Only used if control_type is 'Motion Transfer'", + "default": 100, + "min": 0, + "max": 100, + "step": 1 + } + ], + "steps": [ + "INT", + { + "optional": false, + "tooltip": "Number of inference steps", + "default": 33, + "min": 1, + "max": 100, + "step": 1, + "display": "number" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "MoonvalleyVideo2VideoNode_ISO", + "display_name": "Moonvalley Marey Video to Video_ISO", + "description": "", + "category": "api node/video/Moonvalley Marey", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Moonvalley Marey Video to Video_ISO" + }, + "OpenAIDalle2_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "256x256", + "512x512", + "1024x1024" + ] + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "size": [ + "COMBO", + { + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "256x256", + "512x512", + "1024x1024" + ] + } + ], + "n": [ + "INT", + { + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt" + ], + "optional": [ + "seed", + "size", + "n", + "image", + "mask" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIDalle2_ISO", + "display_name": "OpenAI DALL\u00b7E 2_ISO", + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 2 endpoint.", + "python_module": null, + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "size": [ + "COMBO", + { + "optional": true, + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "256x256", + "512x512", + "1024x1024" + ] + } + ], + "n": [ + "INT", + { + "optional": true, + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "optional": true, + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "OpenAIDalle2_ISO", + "display_name": "OpenAI DALL\u00b7E 2_ISO", + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 2 endpoint.", + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 2 endpoint.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI DALL\u00b7E 2_ISO" + }, + "OpenAIDalle3_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Image quality", + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "hd" + ] + } + ] + }, + "style": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.", + "default": "natural", + "multiselect": false, + "options": [ + "natural", + "vivid" + ] + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1024x1792", + "1792x1024" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "quality": [ + "COMBO", + { + "tooltip": "Image quality", + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "hd" + ] + } + ], + "style": [ + "COMBO", + { + "tooltip": "Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.", + "default": "natural", + "multiselect": false, + "options": [ + "natural", + "vivid" + ] + } + ], + "size": [ + "COMBO", + { + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1024x1792", + "1792x1024" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt" + ], + "optional": [ + "seed", + "quality", + "style", + "size" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIDalle3_ISO", + "display_name": "OpenAI DALL\u00b7E 3_ISO", + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 3 endpoint.", + "python_module": null, + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for DALL\u00b7E", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "quality": [ + "COMBO", + { + "optional": true, + "tooltip": "Image quality", + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "hd" + ] + } + ], + "style": [ + "COMBO", + { + "optional": true, + "tooltip": "Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images.", + "default": "natural", + "multiselect": false, + "options": [ + "natural", + "vivid" + ] + } + ], + "size": [ + "COMBO", + { + "optional": true, + "tooltip": "Image size", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1024x1792", + "1792x1024" + ] + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "OpenAIDalle3_ISO", + "display_name": "OpenAI DALL\u00b7E 3_ISO", + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 3 endpoint.", + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously via OpenAI's DALL\u00b7E 3 endpoint.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI DALL\u00b7E 3_ISO" + }, + "OpenAIGPTImage1_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for GPT Image 1", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Image quality, affects cost and generation time.", + "default": "low", + "multiselect": false, + "options": [ + "low", + "medium", + "high" + ] + } + ] + }, + "background": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Return image with or without background", + "default": "opaque", + "multiselect": false, + "options": [ + "opaque", + "transparent" + ] + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Image size", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1024x1024", + "1024x1536", + "1536x1024" + ] + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for GPT Image 1", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "seed": [ + "INT", + { + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "quality": [ + "COMBO", + { + "tooltip": "Image quality, affects cost and generation time.", + "default": "low", + "multiselect": false, + "options": [ + "low", + "medium", + "high" + ] + } + ], + "background": [ + "COMBO", + { + "tooltip": "Return image with or without background", + "default": "opaque", + "multiselect": false, + "options": [ + "opaque", + "transparent" + ] + } + ], + "size": [ + "COMBO", + { + "tooltip": "Image size", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1024x1024", + "1024x1536", + "1536x1024" + ] + } + ], + "n": [ + "INT", + { + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt" + ], + "optional": [ + "seed", + "quality", + "background", + "size", + "n", + "image", + "mask" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIGPTImage1_ISO", + "display_name": "OpenAI GPT Image 1_ISO", + "description": "Generates images synchronously via OpenAI's GPT Image 1 endpoint.", + "python_module": null, + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for GPT Image 1", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "not implemented yet in backend", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "quality": [ + "COMBO", + { + "optional": true, + "tooltip": "Image quality, affects cost and generation time.", + "default": "low", + "multiselect": false, + "options": [ + "low", + "medium", + "high" + ] + } + ], + "background": [ + "COMBO", + { + "optional": true, + "tooltip": "Return image with or without background", + "default": "opaque", + "multiselect": false, + "options": [ + "opaque", + "transparent" + ] + } + ], + "size": [ + "COMBO", + { + "optional": true, + "tooltip": "Image size", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "1024x1024", + "1024x1536", + "1536x1024" + ] + } + ], + "n": [ + "INT", + { + "optional": true, + "tooltip": "How many images to generate", + "default": 1, + "min": 1, + "max": 8, + "step": 1, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image for image editing." + } + ], + "mask": [ + "MASK", + { + "optional": true, + "tooltip": "Optional mask for inpainting (white areas will be replaced)" + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "OpenAIGPTImage1_ISO", + "display_name": "OpenAI GPT Image 1_ISO", + "description": "Generates images synchronously via OpenAI's GPT Image 1 endpoint.", + "category": "api node/image/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously via OpenAI's GPT Image 1 endpoint.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI GPT Image 1_ISO" + }, + "OpenAIChatNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text inputs to the model, used to generate a response.", + "default": "", + "multiline": true + } + ] + }, + "persist_context": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "This parameter is deprecated and has no effect.", + "default": false + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The model used to generate the response", + "multiselect": false, + "options": [ + "o4-mini", + "o1", + "o3", + "o1-pro", + "gpt-4o", + "gpt-4.1", + "gpt-4.1-mini", + "gpt-4.1-nano", + "gpt-5", + "gpt-5-mini", + "gpt-5-nano" + ] + } + ] + } + }, + "optional": { + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ] + }, + "files": { + "__pyisolate_tuple__": [ + "OPENAI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the OpenAI Chat Input Files node." + } + ] + }, + "advanced_options": { + "__pyisolate_tuple__": [ + "OPENAI_CHAT_CONFIG", + { + "tooltip": "Optional configuration for the model. Accepts inputs from the OpenAI Chat Advanced Options node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "STRING" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/text/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text inputs to the model, used to generate a response.", + "default": "", + "multiline": true + } + ], + "persist_context": [ + "BOOLEAN", + { + "tooltip": "This parameter is deprecated and has no effect.", + "default": false + } + ], + "model": [ + "COMBO", + { + "tooltip": "The model used to generate the response", + "multiselect": false, + "options": [ + "o4-mini", + "o1", + "o3", + "o1-pro", + "gpt-4o", + "gpt-4.1", + "gpt-4.1-mini", + "gpt-4.1-nano", + "gpt-5", + "gpt-5-mini", + "gpt-5-nano" + ] + } + ] + }, + "optional": { + "images": [ + "IMAGE", + { + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "files": [ + "OPENAI_INPUT_FILES", + { + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the OpenAI Chat Input Files node." + } + ], + "advanced_options": [ + "OPENAI_CHAT_CONFIG", + { + "tooltip": "Optional configuration for the model. Accepts inputs from the OpenAI Chat Advanced Options node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "persist_context", + "model" + ], + "optional": [ + "images", + "files", + "advanced_options" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "STRING" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIChatNode_ISO", + "display_name": "OpenAI ChatGPT_ISO", + "description": "Generate text responses from an OpenAI model.", + "python_module": null, + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text inputs to the model, used to generate a response.", + "default": "", + "multiline": true + } + ], + "persist_context": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "This parameter is deprecated and has no effect.", + "default": false + } + ], + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "The model used to generate the response", + "multiselect": false, + "options": [ + "o4-mini", + "o1", + "o3", + "o1-pro", + "gpt-4o", + "gpt-4.1", + "gpt-4.1-mini", + "gpt-4.1-nano", + "gpt-5", + "gpt-5-mini", + "gpt-5-nano" + ] + } + ], + "images": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional image(s) to use as context for the model. To include multiple images, you can use the Batch Images node." + } + ], + "files": [ + "OPENAI_INPUT_FILES", + { + "optional": true, + "tooltip": "Optional file(s) to use as context for the model. Accepts inputs from the OpenAI Chat Input Files node." + } + ], + "advanced_options": [ + "OPENAI_CHAT_CONFIG", + { + "optional": true, + "tooltip": "Optional configuration for the model. Accepts inputs from the OpenAI Chat Advanced Options node." + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "_0_STRING_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "OpenAIChatNode_ISO", + "display_name": "OpenAI ChatGPT_ISO", + "description": "Generate text responses from an OpenAI model.", + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate text responses from an OpenAI model.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI ChatGPT_ISO" + }, + "OpenAIInputFiles_ISO": { + "input_types": { + "required": { + "file": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ] + } + }, + "optional": { + "OPENAI_INPUT_FILES": { + "__pyisolate_tuple__": [ + "OPENAI_INPUT_FILES", + { + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + } + } + }, + "return_types": [ + "OPENAI_INPUT_FILES" + ], + "return_names": [ + "OPENAI_INPUT_FILES" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/text/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "file": [ + "COMBO", + { + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ] + }, + "optional": { + "OPENAI_INPUT_FILES": [ + "OPENAI_INPUT_FILES", + { + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + } + }, + "input_order": { + "required": [ + "file" + ], + "optional": [ + "OPENAI_INPUT_FILES" + ] + }, + "is_input_list": false, + "output": [ + "OPENAI_INPUT_FILES" + ], + "output_is_list": [ + false + ], + "output_name": [ + "OPENAI_INPUT_FILES" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIInputFiles_ISO", + "display_name": "OpenAI ChatGPT Input Files_ISO", + "description": "Loads and prepares input files (text, pdf, etc.) to include as inputs for the OpenAI Chat Node. The files will be read by the OpenAI model when generating a response. \ud83d\udec8 TIP: Can be chained together with other OpenAI Input File nodes.", + "python_module": null, + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "file": [ + "COMBO", + { + "optional": false, + "tooltip": "Input files to include as context for the model. Only accepts text (.txt) and PDF (.pdf) files for now.", + "multiselect": false, + "options": [] + } + ], + "OPENAI_INPUT_FILES": [ + "OPENAI_INPUT_FILES", + { + "optional": true, + "tooltip": "An optional additional file(s) to batch together with the file loaded from this node. Allows chaining of input files so that a single message can include multiple input files." + } + ] + }, + "output": { + "_0_OPENAI_INPUT_FILES_": [ + "OPENAI_INPUT_FILES", + { + "display_name": "_0_OPENAI_INPUT_FILES_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "OpenAIInputFiles_ISO", + "display_name": "OpenAI ChatGPT Input Files_ISO", + "description": "Loads and prepares input files (text, pdf, etc.) to include as inputs for the OpenAI Chat Node. The files will be read by the OpenAI model when generating a response. \ud83d\udec8 TIP: Can be chained together with other OpenAI Input File nodes.", + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Loads and prepares input files (text, pdf, etc.) to include as inputs for the OpenAI Chat Node. The files will be read by the OpenAI model when generating a response. \ud83d\udec8 TIP: Can be chained together with other OpenAI Input File nodes.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI ChatGPT Input Files_ISO" + }, + "OpenAIChatConfig_ISO": { + "input_types": { + "required": { + "truncation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The truncation strategy to use for the model response. auto: If the context of this response and previous ones exceeds the model's context window size, the model will truncate the response to fit the context window by dropping input items in the middle of the conversation.disabled: If a model response will exceed the context window size for a model, the request will fail with a 400 error", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "disabled" + ] + } + ] + } + }, + "optional": { + "max_output_tokens": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "An upper bound for the number of tokens that can be generated for a response, including visible output tokens", + "default": 4096, + "min": 16, + "max": 16384 + } + ] + }, + "instructions": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Instructions for the model on how to generate the response", + "multiline": true + } + ] + } + } + }, + "return_types": [ + "OPENAI_CHAT_CONFIG" + ], + "return_names": [ + "OPENAI_CHAT_CONFIG" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/text/OpenAI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "truncation": [ + "COMBO", + { + "tooltip": "The truncation strategy to use for the model response. auto: If the context of this response and previous ones exceeds the model's context window size, the model will truncate the response to fit the context window by dropping input items in the middle of the conversation.disabled: If a model response will exceed the context window size for a model, the request will fail with a 400 error", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "disabled" + ] + } + ] + }, + "optional": { + "max_output_tokens": [ + "INT", + { + "tooltip": "An upper bound for the number of tokens that can be generated for a response, including visible output tokens", + "default": 4096, + "min": 16, + "max": 16384 + } + ], + "instructions": [ + "STRING", + { + "tooltip": "Instructions for the model on how to generate the response", + "multiline": true + } + ] + } + }, + "input_order": { + "required": [ + "truncation" + ], + "optional": [ + "max_output_tokens", + "instructions" + ] + }, + "is_input_list": false, + "output": [ + "OPENAI_CHAT_CONFIG" + ], + "output_is_list": [ + false + ], + "output_name": [ + "OPENAI_CHAT_CONFIG" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIChatConfig_ISO", + "display_name": "OpenAI ChatGPT Advanced Options_ISO", + "description": "Allows specifying advanced configuration options for the OpenAI Chat Nodes.", + "python_module": null, + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "truncation": [ + "COMBO", + { + "optional": false, + "tooltip": "The truncation strategy to use for the model response. auto: If the context of this response and previous ones exceeds the model's context window size, the model will truncate the response to fit the context window by dropping input items in the middle of the conversation.disabled: If a model response will exceed the context window size for a model, the request will fail with a 400 error", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "disabled" + ] + } + ], + "max_output_tokens": [ + "INT", + { + "optional": true, + "tooltip": "An upper bound for the number of tokens that can be generated for a response, including visible output tokens", + "default": 4096, + "min": 16, + "max": 16384 + } + ], + "instructions": [ + "STRING", + { + "optional": true, + "tooltip": "Instructions for the model on how to generate the response", + "multiline": true + } + ] + }, + "output": { + "_0_OPENAI_CHAT_CONFIG_": [ + "OPENAI_CHAT_CONFIG", + { + "display_name": "_0_OPENAI_CHAT_CONFIG_", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "OpenAIChatConfig_ISO", + "display_name": "OpenAI ChatGPT Advanced Options_ISO", + "description": "Allows specifying advanced configuration options for the OpenAI Chat Nodes.", + "category": "api node/text/OpenAI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Allows specifying advanced configuration options for the OpenAI Chat Nodes.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI ChatGPT Advanced Options_ISO" + }, + "PikaImageToVideoNode2_2_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The image to convert to video" + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "The image to convert to video" + } + ], + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt_text", + "negative_prompt", + "seed", + "resolution", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PikaImageToVideoNode2_2_ISO", + "display_name": "Pika Image to Video_ISO", + "description": "Sends an image and prompt to the Pika API v2.2 to generate a video.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "The image to convert to video" + } + ], + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PikaImageToVideoNode2_2_ISO", + "display_name": "Pika Image to Video_ISO", + "description": "Sends an image and prompt to the Pika API v2.2 to generate a video.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Sends an image and prompt to the Pika API v2.2 to generate a video.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pika Image to Video_ISO" + }, + "PikaTextToVideoNode2_2_ISO": { + "input_types": { + "required": { + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "aspect_ratio": [ + "FLOAT", + { + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt_text", + "negative_prompt", + "seed", + "resolution", + "duration", + "aspect_ratio" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PikaTextToVideoNode2_2_ISO", + "display_name": "Pika Text to Video_ISO", + "description": "Sends a text prompt to the Pika API v2.2 to generate a video.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "aspect_ratio": [ + "FLOAT", + { + "optional": false, + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PikaTextToVideoNode2_2_ISO", + "display_name": "Pika Text to Video_ISO", + "description": "Sends a text prompt to the Pika API v2.2 to generate a video.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Sends a text prompt to the Pika API v2.2 to generate a video.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pika Text to Video_ISO" + }, + "PikaScenesV2_2_ISO": { + "input_types": { + "required": { + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "ingredients_mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "creative", + "multiselect": false, + "options": [ + "creative", + "precise" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ] + } + }, + "optional": { + "image_ingredient_1": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "image_ingredient_2": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "image_ingredient_3": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "image_ingredient_4": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "image_ingredient_5": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ingredients_mode": [ + "COMBO", + { + "default": "creative", + "multiselect": false, + "options": [ + "creative", + "precise" + ] + } + ], + "aspect_ratio": [ + "FLOAT", + { + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ] + }, + "optional": { + "image_ingredient_1": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_2": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_3": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_4": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_5": [ + "IMAGE", + { + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt_text", + "negative_prompt", + "seed", + "resolution", + "duration", + "ingredients_mode", + "aspect_ratio" + ], + "optional": [ + "image_ingredient_1", + "image_ingredient_2", + "image_ingredient_3", + "image_ingredient_4", + "image_ingredient_5" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PikaScenesV2_2_ISO", + "display_name": "Pika Scenes (Video Image Composition)_ISO", + "description": "Combine your images to create a video with the objects in them. Upload multiple images as ingredients and generate a high-quality video that incorporates all of them.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ingredients_mode": [ + "COMBO", + { + "optional": false, + "default": "creative", + "multiselect": false, + "options": [ + "creative", + "precise" + ] + } + ], + "aspect_ratio": [ + "FLOAT", + { + "optional": false, + "tooltip": "Aspect ratio (width / height)", + "default": 1.7777777777777777, + "min": 0.4, + "max": 2.5, + "step": 0.001 + } + ], + "image_ingredient_1": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_2": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_3": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_4": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image that will be used as ingredient to create a video." + } + ], + "image_ingredient_5": [ + "IMAGE", + { + "optional": true, + "tooltip": "Image that will be used as ingredient to create a video." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PikaScenesV2_2_ISO", + "display_name": "Pika Scenes (Video Image Composition)_ISO", + "description": "Combine your images to create a video with the objects in them. Upload multiple images as ingredients and generate a high-quality video that incorporates all of them.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Combine your images to create a video with the objects in them. Upload multiple images as ingredients and generate a high-quality video that incorporates all of them.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pika Scenes (Video Image Composition)_ISO" + }, + "Pikadditions_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "The video to add an image to." + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The image to add to the video." + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + { + "tooltip": "The video to add an image to." + } + ], + "image": [ + "IMAGE", + { + "tooltip": "The image to add to the video." + } + ], + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "video", + "image", + "prompt_text", + "negative_prompt", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Pikadditions_ISO", + "display_name": "Pikadditions (Video Object Insertion)_ISO", + "description": "Add any object or image into your video. Upload a video and specify what you'd like to add to create a seamlessly integrated result.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "The video to add an image to." + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "The image to add to the video." + } + ], + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Pikadditions_ISO", + "display_name": "Pikadditions (Video Object Insertion)_ISO", + "description": "Add any object or image into your video. Upload a video and specify what you'd like to add to create a seamlessly integrated result.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Add any object or image into your video. Upload a video and specify what you'd like to add to create a seamlessly integrated result.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pikadditions (Video Object Insertion)_ISO" + }, + "Pikaswaps_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + { + "tooltip": "The video to swap an object in." + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The image used to replace the masked object in the video." + } + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + { + "tooltip": "Use the mask to define areas in the video to replace." + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "region_to_modify": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Plaintext description of the object / region to modify.", + "multiline": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + { + "tooltip": "The video to swap an object in." + } + ] + }, + "optional": { + "image": [ + "IMAGE", + { + "tooltip": "The image used to replace the masked object in the video." + } + ], + "mask": [ + "MASK", + { + "tooltip": "Use the mask to define areas in the video to replace." + } + ], + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "region_to_modify": [ + "STRING", + { + "tooltip": "Plaintext description of the object / region to modify.", + "multiline": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "video" + ], + "optional": [ + "image", + "mask", + "prompt_text", + "negative_prompt", + "seed", + "region_to_modify" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Pikaswaps_ISO", + "display_name": "Pika Swaps (Video Object Replacement)_ISO", + "description": "Swap out any object or region of your video with a new image or object. Define areas to replace either with a mask or coordinates.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false, + "tooltip": "The video to swap an object in." + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "The image used to replace the masked object in the video." + } + ], + "mask": [ + "MASK", + { + "optional": true, + "tooltip": "Use the mask to define areas in the video to replace." + } + ], + "prompt_text": [ + "STRING", + { + "optional": true, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "region_to_modify": [ + "STRING", + { + "optional": true, + "tooltip": "Plaintext description of the object / region to modify.", + "multiline": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Pikaswaps_ISO", + "display_name": "Pika Swaps (Video Object Replacement)_ISO", + "description": "Swap out any object or region of your video with a new image or object. Define areas to replace either with a mask or coordinates.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Swap out any object or region of your video with a new image or object. Define areas to replace either with a mask or coordinates.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pika Swaps (Video Object Replacement)_ISO" + }, + "Pikaffects_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The reference image to apply the Pikaffect to." + } + ] + }, + "pikaffect": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "Cake-ify", + "multiselect": false, + "options": [ + "Cake-ify", + "Crumble", + "Crush", + "Decapitate", + "Deflate", + "Dissolve", + "Explode", + "Eye-pop", + "Inflate", + "Levitate", + "Melt", + "Peel", + "Poke", + "Squish", + "Ta-da", + "Tear" + ] + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + { + "tooltip": "The reference image to apply the Pikaffect to." + } + ], + "pikaffect": [ + "COMBO", + { + "default": "Cake-ify", + "multiselect": false, + "options": [ + "Cake-ify", + "Crumble", + "Crush", + "Decapitate", + "Deflate", + "Dissolve", + "Explode", + "Eye-pop", + "Inflate", + "Levitate", + "Melt", + "Peel", + "Poke", + "Squish", + "Ta-da", + "Tear" + ] + } + ], + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "pikaffect", + "prompt_text", + "negative_prompt", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Pikaffects_ISO", + "display_name": "Pikaffects (Video Effects)_ISO", + "description": "Generate a video with a specific Pikaffect. Supported Pikaffects: Cake-ify, Crumble, Crush, Decapitate, Deflate, Dissolve, Explode, Eye-pop, Inflate, Levitate, Melt, Peel, Poke, Squish, Ta-da, Tear", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "The reference image to apply the Pikaffect to." + } + ], + "pikaffect": [ + "COMBO", + { + "optional": false, + "default": "Cake-ify", + "multiselect": false, + "options": [ + "Cake-ify", + "Crumble", + "Crush", + "Decapitate", + "Deflate", + "Dissolve", + "Explode", + "Eye-pop", + "Inflate", + "Levitate", + "Melt", + "Peel", + "Poke", + "Squish", + "Ta-da", + "Tear" + ] + } + ], + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Pikaffects_ISO", + "display_name": "Pikaffects (Video Effects)_ISO", + "description": "Generate a video with a specific Pikaffect. Supported Pikaffects: Cake-ify, Crumble, Crush, Decapitate, Deflate, Dissolve, Explode, Eye-pop, Inflate, Levitate, Melt, Peel, Poke, Squish, Ta-da, Tear", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video with a specific Pikaffect. Supported Pikaffects: Cake-ify, Crumble, Crush, Decapitate, Deflate, Dissolve, Explode, Eye-pop, Inflate, Levitate, Melt, Peel, Poke, Squish, Ta-da, Tear", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pikaffects (Video Effects)_ISO" + }, + "PikaStartEndFrameNode2_2_ISO": { + "input_types": { + "required": { + "image_start": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The first image to combine." + } + ] + }, + "image_end": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "The last image to combine." + } + ] + }, + "prompt_text": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Pika", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image_start": [ + "IMAGE", + { + "tooltip": "The first image to combine." + } + ], + "image_end": [ + "IMAGE", + { + "tooltip": "The last image to combine." + } + ], + "prompt_text": [ + "STRING", + { + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "seed": [ + "INT", + { + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image_start", + "image_end", + "prompt_text", + "negative_prompt", + "seed", + "resolution", + "duration" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PikaStartEndFrameNode2_2_ISO", + "display_name": "Pika Start and End Frame to Video_ISO", + "description": "Generate a video by combining your first and last frame. Upload two images to define the start and end points, and let the AI create a smooth transition between them.", + "python_module": null, + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image_start": [ + "IMAGE", + { + "optional": false, + "tooltip": "The first image to combine." + } + ], + "image_end": [ + "IMAGE", + { + "optional": false, + "tooltip": "The last image to combine." + } + ], + "prompt_text": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": false, + "min": 0, + "max": 4294967295, + "control_after_generate": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "default": "1080p", + "multiselect": false, + "options": [ + "1080p", + "720p" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 5, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PikaStartEndFrameNode2_2_ISO", + "display_name": "Pika Start and End Frame to Video_ISO", + "description": "Generate a video by combining your first and last frame. Upload two images to define the start and end points, and let the AI create a smooth transition between them.", + "category": "api node/video/Pika", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video by combining your first and last frame. Upload two images to define the start and end points, and let the AI create a smooth transition between them.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Pika Start and End Frame to Video_ISO" + }, + "PixverseTextToVideoNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ] + } + ] + }, + "quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ] + }, + "duration_seconds": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ] + }, + "motion_mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ] + }, + "pixverse_template": { + "__pyisolate_tuple__": [ + "PIXVERSE_TEMPLATE", + { + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/PixVerse", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ] + } + ], + "quality": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ], + "pixverse_template": [ + "PIXVERSE_TEMPLATE", + { + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio", + "quality", + "duration_seconds", + "motion_mode", + "seed" + ], + "optional": [ + "negative_prompt", + "pixverse_template" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PixverseTextToVideoNode_ISO", + "display_name": "PixVerse Text to Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "python_module": null, + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "16:9", + "4:3", + "1:1", + "3:4", + "9:16" + ] + } + ], + "quality": [ + "COMBO", + { + "optional": false, + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ], + "pixverse_template": [ + "PIXVERSE_TEMPLATE", + { + "optional": true, + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PixverseTextToVideoNode_ISO", + "display_name": "PixVerse Text to Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos based on prompt and output_size.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PixVerse Text to Video_ISO" + }, + "PixverseImageToVideoNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ] + }, + "quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ] + }, + "duration_seconds": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ] + }, + "motion_mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ] + }, + "pixverse_template": { + "__pyisolate_tuple__": [ + "PIXVERSE_TEMPLATE", + { + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/PixVerse", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "quality": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ], + "pixverse_template": [ + "PIXVERSE_TEMPLATE", + { + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "quality", + "duration_seconds", + "motion_mode", + "seed" + ], + "optional": [ + "negative_prompt", + "pixverse_template" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PixverseImageToVideoNode_ISO", + "display_name": "PixVerse Image to Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "python_module": null, + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "quality": [ + "COMBO", + { + "optional": false, + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ], + "pixverse_template": [ + "PIXVERSE_TEMPLATE", + { + "optional": true, + "tooltip": "An optional template to influence style of generation, created by the PixVerse Template node." + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PixverseImageToVideoNode_ISO", + "display_name": "PixVerse Image to Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos based on prompt and output_size.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PixVerse Image to Video_ISO" + }, + "PixverseTransitionVideoNode_ISO": { + "input_types": { + "required": { + "first_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "last_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ] + }, + "quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ] + }, + "duration_seconds": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ] + }, + "motion_mode": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/PixVerse", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "first_frame": [ + "IMAGE", + {} + ], + "last_frame": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "quality": [ + "COMBO", + { + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "first_frame", + "last_frame", + "prompt", + "quality", + "duration_seconds", + "motion_mode", + "seed" + ], + "optional": [ + "negative_prompt" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PixverseTransitionVideoNode_ISO", + "display_name": "PixVerse Transition Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "python_module": null, + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "first_frame": [ + "IMAGE", + { + "optional": false + } + ], + "last_frame": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the video generation", + "default": "", + "multiline": true + } + ], + "quality": [ + "COMBO", + { + "optional": false, + "default": "540p", + "multiselect": false, + "options": [ + "360p", + "540p", + "720p", + "1080p" + ] + } + ], + "duration_seconds": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 8 + ] + } + ], + "motion_mode": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "normal", + "fast" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed for video generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "control_after_generate": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "multiline": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "PixverseTransitionVideoNode_ISO", + "display_name": "PixVerse Transition Video_ISO", + "description": "Generates videos based on prompt and output_size.", + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos based on prompt and output_size.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PixVerse Transition Video_ISO" + }, + "PixverseTemplateNode_ISO": { + "input_types": { + "required": { + "template": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Microwave", + "Suit Swagger", + "Anything, Robot", + "Subject 3 Fever", + "kiss kiss" + ] + } + ] + } + } + }, + "return_types": [ + "PIXVERSE_TEMPLATE" + ], + "return_names": [ + "pixverse_template" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/video/PixVerse", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "template": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Microwave", + "Suit Swagger", + "Anything, Robot", + "Subject 3 Fever", + "kiss kiss" + ] + } + ] + } + }, + "input_order": { + "required": [ + "template" + ] + }, + "is_input_list": false, + "output": [ + "PIXVERSE_TEMPLATE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "pixverse_template" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "PixverseTemplateNode_ISO", + "display_name": "PixVerse Template_ISO", + "description": "", + "python_module": null, + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "template": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "Microwave", + "Suit Swagger", + "Anything, Robot", + "Subject 3 Fever", + "kiss kiss" + ] + } + ] + }, + "output": { + "_0_PIXVERSE_TEMPLATE_": [ + "PIXVERSE_TEMPLATE", + { + "display_name": "pixverse_template", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "PixverseTemplateNode_ISO", + "display_name": "PixVerse Template_ISO", + "description": "", + "category": "api node/video/PixVerse", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "PixVerse Template_ISO" + }, + "RecraftTextToImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "recraft_style": { + "__pyisolate_tuple__": [ + "RECRAFT_V3_STYLE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "recraft_controls": { + "__pyisolate_tuple__": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ], + "n": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "recraft_style": [ + "RECRAFT_V3_STYLE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "size", + "n", + "seed" + ], + "optional": [ + "recraft_style", + "negative_prompt", + "recraft_controls" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftTextToImageNode_ISO", + "display_name": "Recraft Text to Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "optional": false, + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "recraft_style": [ + "RECRAFT_V3_STYLE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "optional": true, + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftTextToImageNode_ISO", + "display_name": "Recraft Text to Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Text to Image_ISO" + }, + "RecraftImageToImageNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Defines the difference with the original image, should lie in [0, 1], where 0 means almost identical, and 1 means miserable similarity.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "recraft_style": { + "__pyisolate_tuple__": [ + "RECRAFT_V3_STYLE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "recraft_controls": { + "__pyisolate_tuple__": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "strength": [ + "FLOAT", + { + "tooltip": "Defines the difference with the original image, should lie in [0, 1], where 0 means almost identical, and 1 means miserable similarity.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "recraft_style": [ + "RECRAFT_V3_STYLE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "n", + "strength", + "seed" + ], + "optional": [ + "recraft_style", + "negative_prompt", + "recraft_controls" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftImageToImageNode_ISO", + "display_name": "Recraft Image to Image_ISO", + "description": "Modify image based on prompt and strength.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "strength": [ + "FLOAT", + { + "optional": false, + "tooltip": "Defines the difference with the original image, should lie in [0, 1], where 0 means almost identical, and 1 means miserable similarity.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "recraft_style": [ + "RECRAFT_V3_STYLE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "optional": true, + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftImageToImageNode_ISO", + "display_name": "Recraft Image to Image_ISO", + "description": "Modify image based on prompt and strength.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Modify image based on prompt and strength.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Image to Image_ISO" + }, + "RecraftImageInpaintingNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "mask": { + "__pyisolate_tuple__": [ + "MASK", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "recraft_style": { + "__pyisolate_tuple__": [ + "RECRAFT_V3_STYLE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "mask": [ + "MASK", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "recraft_style": [ + "RECRAFT_V3_STYLE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "mask", + "prompt", + "n", + "seed" + ], + "optional": [ + "recraft_style", + "negative_prompt" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftImageInpaintingNode_ISO", + "display_name": "Recraft Image Inpainting_ISO", + "description": "Modify image based on prompt and mask.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "mask": [ + "MASK", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "recraft_style": [ + "RECRAFT_V3_STYLE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftImageInpaintingNode_ISO", + "display_name": "Recraft Image Inpainting_ISO", + "description": "Modify image based on prompt and mask.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Modify image based on prompt and mask.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Image Inpainting_ISO" + }, + "RecraftTextToVectorNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ] + }, + "substyle": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "bold_stroke", + "chemistry", + "colored_stencil", + "contour_pop_art", + "cosmics", + "cutout", + "depressive", + "editorial", + "emotional_flat", + "engraving", + "infographical", + "line_art", + "line_circuit", + "linocut", + "marker_outline", + "mosaic", + "naivector", + "roundish_flat", + "seamless", + "segmented_colors", + "sharp_contrast", + "thin", + "vector_photo", + "vivid_shapes" + ] + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "recraft_controls": { + "__pyisolate_tuple__": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "SVG" + ], + "return_names": [ + "SVG" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "substyle": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "bold_stroke", + "chemistry", + "colored_stencil", + "contour_pop_art", + "cosmics", + "cutout", + "depressive", + "editorial", + "emotional_flat", + "engraving", + "infographical", + "line_art", + "line_circuit", + "linocut", + "marker_outline", + "mosaic", + "naivector", + "roundish_flat", + "seamless", + "segmented_colors", + "sharp_contrast", + "thin", + "vector_photo", + "vivid_shapes" + ] + } + ], + "size": [ + "COMBO", + { + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ], + "n": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "substyle", + "size", + "n", + "seed" + ], + "optional": [ + "negative_prompt", + "recraft_controls" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "SVG" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SVG" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftTextToVectorNode_ISO", + "display_name": "Recraft Text to Vector_ISO", + "description": "Generates SVG synchronously based on prompt and resolution.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "substyle": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "bold_stroke", + "chemistry", + "colored_stencil", + "contour_pop_art", + "cosmics", + "cutout", + "depressive", + "editorial", + "emotional_flat", + "engraving", + "infographical", + "line_art", + "line_circuit", + "linocut", + "marker_outline", + "mosaic", + "naivector", + "roundish_flat", + "seamless", + "segmented_colors", + "sharp_contrast", + "thin", + "vector_photo", + "vivid_shapes" + ] + } + ], + "size": [ + "COMBO", + { + "optional": false, + "tooltip": "The size of the generated image.", + "default": "1024x1024", + "multiselect": false, + "options": [ + "1024x1024", + "1365x1024", + "1024x1365", + "1536x1024", + "1024x1536", + "1820x1024", + "1024x1820", + "1024x2048", + "2048x1024", + "1434x1024", + "1024x1434", + "1024x1280", + "1280x1024", + "1024x1707", + "1707x1024" + ] + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "recraft_controls": [ + "RECRAFT_CONTROLS", + { + "optional": true, + "tooltip": "Optional additional controls over the generation via the Recraft Controls node." + } + ] + }, + "output": { + "_0_SVG_": [ + "SVG", + { + "display_name": "_0_SVG_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftTextToVectorNode_ISO", + "display_name": "Recraft Text to Vector_ISO", + "description": "Generates SVG synchronously based on prompt and resolution.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates SVG synchronously based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Text to Vector_ISO" + }, + "RecraftVectorizeImageNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "SVG" + ], + "return_names": [ + "SVG" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "SVG" + ], + "output_is_list": [ + false + ], + "output_name": [ + "SVG" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftVectorizeImageNode_ISO", + "display_name": "Recraft Vectorize Image_ISO", + "description": "Generates SVG synchronously from an input image.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_SVG_": [ + "SVG", + { + "display_name": "_0_SVG_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftVectorizeImageNode_ISO", + "display_name": "Recraft Vectorize Image_ISO", + "description": "Generates SVG synchronously from an input image.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates SVG synchronously from an input image.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Vectorize Image_ISO" + }, + "RecraftRemoveBackgroundNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE", + "MASK" + ], + "return_names": [ + "IMAGE", + "MASK" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE", + "MASK" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "IMAGE", + "MASK" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "RecraftRemoveBackgroundNode_ISO", + "display_name": "Recraft Remove Background_ISO", + "description": "Remove background from image, and return processed image and mask.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ], + "_1_MASK_": [ + "MASK", + { + "display_name": "_1_MASK_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftRemoveBackgroundNode_ISO", + "display_name": "Recraft Remove Background_ISO", + "description": "Remove background from image, and return processed image and mask.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Remove background from image, and return processed image and mask.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Remove Background_ISO" + }, + "RecraftReplaceBackgroundNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ] + }, + "n": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + } + }, + "optional": { + "recraft_style": { + "__pyisolate_tuple__": [ + "RECRAFT_V3_STYLE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ] + }, + "optional": { + "recraft_style": [ + "RECRAFT_V3_STYLE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "n", + "seed" + ], + "optional": [ + "recraft_style", + "negative_prompt" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftReplaceBackgroundNode_ISO", + "display_name": "Recraft Replace Background_ISO", + "description": "Replace background on image, based on provided prompt.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt for the image generation.", + "default": "", + "multiline": true + } + ], + "n": [ + "INT", + { + "optional": false, + "tooltip": "The number of images to generate.", + "default": 1, + "min": 1, + "max": 6 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 18446744073709551615, + "control_after_generate": true + } + ], + "recraft_style": [ + "RECRAFT_V3_STYLE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "An optional text description of undesired elements on an image.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftReplaceBackgroundNode_ISO", + "display_name": "Recraft Replace Background_ISO", + "description": "Replace background on image, based on provided prompt.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Replace background on image, based on provided prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Replace Background_ISO" + }, + "RecraftCrispUpscaleNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftCrispUpscaleNode_ISO", + "display_name": "Recraft Crisp Upscale Image_ISO", + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018crisp upscale\u2019 tool, increasing image resolution, making the image sharper and cleaner.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftCrispUpscaleNode_ISO", + "display_name": "Recraft Crisp Upscale Image_ISO", + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018crisp upscale\u2019 tool, increasing image resolution, making the image sharper and cleaner.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018crisp upscale\u2019 tool, increasing image resolution, making the image sharper and cleaner.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Crisp Upscale Image_ISO" + }, + "RecraftCreativeUpscaleNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftCreativeUpscaleNode_ISO", + "display_name": "Recraft Creative Upscale Image_ISO", + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018creative upscale\u2019 tool, boosting resolution with a focus on refining small details and faces.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RecraftCreativeUpscaleNode_ISO", + "display_name": "Recraft Creative Upscale Image_ISO", + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018creative upscale\u2019 tool, boosting resolution with a focus on refining small details and faces.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Upscale image synchronously.\nEnhances a given raster image using \u2018creative upscale\u2019 tool, boosting resolution with a focus on refining small details and faces.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Creative Upscale Image_ISO" + }, + "RecraftStyleV3RealisticImage_ISO": { + "input_types": { + "required": { + "substyle": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "b_and_w", + "enterprise", + "evening_light", + "faded_nostalgia", + "forest_life", + "hard_flash", + "hdr", + "motion_blur", + "mystic_naturalism", + "natural_light", + "natural_tones", + "organic_calm", + "real_life_glow", + "retro_realism", + "retro_snapshot", + "studio_portrait", + "urban_drama", + "village_realism", + "warm_folk" + ] + } + ] + } + } + }, + "return_types": [ + "RECRAFT_V3_STYLE" + ], + "return_names": [ + "recraft_style" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "substyle": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "b_and_w", + "enterprise", + "evening_light", + "faded_nostalgia", + "forest_life", + "hard_flash", + "hdr", + "motion_blur", + "mystic_naturalism", + "natural_light", + "natural_tones", + "organic_calm", + "real_life_glow", + "retro_realism", + "retro_snapshot", + "studio_portrait", + "urban_drama", + "village_realism", + "warm_folk" + ] + } + ] + } + }, + "input_order": { + "required": [ + "substyle" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_V3_STYLE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_style" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftStyleV3RealisticImage_ISO", + "display_name": "Recraft Style - Realistic Image_ISO", + "description": "Select realistic_image style and optional substyle.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "substyle": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "b_and_w", + "enterprise", + "evening_light", + "faded_nostalgia", + "forest_life", + "hard_flash", + "hdr", + "motion_blur", + "mystic_naturalism", + "natural_light", + "natural_tones", + "organic_calm", + "real_life_glow", + "retro_realism", + "retro_snapshot", + "studio_portrait", + "urban_drama", + "village_realism", + "warm_folk" + ] + } + ] + }, + "output": { + "_0_RECRAFT_V3_STYLE_": [ + "RECRAFT_V3_STYLE", + { + "display_name": "recraft_style", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftStyleV3RealisticImage_ISO", + "display_name": "Recraft Style - Realistic Image_ISO", + "description": "Select realistic_image style and optional substyle.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Select realistic_image style and optional substyle.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Style - Realistic Image_ISO" + }, + "RecraftStyleV3DigitalIllustration_ISO": { + "input_types": { + "required": { + "substyle": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "2d_art_poster", + "2d_art_poster_2", + "antiquarian", + "bold_fantasy", + "child_book", + "child_books", + "cover", + "crosshatch", + "digital_engraving", + "engraving_color", + "expressionism", + "freehand_details", + "grain", + "grain_20", + "graphic_intensity", + "hand_drawn", + "hand_drawn_outline", + "handmade_3d", + "hard_comics", + "infantile_sketch", + "long_shadow", + "modern_folk", + "multicolor", + "neon_calm", + "noir", + "nostalgic_pastel", + "outline_details", + "pastel_gradient", + "pastel_sketch", + "pixel_art", + "plastic", + "pop_art", + "pop_renaissance", + "seamless", + "street_art", + "tablet_sketch", + "urban_glow", + "urban_sketching", + "vanilla_dreams", + "young_adult_book", + "young_adult_book_2" + ] + } + ] + } + } + }, + "return_types": [ + "RECRAFT_V3_STYLE" + ], + "return_names": [ + "recraft_style" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "substyle": [ + "COMBO", + { + "multiselect": false, + "options": [ + "None", + "2d_art_poster", + "2d_art_poster_2", + "antiquarian", + "bold_fantasy", + "child_book", + "child_books", + "cover", + "crosshatch", + "digital_engraving", + "engraving_color", + "expressionism", + "freehand_details", + "grain", + "grain_20", + "graphic_intensity", + "hand_drawn", + "hand_drawn_outline", + "handmade_3d", + "hard_comics", + "infantile_sketch", + "long_shadow", + "modern_folk", + "multicolor", + "neon_calm", + "noir", + "nostalgic_pastel", + "outline_details", + "pastel_gradient", + "pastel_sketch", + "pixel_art", + "plastic", + "pop_art", + "pop_renaissance", + "seamless", + "street_art", + "tablet_sketch", + "urban_glow", + "urban_sketching", + "vanilla_dreams", + "young_adult_book", + "young_adult_book_2" + ] + } + ] + } + }, + "input_order": { + "required": [ + "substyle" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_V3_STYLE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_style" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftStyleV3DigitalIllustration_ISO", + "display_name": "Recraft Style - Digital Illustration_ISO", + "description": "Select realistic_image style and optional substyle.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "substyle": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "None", + "2d_art_poster", + "2d_art_poster_2", + "antiquarian", + "bold_fantasy", + "child_book", + "child_books", + "cover", + "crosshatch", + "digital_engraving", + "engraving_color", + "expressionism", + "freehand_details", + "grain", + "grain_20", + "graphic_intensity", + "hand_drawn", + "hand_drawn_outline", + "handmade_3d", + "hard_comics", + "infantile_sketch", + "long_shadow", + "modern_folk", + "multicolor", + "neon_calm", + "noir", + "nostalgic_pastel", + "outline_details", + "pastel_gradient", + "pastel_sketch", + "pixel_art", + "plastic", + "pop_art", + "pop_renaissance", + "seamless", + "street_art", + "tablet_sketch", + "urban_glow", + "urban_sketching", + "vanilla_dreams", + "young_adult_book", + "young_adult_book_2" + ] + } + ] + }, + "output": { + "_0_RECRAFT_V3_STYLE_": [ + "RECRAFT_V3_STYLE", + { + "display_name": "recraft_style", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftStyleV3DigitalIllustration_ISO", + "display_name": "Recraft Style - Digital Illustration_ISO", + "description": "Select realistic_image style and optional substyle.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Select realistic_image style and optional substyle.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Style - Digital Illustration_ISO" + }, + "RecraftStyleV3LogoRaster_ISO": { + "input_types": { + "required": { + "substyle": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "emblem_graffiti", + "emblem_pop_art", + "emblem_punk", + "emblem_stamp", + "emblem_vintage" + ] + } + ] + } + } + }, + "return_types": [ + "RECRAFT_V3_STYLE" + ], + "return_names": [ + "recraft_style" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "substyle": [ + "COMBO", + { + "multiselect": false, + "options": [ + "emblem_graffiti", + "emblem_pop_art", + "emblem_punk", + "emblem_stamp", + "emblem_vintage" + ] + } + ] + } + }, + "input_order": { + "required": [ + "substyle" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_V3_STYLE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_style" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftStyleV3LogoRaster_ISO", + "display_name": "Recraft Style - Logo Raster_ISO", + "description": "Select realistic_image style and optional substyle.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "substyle": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "emblem_graffiti", + "emblem_pop_art", + "emblem_punk", + "emblem_stamp", + "emblem_vintage" + ] + } + ] + }, + "output": { + "_0_RECRAFT_V3_STYLE_": [ + "RECRAFT_V3_STYLE", + { + "display_name": "recraft_style", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftStyleV3LogoRaster_ISO", + "display_name": "Recraft Style - Logo Raster_ISO", + "description": "Select realistic_image style and optional substyle.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Select realistic_image style and optional substyle.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Style - Logo Raster_ISO" + }, + "RecraftStyleV3InfiniteStyleLibrary_ISO": { + "input_types": { + "required": { + "style_id": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "UUID of style from Infinite Style Library.", + "default": "", + "multiline": false + } + ] + } + } + }, + "return_types": [ + "RECRAFT_V3_STYLE" + ], + "return_names": [ + "recraft_style" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "style_id": [ + "STRING", + { + "tooltip": "UUID of style from Infinite Style Library.", + "default": "", + "multiline": false + } + ] + } + }, + "input_order": { + "required": [ + "style_id" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_V3_STYLE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_style" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftStyleV3InfiniteStyleLibrary_ISO", + "display_name": "Recraft Style - Infinite Style Library_ISO", + "description": "Select style based on preexisting UUID from Recraft's Infinite Style Library.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "style_id": [ + "STRING", + { + "optional": false, + "tooltip": "UUID of style from Infinite Style Library.", + "default": "", + "multiline": false + } + ] + }, + "output": { + "_0_RECRAFT_V3_STYLE_": [ + "RECRAFT_V3_STYLE", + { + "display_name": "recraft_style", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftStyleV3InfiniteStyleLibrary_ISO", + "display_name": "Recraft Style - Infinite Style Library_ISO", + "description": "Select style based on preexisting UUID from Recraft's Infinite Style Library.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Select style based on preexisting UUID from Recraft's Infinite Style Library.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Style - Infinite Style Library_ISO" + }, + "RecraftColorRGB_ISO": { + "input_types": { + "required": { + "r": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Red value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ] + }, + "g": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Green value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ] + }, + "b": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Blue value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ] + } + }, + "optional": { + "recraft_color": { + "__pyisolate_tuple__": [ + "RECRAFT_COLOR", + {} + ] + } + } + }, + "return_types": [ + "RECRAFT_COLOR" + ], + "return_names": [ + "recraft_color" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "r": [ + "INT", + { + "tooltip": "Red value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ], + "g": [ + "INT", + { + "tooltip": "Green value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ], + "b": [ + "INT", + { + "tooltip": "Blue value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ] + }, + "optional": { + "recraft_color": [ + "RECRAFT_COLOR", + {} + ] + } + }, + "input_order": { + "required": [ + "r", + "g", + "b" + ], + "optional": [ + "recraft_color" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_COLOR" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_color" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftColorRGB_ISO", + "display_name": "Recraft Color RGB_ISO", + "description": "Create Recraft Color by choosing specific RGB values.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "r": [ + "INT", + { + "optional": false, + "tooltip": "Red value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ], + "g": [ + "INT", + { + "optional": false, + "tooltip": "Green value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ], + "b": [ + "INT", + { + "optional": false, + "tooltip": "Blue value of color.", + "default": 0, + "min": 0, + "max": 255 + } + ], + "recraft_color": [ + "RECRAFT_COLOR", + { + "optional": true + } + ] + }, + "output": { + "_0_RECRAFT_COLOR_": [ + "RECRAFT_COLOR", + { + "display_name": "recraft_color", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftColorRGB_ISO", + "display_name": "Recraft Color RGB_ISO", + "description": "Create Recraft Color by choosing specific RGB values.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Create Recraft Color by choosing specific RGB values.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Color RGB_ISO" + }, + "RecraftControls_ISO": { + "input_types": { + "required": {}, + "optional": { + "colors": { + "__pyisolate_tuple__": [ + "RECRAFT_COLOR", + {} + ] + }, + "background_color": { + "__pyisolate_tuple__": [ + "RECRAFT_COLOR", + {} + ] + } + } + }, + "return_types": [ + "RECRAFT_CONTROLS" + ], + "return_names": [ + "recraft_controls" + ], + "function": "EXECUTE_NORMALIZED", + "category": "api node/image/Recraft", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": {}, + "optional": { + "colors": [ + "RECRAFT_COLOR", + {} + ], + "background_color": [ + "RECRAFT_COLOR", + {} + ] + } + }, + "input_order": { + "required": [], + "optional": [ + "colors", + "background_color" + ] + }, + "is_input_list": false, + "output": [ + "RECRAFT_CONTROLS" + ], + "output_is_list": [ + false + ], + "output_name": [ + "recraft_controls" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RecraftControls_ISO", + "display_name": "Recraft Controls_ISO", + "description": "Create Recraft Controls for customizing Recraft generation.", + "python_module": null, + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "colors": [ + "RECRAFT_COLOR", + { + "optional": true + } + ], + "background_color": [ + "RECRAFT_COLOR", + { + "optional": true + } + ] + }, + "output": { + "_0_RECRAFT_CONTROLS_": [ + "RECRAFT_CONTROLS", + { + "display_name": "recraft_controls", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "RecraftControls_ISO", + "display_name": "Recraft Controls_ISO", + "description": "Create Recraft Controls for customizing Recraft generation.", + "category": "api node/image/Recraft", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Create Recraft Controls for customizing Recraft generation.", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Recraft Controls_ISO" + }, + "Rodin3D_Regular_ISO": { + "input_types": { + "required": { + "Images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "Seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "Material_Type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ] + }, + "Polygon_count": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "3D Model Path" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Rodin", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Images": [ + "IMAGE", + {} + ] + }, + "optional": { + "Seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "Images" + ], + "optional": [ + "Seed", + "Material_Type", + "Polygon_count" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "3D Model Path" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Rodin3D_Regular_ISO", + "display_name": "Rodin 3D Generate - Regular Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "python_module": null, + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Images": [ + "IMAGE", + { + "optional": false + } + ], + "Seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "optional": true, + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "optional": true, + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "3D Model Path", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Rodin3D_Regular_ISO", + "display_name": "Rodin 3D Generate - Regular Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate 3D Assets using Rodin API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Rodin 3D Generate - Regular Generate_ISO" + }, + "Rodin3D_Detail_ISO": { + "input_types": { + "required": { + "Images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "Seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "Material_Type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ] + }, + "Polygon_count": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "3D Model Path" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Rodin", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Images": [ + "IMAGE", + {} + ] + }, + "optional": { + "Seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "Images" + ], + "optional": [ + "Seed", + "Material_Type", + "Polygon_count" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "3D Model Path" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Rodin3D_Detail_ISO", + "display_name": "Rodin 3D Generate - Detail Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "python_module": null, + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Images": [ + "IMAGE", + { + "optional": false + } + ], + "Seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "optional": true, + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "optional": true, + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "3D Model Path", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Rodin3D_Detail_ISO", + "display_name": "Rodin 3D Generate - Detail Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate 3D Assets using Rodin API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Rodin 3D Generate - Detail Generate_ISO" + }, + "Rodin3D_Smooth_ISO": { + "input_types": { + "required": { + "Images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "Seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "Material_Type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ] + }, + "Polygon_count": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "3D Model Path" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Rodin", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Images": [ + "IMAGE", + {} + ] + }, + "optional": { + "Seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "Images" + ], + "optional": [ + "Seed", + "Material_Type", + "Polygon_count" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "3D Model Path" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Rodin3D_Smooth_ISO", + "display_name": "Rodin 3D Generate - Smooth Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "python_module": null, + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Images": [ + "IMAGE", + { + "optional": false + } + ], + "Seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "optional": true, + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "optional": true, + "default": "18K-Quad", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "200K-Triangle" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "3D Model Path", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Rodin3D_Smooth_ISO", + "display_name": "Rodin 3D Generate - Smooth Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate 3D Assets using Rodin API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Rodin 3D Generate - Smooth Generate_ISO" + }, + "Rodin3D_Sketch_ISO": { + "input_types": { + "required": { + "Images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "Seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "3D Model Path" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Rodin", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Images": [ + "IMAGE", + {} + ] + }, + "optional": { + "Seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "Images" + ], + "optional": [ + "Seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "3D Model Path" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Rodin3D_Sketch_ISO", + "display_name": "Rodin 3D Generate - Sketch Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "python_module": null, + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Images": [ + "IMAGE", + { + "optional": false + } + ], + "Seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "3D Model Path", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Rodin3D_Sketch_ISO", + "display_name": "Rodin 3D Generate - Sketch Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate 3D Assets using Rodin API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Rodin 3D Generate - Sketch Generate_ISO" + }, + "Rodin3D_Gen2_ISO": { + "input_types": { + "required": { + "Images": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "TAPose": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + }, + "optional": { + "Seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ] + }, + "Material_Type": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ] + }, + "Polygon_count": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "500K-Triangle", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "2K-Triangle", + "20K-Triangle", + "150K-Triangle", + "500K-Triangle" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "STRING" + ], + "return_names": [ + "3D Model Path" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Rodin", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "Images": [ + "IMAGE", + {} + ], + "TAPose": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "optional": { + "Seed": [ + "INT", + { + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "default": "500K-Triangle", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "2K-Triangle", + "20K-Triangle", + "150K-Triangle", + "500K-Triangle" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "Images", + "TAPose" + ], + "optional": [ + "Seed", + "Material_Type", + "Polygon_count" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "STRING" + ], + "output_is_list": [ + false + ], + "output_name": [ + "3D Model Path" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Rodin3D_Gen2_ISO", + "display_name": "Rodin 3D Generate - Gen-2 Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "python_module": null, + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "Images": [ + "IMAGE", + { + "optional": false + } + ], + "Seed": [ + "INT", + { + "optional": true, + "default": 0, + "min": 0, + "max": 65535, + "display": "number" + } + ], + "Material_Type": [ + "COMBO", + { + "optional": true, + "default": "PBR", + "multiselect": false, + "options": [ + "PBR", + "Shaded" + ] + } + ], + "Polygon_count": [ + "COMBO", + { + "optional": true, + "default": "500K-Triangle", + "multiselect": false, + "options": [ + "4K-Quad", + "8K-Quad", + "18K-Quad", + "50K-Quad", + "2K-Triangle", + "20K-Triangle", + "150K-Triangle", + "500K-Triangle" + ] + } + ], + "TAPose": [ + "BOOLEAN", + { + "optional": false, + "default": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "3D Model Path", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Rodin3D_Gen2_ISO", + "display_name": "Rodin 3D Generate - Gen-2 Generate_ISO", + "description": "Generate 3D Assets using Rodin API", + "category": "api node/3d/Rodin", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate 3D Assets using Rodin API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Rodin 3D Generate - Gen-2 Generate_ISO" + }, + "RunwayFirstLastFrameNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ] + }, + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ] + }, + "end_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "End frame to be used for the video. Supported for gen3a_turbo only." + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Runway", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ], + "end_frame": [ + "IMAGE", + { + "tooltip": "End frame to be used for the video. Supported for gen3a_turbo only." + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "start_frame", + "end_frame", + "duration", + "ratio", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RunwayFirstLastFrameNode_ISO", + "display_name": "Runway First-Last-Frame to Video_ISO", + "description": "Upload first and last keyframes, draft a prompt, and generate a video. More complex transitions, such as cases where the Last frame is completely different from the First frame, may benefit from the longer 10s duration. This would give the generation more time to smoothly transition between the two inputs. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/34170748696595-Creating-with-Keyframes-on-Gen-3.", + "python_module": null, + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Start frame to be used for the video" + } + ], + "end_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "End frame to be used for the video. Supported for gen3a_turbo only." + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RunwayFirstLastFrameNode_ISO", + "display_name": "Runway First-Last-Frame to Video_ISO", + "description": "Upload first and last keyframes, draft a prompt, and generate a video. More complex transitions, such as cases where the Last frame is completely different from the First frame, may benefit from the longer 10s duration. This would give the generation more time to smoothly transition between the two inputs. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/34170748696595-Creating-with-Keyframes-on-Gen-3.", + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Upload first and last keyframes, draft a prompt, and generate a video. More complex transitions, such as cases where the Last frame is completely different from the First frame, may benefit from the longer 10s duration. This would give the generation more time to smoothly transition between the two inputs. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/34170748696595-Creating-with-Keyframes-on-Gen-3.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Runway First-Last-Frame to Video_ISO" + }, + "RunwayImageToVideoNodeGen3a_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ] + }, + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Runway", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "start_frame", + "duration", + "ratio", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RunwayImageToVideoNodeGen3a_ISO", + "display_name": "Runway Image to Video (Gen3a Turbo)_ISO", + "description": "Generate a video from a single starting frame using Gen3a Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/33927968552339-Creating-with-Act-One-on-Gen-3-Alpha-and-Turbo.", + "python_module": null, + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Start frame to be used for the video" + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "768:1280", + "1280:768" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RunwayImageToVideoNodeGen3a_ISO", + "display_name": "Runway Image to Video (Gen3a Turbo)_ISO", + "description": "Generate a video from a single starting frame using Gen3a Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/33927968552339-Creating-with-Act-One-on-Gen-3-Alpha-and-Turbo.", + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video from a single starting frame using Gen3a Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/33927968552339-Creating-with-Act-One-on-Gen-3-Alpha-and-Turbo.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Runway Image to Video (Gen3a Turbo)_ISO" + }, + "RunwayImageToVideoNodeGen4_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ] + }, + "start_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1280:720", + "720:1280", + "1104:832", + "832:1104", + "960:960", + "1584:672" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Runway", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "tooltip": "Start frame to be used for the video" + } + ], + "duration": [ + "COMBO", + { + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1280:720", + "720:1280", + "1104:832", + "832:1104", + "960:960", + "1584:672" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "start_frame", + "duration", + "ratio", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RunwayImageToVideoNodeGen4_ISO", + "display_name": "Runway Image to Video (Gen4 Turbo)_ISO", + "description": "Generate a video from a single starting frame using Gen4 Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/37327109429011-Creating-with-Gen-4-Video.", + "python_module": null, + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "start_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Start frame to be used for the video" + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + 5, + 10 + ] + } + ], + "ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "1280:720", + "720:1280", + "1104:832", + "832:1104", + "960:960", + "1584:672" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Random seed for generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RunwayImageToVideoNodeGen4_ISO", + "display_name": "Runway Image to Video (Gen4 Turbo)_ISO", + "description": "Generate a video from a single starting frame using Gen4 Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/37327109429011-Creating-with-Gen-4-Video.", + "category": "api node/video/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video from a single starting frame using Gen4 Turbo model. Before diving in, review these best practices to ensure that your input selections will set your generation up for success: https://help.runwayml.com/hc/en-us/articles/37327109429011-Creating-with-Gen-4-Video.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Runway Image to Video (Gen4 Turbo)_ISO" + }, + "RunwayTextToImageNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ] + }, + "ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920:1080", + "1080:1920", + "1024:1024", + "1360:768", + "1080:1080", + "1168:880", + "1440:1080", + "1080:1440", + "1808:768", + "2112:912" + ] + } + ] + } + }, + "optional": { + "reference_image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide the generation" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Runway", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "ratio": [ + "COMBO", + { + "multiselect": false, + "options": [ + "1920:1080", + "1080:1920", + "1024:1024", + "1360:768", + "1080:1080", + "1168:880", + "1440:1080", + "1080:1440", + "1808:768", + "2112:912" + ] + } + ] + }, + "optional": { + "reference_image": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide the generation" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "ratio" + ], + "optional": [ + "reference_image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "RunwayTextToImageNode_ISO", + "display_name": "Runway Text to Image_ISO", + "description": "Generate an image from a text prompt using Runway's Gen 4 model. You can also include reference image to guide the generation.", + "python_module": null, + "category": "api node/image/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text prompt for the generation", + "default": "", + "multiline": true + } + ], + "ratio": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "1920:1080", + "1080:1920", + "1024:1024", + "1360:768", + "1080:1080", + "1168:880", + "1440:1080", + "1080:1440", + "1808:768", + "2112:912" + ] + } + ], + "reference_image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image to guide the generation" + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "RunwayTextToImageNode_ISO", + "display_name": "Runway Text to Image_ISO", + "description": "Generate an image from a text prompt using Runway's Gen 4 model. You can also include reference image to guide the generation.", + "category": "api node/image/Runway", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate an image from a text prompt using Runway's Gen 4 model. You can also include reference image to guide the generation.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Runway Text to Image_ISO" + }, + "OpenAIVideoSora2_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "sora-2", + "multiselect": false, + "options": [ + "sora-2", + "sora-2-pro" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Guiding text; may be empty if an input image is present.", + "default": "", + "multiline": true + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "1280x720", + "multiselect": false, + "options": [ + "720x1280", + "1280x720", + "1024x1792", + "1792x1024" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 4, + 8, + 12 + ] + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Sora", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "default": "sora-2", + "multiselect": false, + "options": [ + "sora-2", + "sora-2-pro" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Guiding text; may be empty if an input image is present.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "default": "1280x720", + "multiselect": false, + "options": [ + "720x1280", + "1280x720", + "1024x1792", + "1792x1024" + ] + } + ], + "duration": [ + "COMBO", + { + "default": 8, + "multiselect": false, + "options": [ + 4, + 8, + 12 + ] + } + ] + }, + "optional": { + "image": [ + "IMAGE", + {} + ], + "seed": [ + "INT", + { + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "size", + "duration" + ], + "optional": [ + "image", + "seed" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "OpenAIVideoSora2_ISO", + "display_name": "OpenAI Sora - Video_ISO", + "description": "OpenAI video and audio generation.", + "python_module": null, + "category": "api node/video/Sora", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "default": "sora-2", + "multiselect": false, + "options": [ + "sora-2", + "sora-2-pro" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Guiding text; may be empty if an input image is present.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "optional": false, + "default": "1280x720", + "multiselect": false, + "options": [ + "720x1280", + "1280x720", + "1024x1792", + "1792x1024" + ] + } + ], + "duration": [ + "COMBO", + { + "optional": false, + "default": 8, + "multiselect": false, + "options": [ + 4, + 8, + 12 + ] + } + ], + "image": [ + "IMAGE", + { + "optional": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to determine if node should re-run; actual results are nondeterministic regardless of seed.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "OpenAIVideoSora2_ISO", + "display_name": "OpenAI Sora - Video_ISO", + "description": "OpenAI video and audio generation.", + "category": "api node/video/Sora", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "OpenAI video and audio generation.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "OpenAI Sora - Video_ISO" + }, + "StabilityStableImageUltraNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defineselements, colors, and subjects will lead to better results. To control the weight of a given word use the format `(word:weight)`,where `word` is the word you'd like to control the weight of and `weight`is a value between 0 and 1. For example: `The sky was a crisp (blue:0.3) and (green:0.8)`would convey a sky that was blue and green, but more green than blue.", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ] + }, + "style_preset": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A blurb of text describing what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "image_denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defineselements, colors, and subjects will lead to better results. To control the weight of a given word use the format `(word:weight)`,where `word` is the word you'd like to control the weight of and `weight`is a value between 0 and 1. For example: `The sky was a crisp (blue:0.3) and (green:0.8)`would convey a sky that was blue and green, but more green than blue.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ], + "style_preset": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "optional": { + "image": [ + "IMAGE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "A blurb of text describing what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "image_denoise": [ + "FLOAT", + { + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio", + "style_preset", + "seed" + ], + "optional": [ + "image", + "negative_prompt", + "image_denoise" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityStableImageUltraNode_ISO", + "display_name": "Stability AI Stable Image Ultra_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "python_module": null, + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defineselements, colors, and subjects will lead to better results. To control the weight of a given word use the format `(word:weight)`,where `word` is the word you'd like to control the weight of and `weight`is a value between 0 and 1. For example: `The sky was a crisp (blue:0.3) and (green:0.8)`would convey a sky that was blue and green, but more green than blue.", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ], + "style_preset": [ + "COMBO", + { + "optional": false, + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "A blurb of text describing what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "image_denoise": [ + "FLOAT", + { + "optional": true, + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityStableImageUltraNode_ISO", + "display_name": "Stability AI Stable Image Ultra_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Stable Image Ultra_ISO" + }, + "StabilityStableImageSD_3_5Node_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "sd3.5-large", + "sd3.5-medium" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ] + }, + "style_preset": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ] + }, + "cfg_scale": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "How strictly the diffusion process adheres to the prompt text (higher values keep your image closer to your prompt)", + "default": 4.0, + "min": 1.0, + "max": 10.0, + "step": 0.1 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "optional": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "image_denoise": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "sd3.5-large", + "sd3.5-medium" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ], + "style_preset": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "cfg_scale": [ + "FLOAT", + { + "tooltip": "How strictly the diffusion process adheres to the prompt text (higher values keep your image closer to your prompt)", + "default": 4.0, + "min": 1.0, + "max": 10.0, + "step": 0.1 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "optional": { + "image": [ + "IMAGE", + {} + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "image_denoise": [ + "FLOAT", + { + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "model", + "aspect_ratio", + "style_preset", + "cfg_scale", + "seed" + ], + "optional": [ + "image", + "negative_prompt", + "image_denoise" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityStableImageSD_3_5Node_ISO", + "display_name": "Stability AI Stable Diffusion 3.5 Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "python_module": null, + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "sd3.5-large", + "sd3.5-medium" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "Aspect ratio of generated image.", + "default": "1:1", + "multiselect": false, + "options": [ + "1:1", + "16:9", + "9:16", + "3:2", + "2:3", + "5:4", + "4:5", + "21:9", + "9:21" + ] + } + ], + "style_preset": [ + "COMBO", + { + "optional": false, + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "cfg_scale": [ + "FLOAT", + { + "optional": false, + "tooltip": "How strictly the diffusion process adheres to the prompt text (higher values keep your image closer to your prompt)", + "default": 4.0, + "min": 1.0, + "max": 10.0, + "step": 0.1 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ], + "image_denoise": [ + "FLOAT", + { + "optional": true, + "tooltip": "Denoise of input image; 0.0 yields image identical to input, 1.0 is as if no image was provided at all.", + "default": 0.5, + "min": 0.0, + "max": 1.0, + "step": 0.01 + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityStableImageSD_3_5Node_ISO", + "display_name": "Stability AI Stable Diffusion 3.5 Image_ISO", + "description": "Generates images synchronously based on prompt and resolution.", + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates images synchronously based on prompt and resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Stable Diffusion 3.5 Image_ISO" + }, + "StabilityUpscaleConservativeNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ] + }, + "creativity": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.35, + "min": 0.2, + "max": 0.5, + "step": 0.01 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "creativity": [ + "FLOAT", + { + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.35, + "min": 0.2, + "max": 0.5, + "step": 0.01 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "creativity", + "seed" + ], + "optional": [ + "negative_prompt" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityUpscaleConservativeNode_ISO", + "display_name": "Stability AI Upscale Conservative_ISO", + "description": "Upscale image with minimal alterations to 4K resolution.", + "python_module": null, + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "creativity": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.35, + "min": 0.2, + "max": 0.5, + "step": 0.01 + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityUpscaleConservativeNode_ISO", + "display_name": "Stability AI Upscale Conservative_ISO", + "description": "Upscale image with minimal alterations to 4K resolution.", + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Upscale image with minimal alterations to 4K resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Upscale Conservative_ISO" + }, + "StabilityUpscaleCreativeNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ] + }, + "creativity": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.3, + "min": 0.1, + "max": 0.5, + "step": 0.01 + } + ] + }, + "style_preset": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "creativity": [ + "FLOAT", + { + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.3, + "min": 0.1, + "max": 0.5, + "step": 0.01 + } + ], + "style_preset": [ + "COMBO", + { + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image", + "prompt", + "creativity", + "style_preset", + "seed" + ], + "optional": [ + "negative_prompt" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityUpscaleCreativeNode_ISO", + "display_name": "Stability AI Upscale Creative_ISO", + "description": "Upscale image with minimal alterations to 4K resolution.", + "python_module": null, + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "What you wish to see in the output image. A strong, descriptive prompt that clearly defines elements, colors, and subjects will lead to better results.", + "default": "", + "multiline": true + } + ], + "creativity": [ + "FLOAT", + { + "optional": false, + "tooltip": "Controls the likelihood of creating additional details not heavily conditioned by the init image.", + "default": 0.3, + "min": 0.1, + "max": 0.5, + "step": 0.01 + } + ], + "style_preset": [ + "COMBO", + { + "optional": false, + "tooltip": "Optional desired style of generated image.", + "multiselect": false, + "options": [ + "None", + "3d-model", + "analog-film", + "anime", + "cinematic", + "comic-book", + "digital-art", + "enhance", + "fantasy-art", + "isometric", + "line-art", + "low-poly", + "modeling-compound", + "neon-punk", + "origami", + "photographic", + "pixel-art", + "tile-texture" + ] + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "The random seed used for creating the noise.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Keywords of what you do not wish to see in the output image. This is an advanced feature.", + "default": "", + "forceInput": true, + "multiline": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityUpscaleCreativeNode_ISO", + "display_name": "Stability AI Upscale Creative_ISO", + "description": "Upscale image with minimal alterations to 4K resolution.", + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Upscale image with minimal alterations to 4K resolution.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Upscale Creative_ISO" + }, + "StabilityUpscaleFastNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityUpscaleFastNode_ISO", + "display_name": "Stability AI Upscale Fast_ISO", + "description": "Quickly upscales an image via Stability API call to 4x its original size; intended for upscaling low-quality/compressed images.", + "python_module": null, + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityUpscaleFastNode_ISO", + "display_name": "Stability AI Upscale Fast_ISO", + "description": "Quickly upscales an image via Stability API call to 4x its original size; intended for upscaling low-quality/compressed images.", + "category": "api node/image/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Quickly upscales an image via Stability API call to 4x its original size; intended for upscaling low-quality/compressed images.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Upscale Fast_ISO" + }, + "StabilityTextToAudio_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "AUDIO" + ], + "return_names": [ + "AUDIO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/audio/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + }, + "optional": { + "duration": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt" + ], + "optional": [ + "duration", + "seed", + "steps" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "AUDIO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "AUDIO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityTextToAudio_ISO", + "display_name": "Stability AI Text To Audio_ISO", + "description": "Generates high-quality music and sound effects from text descriptions.", + "python_module": null, + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": true + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "optional": true, + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ] + }, + "output": { + "_0_AUDIO_": [ + "AUDIO", + { + "display_name": "_0_AUDIO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityTextToAudio_ISO", + "display_name": "Stability AI Text To Audio_ISO", + "description": "Generates high-quality music and sound effects from text descriptions.", + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates high-quality music and sound effects from text descriptions.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Text To Audio_ISO" + }, + "StabilityAudioToAudio_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ] + } + }, + "optional": { + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ] + }, + "strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Parameter controls how much influence the audio parameter has on the generated audio.", + "default": 1, + "min": 0.01, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "AUDIO" + ], + "return_names": [ + "AUDIO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/audio/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "default": "", + "multiline": true + } + ], + "audio": [ + "AUDIO", + { + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ] + }, + "optional": { + "duration": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ], + "strength": [ + "FLOAT", + { + "tooltip": "Parameter controls how much influence the audio parameter has on the generated audio.", + "default": 1, + "min": 0.01, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "audio" + ], + "optional": [ + "duration", + "seed", + "steps", + "strength" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "AUDIO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "AUDIO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityAudioToAudio_ISO", + "display_name": "Stability AI Audio To Audio_ISO", + "description": "Transforms existing audio samples into new high-quality compositions using text instructions.", + "python_module": null, + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": true + } + ], + "audio": [ + "AUDIO", + { + "optional": false, + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "optional": true, + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ], + "strength": [ + "FLOAT", + { + "optional": true, + "tooltip": "Parameter controls how much influence the audio parameter has on the generated audio.", + "default": 1, + "min": 0.01, + "max": 1.0, + "step": 0.01, + "display": "slider" + } + ] + }, + "output": { + "_0_AUDIO_": [ + "AUDIO", + { + "display_name": "_0_AUDIO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityAudioToAudio_ISO", + "display_name": "Stability AI Audio To Audio_ISO", + "description": "Transforms existing audio samples into new high-quality compositions using text instructions.", + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Transforms existing audio samples into new high-quality compositions using text instructions.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Audio To Audio_ISO" + }, + "StabilityAudioInpaint_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "default": "", + "multiline": true + } + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ] + } + }, + "optional": { + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "steps": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ] + }, + "mask_start": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 30, + "min": 0, + "max": 190, + "step": 1 + } + ] + }, + "mask_end": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 190, + "min": 0, + "max": 190, + "step": 1 + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "AUDIO" + ], + "return_names": [ + "AUDIO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/audio/Stability AI", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "default": "", + "multiline": true + } + ], + "audio": [ + "AUDIO", + { + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ] + }, + "optional": { + "duration": [ + "INT", + { + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ], + "mask_start": [ + "INT", + { + "default": 30, + "min": 0, + "max": 190, + "step": 1 + } + ], + "mask_end": [ + "INT", + { + "default": 190, + "min": 0, + "max": 190, + "step": 1 + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt", + "audio" + ], + "optional": [ + "duration", + "seed", + "steps", + "mask_start", + "mask_end" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "AUDIO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "AUDIO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "StabilityAudioInpaint_ISO", + "display_name": "Stability AI Audio Inpaint_ISO", + "description": "Transforms part of existing audio sample using text instructions.", + "python_module": null, + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "stable-audio-2.5" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "default": "", + "multiline": true + } + ], + "audio": [ + "AUDIO", + { + "optional": false, + "tooltip": "Audio must be between 6 and 190 seconds long." + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Controls the duration in seconds of the generated audio.", + "default": 190, + "min": 1, + "max": 190, + "step": 1 + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "The random seed used for generation.", + "default": 0, + "min": 0, + "max": 4294967294, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "steps": [ + "INT", + { + "optional": true, + "tooltip": "Controls the number of sampling steps.", + "default": 8, + "min": 4, + "max": 8, + "step": 1 + } + ], + "mask_start": [ + "INT", + { + "optional": true, + "default": 30, + "min": 0, + "max": 190, + "step": 1 + } + ], + "mask_end": [ + "INT", + { + "optional": true, + "default": 190, + "min": 0, + "max": 190, + "step": 1 + } + ] + }, + "output": { + "_0_AUDIO_": [ + "AUDIO", + { + "display_name": "_0_AUDIO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "StabilityAudioInpaint_ISO", + "display_name": "Stability AI Audio Inpaint_ISO", + "description": "Transforms part of existing audio sample using text instructions.", + "category": "api node/audio/Stability AI", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Transforms part of existing audio sample using text instructions.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Stability AI Audio Inpaint_ISO" + }, + "TopazImageEnhance_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Reimagine" + ] + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Optional text prompt for creative upscaling guidance.", + "default": "", + "multiline": true + } + ] + }, + "subject_detection": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "All", + "Foreground", + "Background" + ] + } + ] + }, + "face_enhancement": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Enhance faces (if present) during processing.", + "default": true + } + ] + }, + "face_enhancement_creativity": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Set the creativity level for face enhancement.", + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ] + }, + "face_enhancement_strength": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Controls how sharp enhanced faces are relative to the background.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ] + }, + "crop_to_fill": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "By default, the image is letterboxed when the output aspect ratio differs. Enable to crop the image to fill the output dimensions.", + "default": false + } + ] + }, + "output_width": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Zero value means to calculate automatically (usually it will be original size or output_height if specified).", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ] + }, + "output_height": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Zero value means to output in the same height as original or output width.", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ] + }, + "creativity": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 3, + "min": 1, + "max": 9, + "step": 1, + "display": "slider" + } + ] + }, + "face_preservation": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Preserve subjects' facial identity.", + "default": true + } + ] + }, + "color_preservation": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Preserve the original colors.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Topaz", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Reimagine" + ] + } + ], + "image": [ + "IMAGE", + {} + ] + }, + "optional": { + "prompt": [ + "STRING", + { + "tooltip": "Optional text prompt for creative upscaling guidance.", + "default": "", + "multiline": true + } + ], + "subject_detection": [ + "COMBO", + { + "multiselect": false, + "options": [ + "All", + "Foreground", + "Background" + ] + } + ], + "face_enhancement": [ + "BOOLEAN", + { + "tooltip": "Enhance faces (if present) during processing.", + "default": true + } + ], + "face_enhancement_creativity": [ + "FLOAT", + { + "tooltip": "Set the creativity level for face enhancement.", + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ], + "face_enhancement_strength": [ + "FLOAT", + { + "tooltip": "Controls how sharp enhanced faces are relative to the background.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ], + "crop_to_fill": [ + "BOOLEAN", + { + "tooltip": "By default, the image is letterboxed when the output aspect ratio differs. Enable to crop the image to fill the output dimensions.", + "default": false + } + ], + "output_width": [ + "INT", + { + "tooltip": "Zero value means to calculate automatically (usually it will be original size or output_height if specified).", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ], + "output_height": [ + "INT", + { + "tooltip": "Zero value means to output in the same height as original or output width.", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ], + "creativity": [ + "INT", + { + "default": 3, + "min": 1, + "max": 9, + "step": 1, + "display": "slider" + } + ], + "face_preservation": [ + "BOOLEAN", + { + "tooltip": "Preserve subjects' facial identity.", + "default": true + } + ], + "color_preservation": [ + "BOOLEAN", + { + "tooltip": "Preserve the original colors.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "image" + ], + "optional": [ + "prompt", + "subject_detection", + "face_enhancement", + "face_enhancement_creativity", + "face_enhancement_strength", + "crop_to_fill", + "output_width", + "output_height", + "creativity", + "face_preservation", + "color_preservation" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TopazImageEnhance_ISO", + "display_name": "Topaz Image Enhance_ISO", + "description": "Industry-standard upscaling and image enhancement.", + "python_module": null, + "category": "api node/image/Topaz", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "Reimagine" + ] + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Optional text prompt for creative upscaling guidance.", + "default": "", + "multiline": true + } + ], + "subject_detection": [ + "COMBO", + { + "optional": true, + "multiselect": false, + "options": [ + "All", + "Foreground", + "Background" + ] + } + ], + "face_enhancement": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Enhance faces (if present) during processing.", + "default": true + } + ], + "face_enhancement_creativity": [ + "FLOAT", + { + "optional": true, + "tooltip": "Set the creativity level for face enhancement.", + "default": 0.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ], + "face_enhancement_strength": [ + "FLOAT", + { + "optional": true, + "tooltip": "Controls how sharp enhanced faces are relative to the background.", + "default": 1.0, + "min": 0.0, + "max": 1.0, + "step": 0.01, + "display": "number" + } + ], + "crop_to_fill": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "By default, the image is letterboxed when the output aspect ratio differs. Enable to crop the image to fill the output dimensions.", + "default": false + } + ], + "output_width": [ + "INT", + { + "optional": true, + "tooltip": "Zero value means to calculate automatically (usually it will be original size or output_height if specified).", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ], + "output_height": [ + "INT", + { + "optional": true, + "tooltip": "Zero value means to output in the same height as original or output width.", + "default": 0, + "min": 0, + "max": 32000, + "step": 1, + "display": "number" + } + ], + "creativity": [ + "INT", + { + "optional": true, + "default": 3, + "min": 1, + "max": 9, + "step": 1, + "display": "slider" + } + ], + "face_preservation": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Preserve subjects' facial identity.", + "default": true + } + ], + "color_preservation": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Preserve the original colors.", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "TopazImageEnhance_ISO", + "display_name": "Topaz Image Enhance_ISO", + "description": "Industry-standard upscaling and image enhancement.", + "category": "api node/image/Topaz", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Industry-standard upscaling and image enhancement.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Topaz Image Enhance_ISO" + }, + "TopazVideoEnhance_ISO": { + "input_types": { + "required": { + "video": { + "__pyisolate_tuple__": [ + "VIDEO", + {} + ] + }, + "upscaler_enabled": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "upscaler_model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Starlight (Astra) Fast", + "Starlight (Astra) Creative" + ] + } + ] + }, + "upscaler_resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "FullHD (1080p)", + "4K (2160p)" + ] + } + ] + } + }, + "optional": { + "upscaler_creativity": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Creativity level (applies only to Starlight (Astra) Creative).", + "default": "low", + "multiselect": false, + "options": [ + "low", + "middle", + "high" + ] + } + ] + }, + "interpolation_enabled": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "interpolation_model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "apo-8", + "multiselect": false, + "options": [ + "apo-8" + ] + } + ] + }, + "interpolation_slowmo": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Slow-motion factor applied to the input video. For example, 2 makes the output twice as slow and doubles the duration.", + "default": 1, + "min": 1, + "max": 16, + "display": "number" + } + ] + }, + "interpolation_frame_rate": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Output frame rate.", + "default": 60, + "min": 15, + "max": 240, + "display": "number" + } + ] + }, + "interpolation_duplicate": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Analyze the input for duplicate frames and remove them.", + "default": false + } + ] + }, + "interpolation_duplicate_threshold": { + "__pyisolate_tuple__": [ + "FLOAT", + { + "tooltip": "Detection sensitivity for duplicate frames.", + "default": 0.01, + "min": 0.001, + "max": 0.1, + "step": 0.001, + "display": "number" + } + ] + }, + "dynamic_compression_level": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "CQP level.", + "default": "Low", + "multiselect": false, + "options": [ + "Low", + "Mid", + "High" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Topaz", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "video": [ + "VIDEO", + {} + ], + "upscaler_enabled": [ + "BOOLEAN", + { + "default": true + } + ], + "upscaler_model": [ + "COMBO", + { + "multiselect": false, + "options": [ + "Starlight (Astra) Fast", + "Starlight (Astra) Creative" + ] + } + ], + "upscaler_resolution": [ + "COMBO", + { + "multiselect": false, + "options": [ + "FullHD (1080p)", + "4K (2160p)" + ] + } + ] + }, + "optional": { + "upscaler_creativity": [ + "COMBO", + { + "tooltip": "Creativity level (applies only to Starlight (Astra) Creative).", + "default": "low", + "multiselect": false, + "options": [ + "low", + "middle", + "high" + ] + } + ], + "interpolation_enabled": [ + "BOOLEAN", + { + "default": false + } + ], + "interpolation_model": [ + "COMBO", + { + "default": "apo-8", + "multiselect": false, + "options": [ + "apo-8" + ] + } + ], + "interpolation_slowmo": [ + "INT", + { + "tooltip": "Slow-motion factor applied to the input video. For example, 2 makes the output twice as slow and doubles the duration.", + "default": 1, + "min": 1, + "max": 16, + "display": "number" + } + ], + "interpolation_frame_rate": [ + "INT", + { + "tooltip": "Output frame rate.", + "default": 60, + "min": 15, + "max": 240, + "display": "number" + } + ], + "interpolation_duplicate": [ + "BOOLEAN", + { + "tooltip": "Analyze the input for duplicate frames and remove them.", + "default": false + } + ], + "interpolation_duplicate_threshold": [ + "FLOAT", + { + "tooltip": "Detection sensitivity for duplicate frames.", + "default": 0.01, + "min": 0.001, + "max": 0.1, + "step": 0.001, + "display": "number" + } + ], + "dynamic_compression_level": [ + "COMBO", + { + "tooltip": "CQP level.", + "default": "Low", + "multiselect": false, + "options": [ + "Low", + "Mid", + "High" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "video", + "upscaler_enabled", + "upscaler_model", + "upscaler_resolution" + ], + "optional": [ + "upscaler_creativity", + "interpolation_enabled", + "interpolation_model", + "interpolation_slowmo", + "interpolation_frame_rate", + "interpolation_duplicate", + "interpolation_duplicate_threshold", + "dynamic_compression_level" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "TopazVideoEnhance_ISO", + "display_name": "Topaz Video Enhance_ISO", + "description": "Breathe new life into video with powerful upscaling and recovery technology.", + "python_module": null, + "category": "api node/video/Topaz", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "video": [ + "VIDEO", + { + "optional": false + } + ], + "upscaler_enabled": [ + "BOOLEAN", + { + "optional": false, + "default": true + } + ], + "upscaler_model": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "Starlight (Astra) Fast", + "Starlight (Astra) Creative" + ] + } + ], + "upscaler_resolution": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "FullHD (1080p)", + "4K (2160p)" + ] + } + ], + "upscaler_creativity": [ + "COMBO", + { + "optional": true, + "tooltip": "Creativity level (applies only to Starlight (Astra) Creative).", + "default": "low", + "multiselect": false, + "options": [ + "low", + "middle", + "high" + ] + } + ], + "interpolation_enabled": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ], + "interpolation_model": [ + "COMBO", + { + "optional": true, + "default": "apo-8", + "multiselect": false, + "options": [ + "apo-8" + ] + } + ], + "interpolation_slowmo": [ + "INT", + { + "optional": true, + "tooltip": "Slow-motion factor applied to the input video. For example, 2 makes the output twice as slow and doubles the duration.", + "default": 1, + "min": 1, + "max": 16, + "display": "number" + } + ], + "interpolation_frame_rate": [ + "INT", + { + "optional": true, + "tooltip": "Output frame rate.", + "default": 60, + "min": 15, + "max": 240, + "display": "number" + } + ], + "interpolation_duplicate": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Analyze the input for duplicate frames and remove them.", + "default": false + } + ], + "interpolation_duplicate_threshold": [ + "FLOAT", + { + "optional": true, + "tooltip": "Detection sensitivity for duplicate frames.", + "default": 0.01, + "min": 0.001, + "max": 0.1, + "step": 0.001, + "display": "number" + } + ], + "dynamic_compression_level": [ + "COMBO", + { + "optional": true, + "tooltip": "CQP level.", + "default": "Low", + "multiselect": false, + "options": [ + "Low", + "Mid", + "High" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "TopazVideoEnhance_ISO", + "display_name": "Topaz Video Enhance_ISO", + "description": "Breathe new life into video with powerful upscaling and recovery technology.", + "category": "api node/video/Topaz", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Breathe new life into video with powerful upscaling and recovery technology.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Topaz Video Enhance_ISO" + }, + "TripoTextToModelNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "multiline": true + } + ] + }, + "model_version": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "v2.5-20250123", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ] + }, + "style": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ] + }, + "texture": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "pbr": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "image_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "model_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ] + }, + "face_limit": { + "__pyisolate_tuple__": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ] + }, + "quad": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "MODEL_TASK_ID" + ], + "return_names": [ + "model_file", + "model task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "multiline": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "multiline": true + } + ], + "model_version": [ + "COMBO", + { + "default": "v2.5-20250123", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "style": [ + "COMBO", + { + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "default": true + } + ], + "image_seed": [ + "INT", + { + "default": 42 + } + ], + "model_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "face_limit": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "prompt" + ], + "optional": [ + "negative_prompt", + "model_version", + "style", + "texture", + "pbr", + "image_seed", + "model_seed", + "texture_seed", + "texture_quality", + "face_limit", + "quad" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "MODEL_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "model task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoTextToModelNode_ISO", + "display_name": "Tripo: Text to Model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "multiline": true + } + ], + "model_version": [ + "COMBO", + { + "optional": true, + "default": "v2.5-20250123", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "style": [ + "COMBO", + { + "optional": true, + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "image_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "model_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "optional": true, + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "face_limit": [ + "INT", + { + "optional": true, + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_MODEL_TASK_ID_": [ + "MODEL_TASK_ID", + { + "display_name": "model task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoTextToModelNode_ISO", + "display_name": "Tripo: Text to Model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Text to Model_ISO" + }, + "TripoImageToModelNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "model_version": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ] + }, + "style": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ] + }, + "texture": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "pbr": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "model_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "orientation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ] + }, + "texture_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ] + }, + "texture_alignment": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ] + }, + "face_limit": { + "__pyisolate_tuple__": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ] + }, + "quad": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "MODEL_TASK_ID" + ], + "return_names": [ + "model_file", + "model task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "optional": { + "model_version": [ + "COMBO", + { + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "style": [ + "COMBO", + { + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "default": true + } + ], + "model_seed": [ + "INT", + { + "default": 42 + } + ], + "orientation": [ + "COMBO", + { + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ], + "texture_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ], + "face_limit": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "optional": [ + "model_version", + "style", + "texture", + "pbr", + "model_seed", + "orientation", + "texture_seed", + "texture_quality", + "texture_alignment", + "face_limit", + "quad" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "MODEL_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "model task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoImageToModelNode_ISO", + "display_name": "Tripo: Image to Model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "model_version": [ + "COMBO", + { + "optional": true, + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "style": [ + "COMBO", + { + "optional": true, + "default": "None", + "multiselect": false, + "options": [ + "person:person2cartoon", + "animal:venom", + "object:clay", + "object:steampunk", + "object:christmas", + "object:barbie", + "gold", + "ancient_bronze", + "None" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "model_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "orientation": [ + "COMBO", + { + "optional": true, + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ], + "texture_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "optional": true, + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "optional": true, + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ], + "face_limit": [ + "INT", + { + "optional": true, + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_MODEL_TASK_ID_": [ + "MODEL_TASK_ID", + { + "display_name": "model task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoImageToModelNode_ISO", + "display_name": "Tripo: Image to Model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Image to Model_ISO" + }, + "TripoMultiviewToModelNode_ISO": { + "input_types": { + "required": { + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + } + }, + "optional": { + "image_left": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image_back": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "image_right": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "model_version": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ] + }, + "orientation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ] + }, + "texture": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "pbr": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "model_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ] + }, + "texture_alignment": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ] + }, + "face_limit": { + "__pyisolate_tuple__": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ] + }, + "quad": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "MODEL_TASK_ID" + ], + "return_names": [ + "model_file", + "model task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "image": [ + "IMAGE", + {} + ] + }, + "optional": { + "image_left": [ + "IMAGE", + {} + ], + "image_back": [ + "IMAGE", + {} + ], + "image_right": [ + "IMAGE", + {} + ], + "model_version": [ + "COMBO", + { + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "orientation": [ + "COMBO", + { + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "default": true + } + ], + "model_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ], + "face_limit": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "image" + ], + "optional": [ + "image_left", + "image_back", + "image_right", + "model_version", + "orientation", + "texture", + "pbr", + "model_seed", + "texture_seed", + "texture_quality", + "texture_alignment", + "face_limit", + "quad" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "MODEL_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "model task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoMultiviewToModelNode_ISO", + "display_name": "Tripo: Multiview to Model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "image": [ + "IMAGE", + { + "optional": false + } + ], + "image_left": [ + "IMAGE", + { + "optional": true + } + ], + "image_back": [ + "IMAGE", + { + "optional": true + } + ], + "image_right": [ + "IMAGE", + { + "optional": true + } + ], + "model_version": [ + "COMBO", + { + "optional": true, + "tooltip": "The model version to use for generation", + "multiselect": false, + "options": [ + "v3.0-20250812", + "v2.5-20250123", + "v2.0-20240919", + "v1.4-20240625" + ] + } + ], + "orientation": [ + "COMBO", + { + "optional": true, + "default": "default", + "multiselect": false, + "options": [ + "align_image", + "default" + ] + } + ], + "texture": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "model_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "optional": true, + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "optional": true, + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ], + "face_limit": [ + "INT", + { + "optional": true, + "default": -1, + "min": -1, + "max": 500000 + } + ], + "quad": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_MODEL_TASK_ID_": [ + "MODEL_TASK_ID", + { + "display_name": "model task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoMultiviewToModelNode_ISO", + "display_name": "Tripo: Multiview to Model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Multiview to Model_ISO" + }, + "TripoTextureNode_ISO": { + "input_types": { + "required": { + "model_task_id": { + "__pyisolate_tuple__": [ + "MODEL_TASK_ID", + {} + ] + } + }, + "optional": { + "texture": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "pbr": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": true + } + ] + }, + "texture_seed": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 42 + } + ] + }, + "texture_quality": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ] + }, + "texture_alignment": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "MODEL_TASK_ID" + ], + "return_names": [ + "model_file", + "model task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_task_id": [ + "MODEL_TASK_ID", + {} + ] + }, + "optional": { + "texture": [ + "BOOLEAN", + { + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "default": true + } + ], + "texture_seed": [ + "INT", + { + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "model_task_id" + ], + "optional": [ + "texture", + "pbr", + "texture_seed", + "texture_quality", + "texture_alignment" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "MODEL_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "model task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoTextureNode_ISO", + "display_name": "Tripo: Texture model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_task_id": [ + "MODEL_TASK_ID", + { + "optional": false + } + ], + "texture": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "pbr": [ + "BOOLEAN", + { + "optional": true, + "default": true + } + ], + "texture_seed": [ + "INT", + { + "optional": true, + "default": 42 + } + ], + "texture_quality": [ + "COMBO", + { + "optional": true, + "default": "standard", + "multiselect": false, + "options": [ + "standard", + "detailed" + ] + } + ], + "texture_alignment": [ + "COMBO", + { + "optional": true, + "default": "original_image", + "multiselect": false, + "options": [ + "original_image", + "geometry" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_MODEL_TASK_ID_": [ + "MODEL_TASK_ID", + { + "display_name": "model task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoTextureNode_ISO", + "display_name": "Tripo: Texture model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Texture model_ISO" + }, + "TripoRefineNode_ISO": { + "input_types": { + "required": { + "model_task_id": { + "__pyisolate_tuple__": [ + "MODEL_TASK_ID", + { + "tooltip": "Must be a v1.4 Tripo model" + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "MODEL_TASK_ID" + ], + "return_names": [ + "model_file", + "model task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model_task_id": [ + "MODEL_TASK_ID", + { + "tooltip": "Must be a v1.4 Tripo model" + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "model_task_id" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "MODEL_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "model task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoRefineNode_ISO", + "display_name": "Tripo: Refine Draft model_ISO", + "description": "Refine a draft model created by v1.4 Tripo models only.", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model_task_id": [ + "MODEL_TASK_ID", + { + "optional": false, + "tooltip": "Must be a v1.4 Tripo model" + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_MODEL_TASK_ID_": [ + "MODEL_TASK_ID", + { + "display_name": "model task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoRefineNode_ISO", + "display_name": "Tripo: Refine Draft model_ISO", + "description": "Refine a draft model created by v1.4 Tripo models only.", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "Refine a draft model created by v1.4 Tripo models only.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Refine Draft model_ISO" + }, + "TripoRigNode_ISO": { + "input_types": { + "required": { + "original_model_task_id": { + "__pyisolate_tuple__": [ + "MODEL_TASK_ID", + {} + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "RIG_TASK_ID" + ], + "return_names": [ + "model_file", + "rig task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "original_model_task_id": [ + "MODEL_TASK_ID", + {} + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "original_model_task_id" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "RIG_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "rig task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoRigNode_ISO", + "display_name": "Tripo: Rig model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "original_model_task_id": [ + "MODEL_TASK_ID", + { + "optional": false + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_RIG_TASK_ID_": [ + "RIG_TASK_ID", + { + "display_name": "rig task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoRigNode_ISO", + "display_name": "Tripo: Rig model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Rig model_ISO" + }, + "TripoRetargetNode_ISO": { + "input_types": { + "required": { + "original_model_task_id": { + "__pyisolate_tuple__": [ + "RIG_TASK_ID", + {} + ] + }, + "animation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "preset:idle", + "preset:walk", + "preset:climb", + "preset:jump", + "preset:slash", + "preset:shoot", + "preset:hurt", + "preset:fall", + "preset:turn" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [ + "STRING", + "RETARGET_TASK_ID" + ], + "return_names": [ + "model_file", + "retarget task_id" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "original_model_task_id": [ + "RIG_TASK_ID", + {} + ], + "animation": [ + "COMBO", + { + "multiselect": false, + "options": [ + "preset:idle", + "preset:walk", + "preset:climb", + "preset:jump", + "preset:slash", + "preset:shoot", + "preset:hurt", + "preset:fall", + "preset:turn" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "original_model_task_id", + "animation" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [ + "STRING", + "RETARGET_TASK_ID" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "model_file", + "retarget task_id" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "TripoRetargetNode_ISO", + "display_name": "Tripo: Retarget rigged model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "original_model_task_id": [ + "RIG_TASK_ID", + { + "optional": false + } + ], + "animation": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "preset:idle", + "preset:walk", + "preset:climb", + "preset:jump", + "preset:slash", + "preset:shoot", + "preset:hurt", + "preset:fall", + "preset:turn" + ] + } + ] + }, + "output": { + "_0_STRING_": [ + "STRING", + { + "display_name": "model_file", + "is_output_list": false + } + ], + "_1_RETARGET_TASK_ID_": [ + "RETARGET_TASK_ID", + { + "display_name": "retarget task_id", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoRetargetNode_ISO", + "display_name": "Tripo: Retarget rigged model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Retarget rigged model_ISO" + }, + "TripoConversionNode_ISO": { + "input_types": { + "required": { + "original_model_task_id": { + "__pyisolate_tuple__": [ + "MODEL_TASK_ID,RIG_TASK_ID,RETARGET_TASK_ID", + {} + ] + }, + "format": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "GLTF", + "USDZ", + "FBX", + "OBJ", + "STL", + "3MF" + ] + } + ] + } + }, + "optional": { + "quad": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "default": false + } + ] + }, + "face_limit": { + "__pyisolate_tuple__": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ] + }, + "texture_size": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 4096, + "min": 128, + "max": 4096 + } + ] + }, + "texture_format": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "JPEG", + "multiselect": false, + "options": [ + "BMP", + "DPX", + "HDR", + "JPEG", + "OPEN_EXR", + "PNG", + "TARGA", + "TIFF", + "WEBP" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "PROMPT" + ] + }, + "extra_pnginfo": { + "__pyisolate_tuple__": [ + "EXTRA_PNGINFO" + ] + } + } + }, + "return_types": [], + "return_names": [], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/3d/Tripo", + "output_node": true, + "output_is_list": [], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "original_model_task_id": [ + "MODEL_TASK_ID,RIG_TASK_ID,RETARGET_TASK_ID", + {} + ], + "format": [ + "COMBO", + { + "multiselect": false, + "options": [ + "GLTF", + "USDZ", + "FBX", + "OBJ", + "STL", + "3MF" + ] + } + ] + }, + "optional": { + "quad": [ + "BOOLEAN", + { + "default": false + } + ], + "face_limit": [ + "INT", + { + "default": -1, + "min": -1, + "max": 500000 + } + ], + "texture_size": [ + "INT", + { + "default": 4096, + "min": 128, + "max": 4096 + } + ], + "texture_format": [ + "COMBO", + { + "default": "JPEG", + "multiselect": false, + "options": [ + "BMP", + "DPX", + "HDR", + "JPEG", + "OPEN_EXR", + "PNG", + "TARGA", + "TIFF", + "WEBP" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ], + "prompt": [ + "PROMPT" + ], + "extra_pnginfo": [ + "EXTRA_PNGINFO" + ] + } + }, + "input_order": { + "required": [ + "original_model_task_id", + "format" + ], + "optional": [ + "quad", + "face_limit", + "texture_size", + "texture_format" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id", + "prompt", + "extra_pnginfo" + ] + }, + "is_input_list": false, + "output": [], + "output_is_list": [], + "output_name": [], + "output_tooltips": [], + "output_matchtypes": null, + "name": "TripoConversionNode_ISO", + "display_name": "Tripo: Convert model_ISO", + "description": "", + "python_module": null, + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "original_model_task_id": [ + "MODEL_TASK_ID,RIG_TASK_ID,RETARGET_TASK_ID", + { + "optional": false + } + ], + "format": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "GLTF", + "USDZ", + "FBX", + "OBJ", + "STL", + "3MF" + ] + } + ], + "quad": [ + "BOOLEAN", + { + "optional": true, + "default": false + } + ], + "face_limit": [ + "INT", + { + "optional": true, + "default": -1, + "min": -1, + "max": 500000 + } + ], + "texture_size": [ + "INT", + { + "optional": true, + "default": 4096, + "min": 128, + "max": 4096 + } + ], + "texture_format": [ + "COMBO", + { + "optional": true, + "default": "JPEG", + "multiselect": false, + "options": [ + "BMP", + "DPX", + "HDR", + "JPEG", + "OPEN_EXR", + "PNG", + "TARGA", + "TIFF", + "WEBP" + ] + } + ] + }, + "output": {}, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "name": "TripoConversionNode_ISO", + "display_name": "Tripo: Convert model_ISO", + "description": "", + "category": "api node/3d/Tripo", + "output_node": true, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID", + "PROMPT", + "EXTRA_PNGINFO" + ], + "description": "", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Tripo: Convert model_ISO" + }, + "VeoVideoGenerationNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ] + }, + "duration_seconds": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "enhance_prompt": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ] + }, + "person_generation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide video generation" + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Veo 2 model to use for video generation", + "default": "veo-2.0-generate-001", + "multiselect": false, + "options": [ + "veo-2.0-generate-001" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Veo", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "duration_seconds": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 8, + "step": 1, + "display": "number" + } + ], + "enhance_prompt": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ], + "person_generation": [ + "COMBO", + { + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide video generation" + } + ], + "model": [ + "COMBO", + { + "tooltip": "Veo 2 model to use for video generation", + "default": "veo-2.0-generate-001", + "multiselect": false, + "options": [ + "veo-2.0-generate-001" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio" + ], + "optional": [ + "negative_prompt", + "duration_seconds", + "enhance_prompt", + "person_generation", + "seed", + "image", + "model" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "VeoVideoGenerationNode_ISO", + "display_name": "Google Veo 2 Video Generation_ISO", + "description": "Generates videos from text prompts using Google's Veo 2 API", + "python_module": null, + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "duration_seconds": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 8, + "step": 1, + "display": "number" + } + ], + "enhance_prompt": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ], + "person_generation": [ + "COMBO", + { + "optional": true, + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image to guide video generation" + } + ], + "model": [ + "COMBO", + { + "optional": true, + "tooltip": "Veo 2 model to use for video generation", + "default": "veo-2.0-generate-001", + "multiselect": false, + "options": [ + "veo-2.0-generate-001" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "VeoVideoGenerationNode_ISO", + "display_name": "Google Veo 2 Video Generation_ISO", + "description": "Generates videos from text prompts using Google's Veo 2 API", + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos from text prompts using Google's Veo 2 API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Google Veo 2 Video Generation_ISO" + }, + "Veo3VideoGenerationNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ] + }, + "duration_seconds": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds (Veo 3 only supports 8 seconds)", + "default": 8, + "min": 8, + "max": 8, + "step": 1, + "display": "number" + } + ] + }, + "enhance_prompt": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ] + }, + "person_generation": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide video generation" + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Veo 3 model to use for video generation", + "default": "veo-3.0-generate-001", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate", + "veo-3.0-generate-001", + "veo-3.0-fast-generate-001" + ] + } + ] + }, + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Generate audio for the video. Supported by all Veo 3 models.", + "default": false + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Veo", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "duration_seconds": [ + "INT", + { + "tooltip": "Duration of the output video in seconds (Veo 3 only supports 8 seconds)", + "default": 8, + "min": 8, + "max": 8, + "step": 1, + "display": "number" + } + ], + "enhance_prompt": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ], + "person_generation": [ + "COMBO", + { + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "tooltip": "Optional reference image to guide video generation" + } + ], + "model": [ + "COMBO", + { + "tooltip": "Veo 3 model to use for video generation", + "default": "veo-3.0-generate-001", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate", + "veo-3.0-generate-001", + "veo-3.0-fast-generate-001" + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "Generate audio for the video. Supported by all Veo 3 models.", + "default": false + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "aspect_ratio" + ], + "optional": [ + "negative_prompt", + "duration_seconds", + "enhance_prompt", + "person_generation", + "seed", + "image", + "model", + "generate_audio" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Veo3VideoGenerationNode_ISO", + "display_name": "Google Veo 3 Video Generation_ISO", + "description": "Generates videos from text prompts using Google's Veo 3 API", + "python_module": null, + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "duration_seconds": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds (Veo 3 only supports 8 seconds)", + "default": 8, + "min": 8, + "max": 8, + "step": 1, + "display": "number" + } + ], + "enhance_prompt": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to enhance the prompt with AI assistance", + "default": true + } + ], + "person_generation": [ + "COMBO", + { + "optional": true, + "tooltip": "Whether to allow generating people in the video", + "default": "ALLOW", + "multiselect": false, + "options": [ + "ALLOW", + "BLOCK" + ] + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "image": [ + "IMAGE", + { + "optional": true, + "tooltip": "Optional reference image to guide video generation" + } + ], + "model": [ + "COMBO", + { + "optional": true, + "tooltip": "Veo 3 model to use for video generation", + "default": "veo-3.0-generate-001", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate", + "veo-3.0-generate-001", + "veo-3.0-fast-generate-001" + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Generate audio for the video. Supported by all Veo 3 models.", + "default": false + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Veo3VideoGenerationNode_ISO", + "display_name": "Google Veo 3 Video Generation_ISO", + "description": "Generates videos from text prompts using Google's Veo 3 API", + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates videos from text prompts using Google's Veo 3 API", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Google Veo 3 Video Generation_ISO" + }, + "Veo3FirstLastFrameNode_ISO": { + "input_types": { + "required": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ] + }, + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "multiselect": false, + "options": [ + "720p", + "1080p" + ] + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 8, + "min": 4, + "max": 8, + "step": 2, + "display": "slider" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "first_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Start frame" + } + ] + }, + "last_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "End frame" + } + ] + }, + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "veo-3.1-fast-generate", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate" + ] + } + ] + }, + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Generate audio for the video.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Veo", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "prompt": [ + "STRING", + { + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "multiselect": false, + "options": [ + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 8, + "min": 4, + "max": 8, + "step": 2, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "first_frame": [ + "IMAGE", + { + "tooltip": "Start frame" + } + ], + "last_frame": [ + "IMAGE", + { + "tooltip": "End frame" + } + ], + "model": [ + "COMBO", + { + "default": "veo-3.1-fast-generate", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate" + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "Generate audio for the video.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "prompt", + "negative_prompt", + "resolution", + "aspect_ratio", + "duration", + "seed", + "first_frame", + "last_frame", + "model", + "generate_audio" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "Veo3FirstLastFrameNode_ISO", + "display_name": "Google Veo 3 First-Last-Frame to Video_ISO", + "description": "Generate video using prompt and first and last frames.", + "python_module": null, + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Text description of the video", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Negative text prompt to guide what to avoid in the video", + "default": "", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "optional": false, + "multiselect": false, + "options": [ + "720p", + "1080p" + ] + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": false, + "tooltip": "Aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16" + ] + } + ], + "duration": [ + "INT", + { + "optional": false, + "tooltip": "Duration of the output video in seconds", + "default": 8, + "min": 4, + "max": 8, + "step": 2, + "display": "slider" + } + ], + "seed": [ + "INT", + { + "optional": false, + "tooltip": "Seed for video generation", + "default": 0, + "min": 0, + "max": 4294967295, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "first_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Start frame" + } + ], + "last_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "End frame" + } + ], + "model": [ + "COMBO", + { + "optional": false, + "default": "veo-3.1-fast-generate", + "multiselect": false, + "options": [ + "veo-3.1-generate", + "veo-3.1-fast-generate" + ] + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": false, + "tooltip": "Generate audio for the video.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "Veo3FirstLastFrameNode_ISO", + "display_name": "Google Veo 3 First-Last-Frame to Video_ISO", + "description": "Generate video using prompt and first and last frames.", + "category": "api node/video/Veo", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video using prompt and first and last frames.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Google Veo 3 First-Last-Frame to Video_ISO" + }, + "ViduTextToVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ] + } + }, + "optional": { + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ] + }, + "movement_amplitude": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Vidu", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ] + }, + "optional": { + "duration": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt" + ], + "optional": [ + "duration", + "seed", + "aspect_ratio", + "resolution", + "movement_amplitude" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ViduTextToVideoNode_ISO", + "display_name": "Vidu Text To Video Generation_ISO", + "description": "Generate video from text prompt", + "python_module": null, + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A textual description for video generation", + "multiline": true + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "optional": true, + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ViduTextToVideoNode_ISO", + "display_name": "Vidu Text To Video Generation_ISO", + "description": "Generate video from text prompt", + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video from text prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Vidu Text To Video Generation_ISO" + }, + "ViduImageToVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "An image to be used as the start frame of the generated video" + } + ] + } + }, + "optional": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "default": "", + "multiline": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ] + }, + "movement_amplitude": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Vidu", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "image": [ + "IMAGE", + { + "tooltip": "An image to be used as the start frame of the generated video" + } + ] + }, + "optional": { + "prompt": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "default": "", + "multiline": true + } + ], + "duration": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "image" + ], + "optional": [ + "prompt", + "duration", + "seed", + "resolution", + "movement_amplitude" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ViduImageToVideoNode_ISO", + "display_name": "Vidu Image To Video Generation_ISO", + "description": "Generate video from image and optional prompt", + "python_module": null, + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "An image to be used as the start frame of the generated video" + } + ], + "prompt": [ + "STRING", + { + "optional": true, + "tooltip": "A textual description for video generation", + "default": "", + "multiline": true + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "optional": true, + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ViduImageToVideoNode_ISO", + "display_name": "Vidu Image To Video Generation_ISO", + "description": "Generate video from image and optional prompt", + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video from image and optional prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Vidu Image To Video Generation_ISO" + }, + "ViduReferenceVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ] + }, + "images": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Images to use as references to generate a video with consistent subjects (max 7 images)." + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ] + } + }, + "optional": { + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "aspect_ratio": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ] + }, + "movement_amplitude": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Vidu", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "images": [ + "IMAGE", + { + "tooltip": "Images to use as references to generate a video with consistent subjects (max 7 images)." + } + ], + "prompt": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ] + }, + "optional": { + "duration": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "aspect_ratio": [ + "COMBO", + { + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "images", + "prompt" + ], + "optional": [ + "duration", + "seed", + "aspect_ratio", + "resolution", + "movement_amplitude" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ViduReferenceVideoNode_ISO", + "display_name": "Vidu Reference To Video Generation_ISO", + "description": "Generate video from multiple images and prompt", + "python_module": null, + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "images": [ + "IMAGE", + { + "optional": false, + "tooltip": "Images to use as references to generate a video with consistent subjects (max 7 images)." + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "A textual description for video generation", + "multiline": true + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "aspect_ratio": [ + "COMBO", + { + "optional": true, + "tooltip": "The aspect ratio of the output video", + "default": "16:9", + "multiselect": false, + "options": [ + "16:9", + "9:16", + "1:1" + ] + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "optional": true, + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ViduReferenceVideoNode_ISO", + "display_name": "Vidu Reference To Video Generation_ISO", + "description": "Generate video from multiple images and prompt", + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate video from multiple images and prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Vidu Reference To Video Generation_ISO" + }, + "ViduStartEndToVideoNode_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ] + }, + "first_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Start frame" + } + ] + }, + "end_frame": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "End frame" + } + ] + } + }, + "optional": { + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ] + }, + "movement_amplitude": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Vidu", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "first_frame": [ + "IMAGE", + { + "tooltip": "Start frame" + } + ], + "end_frame": [ + "IMAGE", + { + "tooltip": "End frame" + } + ] + }, + "optional": { + "prompt": [ + "STRING", + { + "tooltip": "A textual description for video generation", + "multiline": true + } + ], + "duration": [ + "INT", + { + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "resolution": [ + "COMBO", + { + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "first_frame", + "end_frame" + ], + "optional": [ + "prompt", + "duration", + "seed", + "resolution", + "movement_amplitude" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "ViduStartEndToVideoNode_ISO", + "display_name": "Vidu Start End To Video Generation_ISO", + "description": "Generate a video from start and end frames and a prompt", + "python_module": null, + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model name", + "default": "viduq1", + "multiselect": false, + "options": [ + "viduq1" + ] + } + ], + "first_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "Start frame" + } + ], + "end_frame": [ + "IMAGE", + { + "optional": false, + "tooltip": "End frame" + } + ], + "prompt": [ + "STRING", + { + "optional": true, + "tooltip": "A textual description for video generation", + "multiline": true + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Duration of the output video in seconds", + "default": 5, + "min": 5, + "max": 5, + "step": 1, + "display": "number" + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed for video generation (0 for random)", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "tooltip": "Supported values may vary by model & duration", + "default": "1080p", + "multiselect": false, + "options": [ + "1080p" + ] + } + ], + "movement_amplitude": [ + "COMBO", + { + "optional": true, + "tooltip": "The movement amplitude of objects in the frame", + "default": "auto", + "multiselect": false, + "options": [ + "auto", + "small", + "medium", + "large" + ] + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "ViduStartEndToVideoNode_ISO", + "display_name": "Vidu Start End To Video Generation_ISO", + "description": "Generate a video from start and end frames and a prompt", + "category": "api node/video/Vidu", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generate a video from start and end frames and a prompt", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Vidu Start End To Video Generation_ISO" + }, + "WanTextToImageApi_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-t2i-preview", + "multiselect": false, + "options": [ + "wan2.5-t2i-preview" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ] + }, + "width": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ] + }, + "height": { + "__pyisolate_tuple__": [ + "INT", + { + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "prompt_extend": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Wan", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-t2i-preview", + "multiselect": false, + "options": [ + "wan2.5-t2i-preview" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "width": [ + "INT", + { + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ], + "height": [ + "INT", + { + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt" + ], + "optional": [ + "negative_prompt", + "width", + "height", + "seed", + "prompt_extend", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "WanTextToImageApi_ISO", + "display_name": "Wan Text to Image_ISO", + "description": "Generates image based on text prompt.", + "python_module": null, + "category": "api node/image/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use.", + "default": "wan2.5-t2i-preview", + "multiselect": false, + "options": [ + "wan2.5-t2i-preview" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "width": [ + "INT", + { + "optional": true, + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ], + "height": [ + "INT", + { + "optional": true, + "default": 1024, + "min": 768, + "max": 1440, + "step": 32 + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "WanTextToImageApi_ISO", + "display_name": "Wan Text to Image_ISO", + "description": "Generates image based on text prompt.", + "category": "api node/image/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates image based on text prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan Text to Image_ISO" + }, + "WanImageToImageApi_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-i2i-preview", + "multiselect": false, + "options": [ + "wan2.5-i2i-preview" + ] + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + { + "tooltip": "Single-image editing or multi-image fusion, maximum 2 images." + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "IMAGE" + ], + "return_names": [ + "IMAGE" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/image/Wan", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-i2i-preview", + "multiselect": false, + "options": [ + "wan2.5-i2i-preview" + ] + } + ], + "image": [ + "IMAGE", + { + "tooltip": "Single-image editing or multi-image fusion, maximum 2 images." + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "image", + "prompt" + ], + "optional": [ + "negative_prompt", + "seed", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "IMAGE" + ], + "output_is_list": [ + false + ], + "output_name": [ + "IMAGE" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "WanImageToImageApi_ISO", + "display_name": "Wan Image to Image_ISO", + "description": "Generates an image from one or two input images and a text prompt. The output image is currently fixed at 1.6 MP; its aspect ratio matches the input image(s).", + "python_module": null, + "category": "api node/image/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use.", + "default": "wan2.5-i2i-preview", + "multiselect": false, + "options": [ + "wan2.5-i2i-preview" + ] + } + ], + "image": [ + "IMAGE", + { + "optional": false, + "tooltip": "Single-image editing or multi-image fusion, maximum 2 images." + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "output": { + "_0_IMAGE_": [ + "IMAGE", + { + "display_name": "_0_IMAGE_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "WanImageToImageApi_ISO", + "display_name": "Wan Image to Image_ISO", + "description": "Generates an image from one or two input images and a text prompt. The output image is currently fixed at 1.6 MP; its aspect ratio matches the input image(s).", + "category": "api node/image/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates an image from one or two input images and a text prompt. The output image is currently fixed at 1.6 MP; its aspect ratio matches the input image(s).", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan Image to Image_ISO" + }, + "WanTextToVideoApi_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-t2v-preview", + "multiselect": false, + "options": [ + "wan2.5-t2v-preview" + ] + } + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ] + }, + "size": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "480p: 1:1 (624x624)", + "multiselect": false, + "options": [ + "480p: 1:1 (624x624)", + "480p: 16:9 (832x480)", + "480p: 9:16 (480x832)", + "720p: 1:1 (960x960)", + "720p: 16:9 (1280x720)", + "720p: 9:16 (720x1280)", + "720p: 4:3 (1088x832)", + "720p: 3:4 (832x1088)", + "1080p: 1:1 (1440x1440)", + "1080p: 16:9 (1920x1080)", + "1080p: 9:16 (1080x1920)", + "1080p: 4:3 (1632x1248)", + "1080p: 3:4 (1248x1632)" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ] + }, + "prompt_extend": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Wan", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-t2v-preview", + "multiselect": false, + "options": [ + "wan2.5-t2v-preview" + ] + } + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "default": "480p: 1:1 (624x624)", + "multiselect": false, + "options": [ + "480p: 1:1 (624x624)", + "480p: 16:9 (832x480)", + "480p: 9:16 (480x832)", + "720p: 1:1 (960x960)", + "720p: 16:9 (1280x720)", + "720p: 9:16 (720x1280)", + "720p: 4:3 (1088x832)", + "720p: 3:4 (832x1088)", + "1080p: 1:1 (1440x1440)", + "1080p: 16:9 (1920x1080)", + "1080p: 9:16 (1080x1920)", + "1080p: 4:3 (1632x1248)", + "1080p: 3:4 (1248x1632)" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ], + "audio": [ + "AUDIO", + { + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "prompt" + ], + "optional": [ + "negative_prompt", + "size", + "duration", + "audio", + "seed", + "generate_audio", + "prompt_extend", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "WanTextToVideoApi_ISO", + "display_name": "Wan Text to Video_ISO", + "description": "Generates video based on text prompt.", + "python_module": null, + "category": "api node/video/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use.", + "default": "wan2.5-t2v-preview", + "multiselect": false, + "options": [ + "wan2.5-t2v-preview" + ] + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "size": [ + "COMBO", + { + "optional": true, + "default": "480p: 1:1 (624x624)", + "multiselect": false, + "options": [ + "480p: 1:1 (624x624)", + "480p: 16:9 (832x480)", + "480p: 9:16 (480x832)", + "720p: 1:1 (960x960)", + "720p: 16:9 (1280x720)", + "720p: 9:16 (720x1280)", + "720p: 4:3 (1088x832)", + "720p: 3:4 (832x1088)", + "1080p: 1:1 (1440x1440)", + "1080p: 16:9 (1920x1080)", + "1080p: 9:16 (1080x1920)", + "1080p: 4:3 (1632x1248)", + "1080p: 3:4 (1248x1632)" + ] + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ], + "audio": [ + "AUDIO", + { + "optional": true, + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "WanTextToVideoApi_ISO", + "display_name": "Wan Text to Video_ISO", + "description": "Generates video based on text prompt.", + "category": "api node/video/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates video based on text prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan Text to Video_ISO" + }, + "WanImageToVideoApi_ISO": { + "input_types": { + "required": { + "model": { + "__pyisolate_tuple__": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-i2v-preview", + "multiselect": false, + "options": [ + "wan2.5-i2v-preview" + ] + } + ] + }, + "image": { + "__pyisolate_tuple__": [ + "IMAGE", + {} + ] + }, + "prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + } + }, + "optional": { + "negative_prompt": { + "__pyisolate_tuple__": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ] + }, + "resolution": { + "__pyisolate_tuple__": [ + "COMBO", + { + "default": "480P", + "multiselect": false, + "options": [ + "480P", + "720P", + "1080P" + ] + } + ] + }, + "duration": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ] + }, + "audio": { + "__pyisolate_tuple__": [ + "AUDIO", + { + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ] + }, + "seed": { + "__pyisolate_tuple__": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ] + }, + "generate_audio": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ] + }, + "prompt_extend": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ] + }, + "watermark": { + "__pyisolate_tuple__": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + } + }, + "hidden": { + "auth_token_comfy_org": { + "__pyisolate_tuple__": [ + "AUTH_TOKEN_COMFY_ORG" + ] + }, + "api_key_comfy_org": { + "__pyisolate_tuple__": [ + "API_KEY_COMFY_ORG" + ] + }, + "unique_id": { + "__pyisolate_tuple__": [ + "UNIQUE_ID" + ] + } + } + }, + "return_types": [ + "VIDEO" + ], + "return_names": [ + "VIDEO" + ], + "function": "EXECUTE_NORMALIZED_ASYNC", + "category": "api node/video/Wan", + "output_node": false, + "output_is_list": [ + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "model": [ + "COMBO", + { + "tooltip": "Model to use.", + "default": "wan2.5-i2v-preview", + "multiselect": false, + "options": [ + "wan2.5-i2v-preview" + ] + } + ], + "image": [ + "IMAGE", + {} + ], + "prompt": [ + "STRING", + { + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ] + }, + "optional": { + "negative_prompt": [ + "STRING", + { + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "default": "480P", + "multiselect": false, + "options": [ + "480P", + "720P", + "1080P" + ] + } + ], + "duration": [ + "INT", + { + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ], + "audio": [ + "AUDIO", + { + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ], + "seed": [ + "INT", + { + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "generate_audio": [ + "BOOLEAN", + { + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "hidden": { + "auth_token_comfy_org": [ + "AUTH_TOKEN_COMFY_ORG" + ], + "api_key_comfy_org": [ + "API_KEY_COMFY_ORG" + ], + "unique_id": [ + "UNIQUE_ID" + ] + } + }, + "input_order": { + "required": [ + "model", + "image", + "prompt" + ], + "optional": [ + "negative_prompt", + "resolution", + "duration", + "audio", + "seed", + "generate_audio", + "prompt_extend", + "watermark" + ], + "hidden": [ + "auth_token_comfy_org", + "api_key_comfy_org", + "unique_id" + ] + }, + "is_input_list": false, + "output": [ + "VIDEO" + ], + "output_is_list": [ + false + ], + "output_name": [ + "VIDEO" + ], + "output_tooltips": [ + null + ], + "output_matchtypes": null, + "name": "WanImageToVideoApi_ISO", + "display_name": "Wan Image to Video_ISO", + "description": "Generates video based on the first frame and text prompt.", + "python_module": null, + "category": "api node/video/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": true, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "model": [ + "COMBO", + { + "optional": false, + "tooltip": "Model to use.", + "default": "wan2.5-i2v-preview", + "multiselect": false, + "options": [ + "wan2.5-i2v-preview" + ] + } + ], + "image": [ + "IMAGE", + { + "optional": false + } + ], + "prompt": [ + "STRING", + { + "optional": false, + "tooltip": "Prompt used to describe the elements and visual features, supports English/Chinese.", + "default": "", + "multiline": true + } + ], + "negative_prompt": [ + "STRING", + { + "optional": true, + "tooltip": "Negative text prompt to guide what to avoid.", + "default": "", + "multiline": true + } + ], + "resolution": [ + "COMBO", + { + "optional": true, + "default": "480P", + "multiselect": false, + "options": [ + "480P", + "720P", + "1080P" + ] + } + ], + "duration": [ + "INT", + { + "optional": true, + "tooltip": "Available durations: 5 and 10 seconds", + "default": 5, + "min": 5, + "max": 10, + "step": 5, + "display": "number" + } + ], + "audio": [ + "AUDIO", + { + "optional": true, + "tooltip": "Audio must contain a clear, loud voice, without extraneous noise, background music." + } + ], + "seed": [ + "INT", + { + "optional": true, + "tooltip": "Seed to use for generation.", + "default": 0, + "min": 0, + "max": 2147483647, + "step": 1, + "control_after_generate": true, + "display": "number" + } + ], + "generate_audio": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "If there is no audio input, generate audio automatically.", + "default": false + } + ], + "prompt_extend": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to enhance the prompt with AI assistance.", + "default": true + } + ], + "watermark": [ + "BOOLEAN", + { + "optional": true, + "tooltip": "Whether to add an \"AI generated\" watermark to the result.", + "default": true + } + ] + }, + "output": { + "_0_VIDEO_": [ + "VIDEO", + { + "display_name": "_0_VIDEO_", + "is_output_list": false + } + ] + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "name": "WanImageToVideoApi_ISO", + "display_name": "Wan Image to Video_ISO", + "description": "Generates video based on the first frame and text prompt.", + "category": "api node/video/Wan", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": true + }, + "hidden": [ + "AUTH_TOKEN_COMFY_ORG", + "API_KEY_COMFY_ORG", + "UNIQUE_ID" + ], + "description": "Generates video based on the first frame and text prompt.", + "deprecated": false, + "experimental": false, + "api_node": true, + "input_is_list": false, + "not_idempotent": false, + "display_name": "Wan Image to Video_ISO" + }, + "ZeroCopyIPCTest_ISO": { + "input_types": { + "required": { + "latent": { + "__pyisolate_tuple__": [ + "LATENT", + {} + ] + } + } + }, + "return_types": [ + "LATENT", + "STRING" + ], + "return_names": [ + "latent", + "info" + ], + "function": "EXECUTE_NORMALIZED", + "category": "isolation/tests", + "output_node": false, + "output_is_list": [ + false, + false + ], + "is_v3": true, + "schema_v1": { + "input": { + "required": { + "latent": [ + "LATENT", + {} + ] + } + }, + "input_order": { + "required": [ + "latent" + ] + }, + "is_input_list": false, + "output": [ + "LATENT", + "STRING" + ], + "output_is_list": [ + false, + false + ], + "output_name": [ + "latent", + "info" + ], + "output_tooltips": [ + null, + null + ], + "output_matchtypes": null, + "name": "ZeroCopyIPCTest_ISO", + "display_name": "ZeroCopyIPCTest_ISO", + "description": "Inspect latent tensor device/is_cuda/data_ptr", + "python_module": null, + "category": "isolation/tests", + "output_node": false, + "deprecated": false, + "experimental": false, + "dev_only": false, + "api_node": false, + "price_badge": null, + "search_aliases": null, + "essentials_category": null + }, + "schema_v3": { + "input": { + "latent": [ + "LATENT", + { + "optional": false + } + ] + }, + "output": { + "latent_out": [ + "LATENT", + { + "display_name": "latent", + "is_output_list": false + } + ], + "info": [ + "STRING", + { + "display_name": "info", + "is_output_list": false + } + ] + }, + "hidden": [], + "name": "ZeroCopyIPCTest_ISO", + "display_name": "ZeroCopyIPCTest_ISO", + "description": "Inspect latent tensor device/is_cuda/data_ptr", + "category": "isolation/tests", + "output_node": false, + "deprecated": false, + "experimental": false, + "api_node": false + }, + "hidden": [], + "description": "Inspect latent tensor device/is_cuda/data_ptr", + "deprecated": false, + "experimental": false, + "api_node": false, + "input_is_list": false, + "not_idempotent": false, + "display_name": "ZeroCopyIPCTest_ISO" + } +} \ No newline at end of file diff --git a/app/frontend_management.py b/app/frontend_management.py index bdaa85812..f753ef0de 100644 --- a/app/frontend_management.py +++ b/app/frontend_management.py @@ -17,7 +17,7 @@ from importlib.metadata import version import requests from typing_extensions import NotRequired -from utils.install_util import get_missing_requirements_message, requirements_path +from utils.install_util import get_missing_requirements_message, get_required_packages_versions from comfy.cli_args import DEFAULT_VERSION_STRING import app.logger @@ -45,25 +45,7 @@ def get_installed_frontend_version(): def get_required_frontend_version(): - """Get the required frontend version from requirements.txt.""" - try: - with open(requirements_path, "r", encoding="utf-8") as f: - for line in f: - line = line.strip() - if line.startswith("comfyui-frontend-package=="): - version_str = line.split("==")[-1] - if not is_valid_version(version_str): - logging.error(f"Invalid version format in requirements.txt: {version_str}") - return None - return version_str - logging.error("comfyui-frontend-package not found in requirements.txt") - return None - except FileNotFoundError: - logging.error("requirements.txt not found. Cannot determine required frontend version.") - return None - except Exception as e: - logging.error(f"Error reading requirements.txt: {e}") - return None + return get_required_packages_versions().get("comfyui-frontend-package", None) def check_frontend_version(): @@ -217,25 +199,7 @@ class FrontendManager: @classmethod def get_required_templates_version(cls) -> str: - """Get the required workflow templates version from requirements.txt.""" - try: - with open(requirements_path, "r", encoding="utf-8") as f: - for line in f: - line = line.strip() - if line.startswith("comfyui-workflow-templates=="): - version_str = line.split("==")[-1] - if not is_valid_version(version_str): - logging.error(f"Invalid templates version format in requirements.txt: {version_str}") - return None - return version_str - logging.error("comfyui-workflow-templates not found in requirements.txt") - return None - except FileNotFoundError: - logging.error("requirements.txt not found. Cannot determine required templates version.") - return None - except Exception as e: - logging.error(f"Error reading requirements.txt: {e}") - return None + return get_required_packages_versions().get("comfyui-workflow-templates", None) @classmethod def default_frontend_path(cls) -> str: diff --git a/comfy/cli_args.py b/comfy/cli_args.py index bea70c2e7..a13913dbd 100644 --- a/comfy/cli_args.py +++ b/comfy/cli_args.py @@ -146,6 +146,7 @@ parser.add_argument("--reserve-vram", type=float, default=None, help="Set the am parser.add_argument("--async-offload", nargs='?', const=2, type=int, default=None, metavar="NUM_STREAMS", help="Use async weight offloading. An optional argument controls the amount of offload streams. Default is 2. Enabled by default on Nvidia.") parser.add_argument("--disable-async-offload", action="store_true", help="Disable async weight offloading.") +parser.add_argument("--disable-dynamic-vram", action="store_true", help="Disable dynamic VRAM and use estimate based model loading.") parser.add_argument("--force-non-blocking", action="store_true", help="Force ComfyUI to use non-blocking operations for all applicable tensors. This may improve performance on some non-Nvidia systems but can cause issues with some workflows.") @@ -159,7 +160,6 @@ class PerformanceFeature(enum.Enum): Fp8MatrixMultiplication = "fp8_matrix_mult" CublasOps = "cublas_ops" AutoTune = "autotune" - DynamicVRAM = "dynamic_vram" parser.add_argument("--fast", nargs="*", type=PerformanceFeature, help="Enable some untested and potentially quality deteriorating optimizations. This is used to test new features so using it might crash your comfyui. --fast with no arguments enables everything. You can pass a list specific optimizations if you only want to enable specific ones. Current valid optimizations: {}".format(" ".join(map(lambda c: c.value, PerformanceFeature)))) @@ -262,4 +262,4 @@ else: args.fast = set(args.fast) def enables_dynamic_vram(): - return PerformanceFeature.DynamicVRAM in args.fast and not args.highvram and not args.gpu_only + return not args.disable_dynamic_vram and not args.highvram and not args.gpu_only and not args.novram and not args.cpu diff --git a/comfy/context_windows.py b/comfy/context_windows.py index 2f82d51da..b54f7f39a 100644 --- a/comfy/context_windows.py +++ b/comfy/context_windows.py @@ -214,7 +214,7 @@ class IndexListContextHandler(ContextHandlerABC): mask = torch.isclose(model_options["transformer_options"]["sample_sigmas"], timestep[0], rtol=0.0001) matches = torch.nonzero(mask) if torch.numel(matches) == 0: - raise Exception("No sample_sigmas matched current timestep; something went wrong.") + return # substep from multi-step sampler: keep self._step from the last full step self._step = int(matches[0].item()) def get_context_windows(self, model: BaseModel, x_in: torch.Tensor, model_options: dict[str]) -> list[IndexListContextWindow]: diff --git a/comfy/ldm/wan/model.py b/comfy/ldm/wan/model.py index ea123acb4..b2287dba9 100644 --- a/comfy/ldm/wan/model.py +++ b/comfy/ldm/wan/model.py @@ -1621,3 +1621,118 @@ class HumoWanModel(WanModel): # unpatchify x = self.unpatchify(x, grid_sizes) return x + +class SCAILWanModel(WanModel): + def __init__(self, model_type="scail", patch_size=(1, 2, 2), in_dim=20, dim=5120, operations=None, device=None, dtype=None, **kwargs): + super().__init__(model_type='i2v', patch_size=patch_size, in_dim=in_dim, dim=dim, operations=operations, device=device, dtype=dtype, **kwargs) + + self.patch_embedding_pose = operations.Conv3d(in_dim, dim, kernel_size=patch_size, stride=patch_size, device=device, dtype=torch.float32) + + def forward_orig(self, x, t, context, clip_fea=None, freqs=None, transformer_options={}, pose_latents=None, reference_latent=None, **kwargs): + + if reference_latent is not None: + x = torch.cat((reference_latent, x), dim=2) + + # embeddings + x = self.patch_embedding(x.float()).to(x.dtype) + grid_sizes = x.shape[2:] + transformer_options["grid_sizes"] = grid_sizes + x = x.flatten(2).transpose(1, 2) + + scail_pose_seq_len = 0 + if pose_latents is not None: + scail_x = self.patch_embedding_pose(pose_latents.float()).to(x.dtype) + scail_x = scail_x.flatten(2).transpose(1, 2) + scail_pose_seq_len = scail_x.shape[1] + x = torch.cat([x, scail_x], dim=1) + del scail_x + + # time embeddings + e = self.time_embedding(sinusoidal_embedding_1d(self.freq_dim, t.flatten()).to(dtype=x[0].dtype)) + e = e.reshape(t.shape[0], -1, e.shape[-1]) + e0 = self.time_projection(e).unflatten(2, (6, self.dim)) + + # context + context = self.text_embedding(context) + + context_img_len = None + if clip_fea is not None: + if self.img_emb is not None: + context_clip = self.img_emb(clip_fea) # bs x 257 x dim + context = torch.cat([context_clip, context], dim=1) + context_img_len = clip_fea.shape[-2] + + patches_replace = transformer_options.get("patches_replace", {}) + blocks_replace = patches_replace.get("dit", {}) + transformer_options["total_blocks"] = len(self.blocks) + transformer_options["block_type"] = "double" + for i, block in enumerate(self.blocks): + transformer_options["block_index"] = i + if ("double_block", i) in blocks_replace: + def block_wrap(args): + out = {} + out["img"] = block(args["img"], context=args["txt"], e=args["vec"], freqs=args["pe"], context_img_len=context_img_len, transformer_options=args["transformer_options"]) + return out + out = blocks_replace[("double_block", i)]({"img": x, "txt": context, "vec": e0, "pe": freqs, "transformer_options": transformer_options}, {"original_block": block_wrap}) + x = out["img"] + else: + x = block(x, e=e0, freqs=freqs, context=context, context_img_len=context_img_len, transformer_options=transformer_options) + + # head + x = self.head(x, e) + + if scail_pose_seq_len > 0: + x = x[:, :-scail_pose_seq_len] + + # unpatchify + x = self.unpatchify(x, grid_sizes) + + if reference_latent is not None: + x = x[:, :, reference_latent.shape[2]:] + + return x + + def rope_encode(self, t, h, w, t_start=0, steps_t=None, steps_h=None, steps_w=None, device=None, dtype=None, pose_latents=None, reference_latent=None, transformer_options={}): + main_freqs = super().rope_encode(t, h, w, t_start=t_start, steps_t=steps_t, steps_h=steps_h, steps_w=steps_w, device=device, dtype=dtype, transformer_options=transformer_options) + + if pose_latents is None: + return main_freqs + + ref_t_patches = 0 + if reference_latent is not None: + ref_t_patches = (reference_latent.shape[2] + (self.patch_size[0] // 2)) // self.patch_size[0] + + F_pose, H_pose, W_pose = pose_latents.shape[-3], pose_latents.shape[-2], pose_latents.shape[-1] + + # if pose is at half resolution, scale_y/scale_x=2 stretches the position range to cover the same RoPE extent as the main frames + h_scale = h / H_pose + w_scale = w / W_pose + + # 120 w-offset and shift 0.5 to place positions at midpoints (0.5, 2.5, ...) to match the original code + h_shift = (h_scale - 1) / 2 + w_shift = (w_scale - 1) / 2 + pose_transformer_options = {"rope_options": {"shift_y": h_shift, "shift_x": 120.0 + w_shift, "scale_y": h_scale, "scale_x": w_scale}} + pose_freqs = super().rope_encode(F_pose, H_pose, W_pose, t_start=t_start+ref_t_patches, device=device, dtype=dtype, transformer_options=pose_transformer_options) + + return torch.cat([main_freqs, pose_freqs], dim=1) + + def _forward(self, x, timestep, context, clip_fea=None, time_dim_concat=None, transformer_options={}, pose_latents=None, **kwargs): + bs, c, t, h, w = x.shape + x = comfy.ldm.common_dit.pad_to_patch_size(x, self.patch_size) + + if pose_latents is not None: + pose_latents = comfy.ldm.common_dit.pad_to_patch_size(pose_latents, self.patch_size) + + t_len = t + if time_dim_concat is not None: + time_dim_concat = comfy.ldm.common_dit.pad_to_patch_size(time_dim_concat, self.patch_size) + x = torch.cat([x, time_dim_concat], dim=2) + t_len = x.shape[2] + + reference_latent = None + if "reference_latent" in kwargs: + reference_latent = comfy.ldm.common_dit.pad_to_patch_size(kwargs.pop("reference_latent"), self.patch_size) + t_len += reference_latent.shape[2] + + freqs = self.rope_encode(t_len, h, w, device=x.device, dtype=x.dtype, transformer_options=transformer_options, pose_latents=pose_latents, reference_latent=reference_latent) + return self.forward_orig(x, timestep, context, clip_fea=clip_fea, freqs=freqs, transformer_options=transformer_options, pose_latents=pose_latents, reference_latent=reference_latent, **kwargs)[:, :, :t, :h, :w] diff --git a/comfy/model_base.py b/comfy/model_base.py index fedc38b12..3783dc88c 100644 --- a/comfy/model_base.py +++ b/comfy/model_base.py @@ -76,6 +76,7 @@ class ModelType(Enum): FLUX = 8 IMG_TO_IMG = 9 FLOW_COSMOS = 10 + IMG_TO_IMG_FLOW = 11 def model_sampling(model_config, model_type): @@ -108,6 +109,8 @@ def model_sampling(model_config, model_type): elif model_type == ModelType.FLOW_COSMOS: c = comfy.model_sampling.COSMOS_RFLOW s = comfy.model_sampling.ModelSamplingCosmosRFlow + elif model_type == ModelType.IMG_TO_IMG_FLOW: + c = comfy.model_sampling.IMG_TO_IMG_FLOW class ModelSampling(s, c): def __reduce__(self): @@ -998,6 +1001,10 @@ class LTXV(BaseModel): if keyframe_idxs is not None: out['keyframe_idxs'] = comfy.conds.CONDRegular(keyframe_idxs) + guide_attention_entries = kwargs.get("guide_attention_entries", None) + if guide_attention_entries is not None: + out['guide_attention_entries'] = comfy.conds.CONDConstant(guide_attention_entries) + return out def process_timestep(self, timestep, x, denoise_mask=None, **kwargs): @@ -1050,6 +1057,10 @@ class LTXAV(BaseModel): if latent_shapes is not None: out['latent_shapes'] = comfy.conds.CONDConstant(latent_shapes) + guide_attention_entries = kwargs.get("guide_attention_entries", None) + if guide_attention_entries is not None: + out['guide_attention_entries'] = comfy.conds.CONDConstant(guide_attention_entries) + return out def process_timestep(self, timestep, x, denoise_mask=None, audio_denoise_mask=None, **kwargs): @@ -1493,6 +1504,50 @@ class WAN22(WAN21): def scale_latent_inpaint(self, sigma, noise, latent_image, **kwargs): return latent_image +class WAN21_FlowRVS(WAN21): + def __init__(self, model_config, model_type=ModelType.IMG_TO_IMG_FLOW, image_to_video=False, device=None): + model_config.unet_config["model_type"] = "t2v" + super(WAN21, self).__init__(model_config, model_type, device=device, unet_model=comfy.ldm.wan.model.WanModel) + self.image_to_video = image_to_video + +class WAN21_SCAIL(WAN21): + def __init__(self, model_config, model_type=ModelType.FLOW, image_to_video=False, device=None): + super(WAN21, self).__init__(model_config, model_type, device=device, unet_model=comfy.ldm.wan.model.SCAILWanModel) + self.memory_usage_factor_conds = ("reference_latent", "pose_latents") + self.memory_usage_shape_process = {"pose_latents": lambda shape: [shape[0], shape[1], 1.5, shape[-2], shape[-1]]} + self.image_to_video = image_to_video + + def extra_conds(self, **kwargs): + out = super().extra_conds(**kwargs) + + reference_latents = kwargs.get("reference_latents", None) + if reference_latents is not None: + ref_latent = self.process_latent_in(reference_latents[-1]) + ref_mask = torch.ones_like(ref_latent[:, :4]) + ref_latent = torch.cat([ref_latent, ref_mask], dim=1) + out['reference_latent'] = comfy.conds.CONDRegular(ref_latent) + + pose_latents = kwargs.get("pose_video_latent", None) + if pose_latents is not None: + pose_latents = self.process_latent_in(pose_latents) + pose_mask = torch.ones_like(pose_latents[:, :4]) + pose_latents = torch.cat([pose_latents, pose_mask], dim=1) + out['pose_latents'] = comfy.conds.CONDRegular(pose_latents) + + return out + + def extra_conds_shapes(self, **kwargs): + out = {} + ref_latents = kwargs.get("reference_latents", None) + if ref_latents is not None: + out['reference_latent'] = list([1, 20, sum(map(lambda a: math.prod(a.size()), ref_latents)) // 16]) + + pose_latents = kwargs.get("pose_video_latent", None) + if pose_latents is not None: + out['pose_latents'] = [pose_latents.shape[0], 20, *pose_latents.shape[2:]] + + return out + class Hunyuan3Dv2(BaseModel): def __init__(self, model_config, model_type=ModelType.FLOW, device=None): super().__init__(model_config, model_type, device=device, unet_model=comfy.ldm.hunyuan3d.model.Hunyuan3Dv2) diff --git a/comfy/model_detection.py b/comfy/model_detection.py index 8a1d8ea4d..9f4a26e61 100644 --- a/comfy/model_detection.py +++ b/comfy/model_detection.py @@ -423,7 +423,7 @@ def detect_unet_config(state_dict, key_prefix, metadata=None): dit_config["extra_per_block_abs_pos_emb_type"] = "learnable" return dit_config - if '{}cap_embedder.1.weight'.format(key_prefix) in state_dict_keys: # Lumina 2 + if '{}cap_embedder.1.weight'.format(key_prefix) in state_dict_keys and '{}noise_refiner.0.attention.k_norm.weight'.format(key_prefix) in state_dict_keys: # Lumina 2 dit_config = {} dit_config["image_model"] = "lumina2" dit_config["patch_size"] = 2 @@ -498,6 +498,8 @@ def detect_unet_config(state_dict, key_prefix, metadata=None): dit_config["model_type"] = "humo" elif '{}face_adapter.fuser_blocks.0.k_norm.weight'.format(key_prefix) in state_dict_keys: dit_config["model_type"] = "animate" + elif '{}patch_embedding_pose.weight'.format(key_prefix) in state_dict_keys: + dit_config["model_type"] = "scail" else: if '{}img_emb.proj.0.bias'.format(key_prefix) in state_dict_keys: dit_config["model_type"] = "i2v" @@ -531,8 +533,7 @@ def detect_unet_config(state_dict, key_prefix, metadata=None): dit_config["guidance_embed"] = "{}guidance_in.in_layer.weight".format(key_prefix) in state_dict_keys return dit_config - if f"{key_prefix}t_embedder.mlp.2.weight" in state_dict_keys: # Hunyuan 3D 2.1 - + if f"{key_prefix}t_embedder.mlp.2.weight" in state_dict_keys and f"{key_prefix}blocks.0.attn1.k_norm.weight" in state_dict_keys: # Hunyuan 3D 2.1 dit_config = {} dit_config["image_model"] = "hunyuan3d2_1" dit_config["in_channels"] = state_dict[f"{key_prefix}x_embedder.weight"].shape[1] @@ -1053,6 +1054,13 @@ def convert_diffusers_mmdit(state_dict, output_prefix=""): elif 'adaln_single.emb.timestep_embedder.linear_1.bias' in state_dict and 'pos_embed.proj.bias' in state_dict: # PixArt num_blocks = count_blocks(state_dict, 'transformer_blocks.{}.') sd_map = comfy.utils.pixart_to_diffusers({"depth": num_blocks}, output_prefix=output_prefix) + elif 'noise_refiner.0.attention.norm_k.weight' in state_dict: + n_layers = count_blocks(state_dict, 'layers.{}.') + dim = state_dict['noise_refiner.0.attention.to_k.weight'].shape[0] + sd_map = comfy.utils.z_image_to_diffusers({"n_layers": n_layers, "dim": dim}, output_prefix=output_prefix) + for k in state_dict: # For zeta chroma + if k not in sd_map: + sd_map[k] = k elif 'x_embedder.weight' in state_dict: #Flux depth = count_blocks(state_dict, 'transformer_blocks.{}.') depth_single_blocks = count_blocks(state_dict, 'single_transformer_blocks.{}.') diff --git a/comfy/model_management.py b/comfy/model_management.py index eed83f2fe..a762b4134 100644 --- a/comfy/model_management.py +++ b/comfy/model_management.py @@ -180,6 +180,14 @@ def is_ixuca(): return True return False +def is_wsl(): + version = platform.uname().release + if version.endswith("-Microsoft"): + return True + elif version.endswith("microsoft-standard-WSL2"): + return True + return False + def get_torch_device(): global directml_enabled global cpu_state @@ -649,12 +657,11 @@ def free_memory(memory_required, device, keep_loaded=[], for_dynamic=False, ram_ if not DISABLE_SMART_MEMORY: memory_to_free = memory_required - get_free_memory(device) ram_to_free = ram_required - get_free_ram() - - if current_loaded_models[i].model.is_dynamic() and for_dynamic: - #don't actually unload dynamic models for the sake of other dynamic models - #as that works on-demand. - memory_required -= current_loaded_models[i].model.loaded_size() - memory_to_free = 0 + if current_loaded_models[i].model.is_dynamic() and for_dynamic: + #don't actually unload dynamic models for the sake of other dynamic models + #as that works on-demand. + memory_required -= current_loaded_models[i].model.loaded_size() + memory_to_free = 0 if memory_to_free > 0 and current_loaded_models[i].model_unload(memory_to_free): logging.debug(f"Unloading {current_loaded_models[i].model.model.__class__.__name__}") unloaded_model.append(i) diff --git a/comfy/model_patcher.py b/comfy/model_patcher.py index 1c9ba8096..3fc76d9db 100644 --- a/comfy/model_patcher.py +++ b/comfy/model_patcher.py @@ -308,15 +308,22 @@ class ModelPatcher: def get_free_memory(self, device): return comfy.model_management.get_free_memory(device) - def clone(self, disable_dynamic=False): + def get_clone_model_override(self): + return self.model, (self.backup, self.object_patches_backup, self.pinned) + + def clone(self, disable_dynamic=False, model_override=None): class_ = self.__class__ - model = self.model if self.is_dynamic() and disable_dynamic: class_ = ModelPatcher - temp_model_patcher = self.cached_patcher_init[0](*self.cached_patcher_init[1], disable_dynamic=True) - model = temp_model_patcher.model + if model_override is None: + if self.cached_patcher_init is None: + raise RuntimeError("Cannot create non-dynamic delegate: cached_patcher_init is not initialized.") + temp_model_patcher = self.cached_patcher_init[0](*self.cached_patcher_init[1], disable_dynamic=True) + model_override = temp_model_patcher.get_clone_model_override() + if model_override is None: + model_override = self.get_clone_model_override() - n = class_(model, self.load_device, self.offload_device, self.model_size(), weight_inplace_update=self.weight_inplace_update) + n = class_(model_override[0], self.load_device, self.offload_device, self.model_size(), weight_inplace_update=self.weight_inplace_update) n.patches = {} for k in self.patches: n.patches[k] = self.patches[k][:] @@ -325,13 +332,12 @@ class ModelPatcher: n.object_patches = self.object_patches.copy() n.weight_wrapper_patches = self.weight_wrapper_patches.copy() n.model_options = comfy.utils.deepcopy_list_dict(self.model_options) - n.backup = self.backup - n.object_patches_backup = self.object_patches_backup n.parent = self - n.pinned = self.pinned n.force_cast_weights = self.force_cast_weights + n.backup, n.object_patches_backup, n.pinned = model_override[1] + # attachments n.attachments = {} for k in self.attachments: @@ -1435,6 +1441,7 @@ class ModelPatcherDynamic(ModelPatcher): del self.model.model_loaded_weight_memory if not hasattr(self.model, "dynamic_vbars"): self.model.dynamic_vbars = {} + self.non_dynamic_delegate_model = None assert load_device is not None def is_dynamic(self): @@ -1669,4 +1676,10 @@ class ModelPatcherDynamic(ModelPatcher): def unpatch_hooks(self, whitelist_keys_set: set[str]=None) -> None: pass + def get_non_dynamic_delegate(self): + model_patcher = self.clone(disable_dynamic=True, model_override=self.non_dynamic_delegate_model) + self.non_dynamic_delegate_model = model_patcher.get_clone_model_override() + return model_patcher + + CoreModelPatcher = ModelPatcher diff --git a/comfy/sampler_helpers.py b/comfy/sampler_helpers.py index 1f75f2ba7..bbba09e26 100644 --- a/comfy/sampler_helpers.py +++ b/comfy/sampler_helpers.py @@ -66,6 +66,18 @@ def convert_cond(cond): out.append(temp) return out +def cond_has_hooks(cond): + for c in cond: + temp = c[1] + if "hooks" in temp: + return True + if "control" in temp: + control = temp["control"] + extra_hooks = control.get_extra_hooks() + if len(extra_hooks) > 0: + return True + return False + def get_additional_models(conds, dtype): """loads additional models in conditioning""" cnets: list[ControlBase] = [] diff --git a/comfy/samplers.py b/comfy/samplers.py index b9aa8e175..8c1d4cc61 100755 --- a/comfy/samplers.py +++ b/comfy/samplers.py @@ -982,6 +982,8 @@ class CFGGuider: def inner_set_conds(self, conds): for k in conds: + if self.model_patcher.is_dynamic() and comfy.sampler_helpers.cond_has_hooks(conds[k]): + self.model_patcher = self.model_patcher.get_non_dynamic_delegate() self.original_conds[k] = comfy.sampler_helpers.convert_cond(conds[k]) def __call__(self, *args, **kwargs): diff --git a/comfy/sd.py b/comfy/sd.py index 7713d4678..a9ad7c2d2 100644 --- a/comfy/sd.py +++ b/comfy/sd.py @@ -204,7 +204,7 @@ def load_bypass_lora_for_models(model, clip, lora, strength_model, strength_clip class CLIP: - def __init__(self, target=None, embedding_directory=None, no_init=False, tokenizer_data={}, parameters=0, state_dict=[], model_options={}): + def __init__(self, target=None, embedding_directory=None, no_init=False, tokenizer_data={}, parameters=0, state_dict=[], model_options={}, disable_dynamic=False): if no_init: return params = target.params.copy() @@ -233,7 +233,8 @@ class CLIP: model_management.archive_model_dtypes(self.cond_stage_model) self.tokenizer = tokenizer(embedding_directory=embedding_directory, tokenizer_data=tokenizer_data) - self.patcher = comfy.model_patcher.CoreModelPatcher(self.cond_stage_model, load_device=load_device, offload_device=offload_device) + ModelPatcher = comfy.model_patcher.ModelPatcher if disable_dynamic else comfy.model_patcher.CoreModelPatcher + self.patcher = ModelPatcher(self.cond_stage_model, load_device=load_device, offload_device=offload_device) #Match torch.float32 hardcode upcast in TE implemention self.patcher.set_model_compute_dtype(torch.float32) self.patcher.hook_mode = comfy.hooks.EnumHookMode.MinVram @@ -267,9 +268,9 @@ class CLIP: logging.info("CLIP/text encoder model load device: {}, offload device: {}, current: {}, dtype: {}".format(load_device, offload_device, params['device'], dtype)) self.tokenizer_options = {} - def clone(self): + def clone(self, disable_dynamic=False): n = CLIP(no_init=True) - n.patcher = self.patcher.clone() + n.patcher = self.patcher.clone(disable_dynamic=disable_dynamic) n.cond_stage_model = self.cond_stage_model n.tokenizer = self.tokenizer n.layer_idx = self.layer_idx @@ -1164,14 +1165,21 @@ class CLIPType(Enum): LONGCAT_IMAGE = 26 -def load_clip(ckpt_paths, embedding_directory=None, clip_type=CLIPType.STABLE_DIFFUSION, model_options={}): + +def load_clip_model_patcher(ckpt_paths, embedding_directory=None, clip_type=CLIPType.STABLE_DIFFUSION, model_options={}, disable_dynamic=False): + clip = load_clip(ckpt_paths, embedding_directory, clip_type, model_options, disable_dynamic) + return clip.patcher + +def load_clip(ckpt_paths, embedding_directory=None, clip_type=CLIPType.STABLE_DIFFUSION, model_options={}, disable_dynamic=False): clip_data = [] for p in ckpt_paths: sd, metadata = comfy.utils.load_torch_file(p, safe_load=True, return_metadata=True) if model_options.get("custom_operations", None) is None: sd, metadata = comfy.utils.convert_old_quants(sd, model_prefix="", metadata=metadata) clip_data.append(sd) - return load_text_encoder_state_dicts(clip_data, embedding_directory=embedding_directory, clip_type=clip_type, model_options=model_options) + clip = load_text_encoder_state_dicts(clip_data, embedding_directory=embedding_directory, clip_type=clip_type, model_options=model_options, disable_dynamic=disable_dynamic) + clip.patcher.cached_patcher_init = (load_clip_model_patcher, (ckpt_paths, embedding_directory, clip_type, model_options)) + return clip class TEModel(Enum): @@ -1276,7 +1284,7 @@ def llama_detect(clip_data): return {} -def load_text_encoder_state_dicts(state_dicts=[], embedding_directory=None, clip_type=CLIPType.STABLE_DIFFUSION, model_options={}): +def load_text_encoder_state_dicts(state_dicts=[], embedding_directory=None, clip_type=CLIPType.STABLE_DIFFUSION, model_options={}, disable_dynamic=False): clip_data = state_dicts class EmptyClass: @@ -1496,7 +1504,7 @@ def load_text_encoder_state_dicts(state_dicts=[], embedding_directory=None, clip parameters += comfy.utils.calculate_parameters(c) tokenizer_data, model_options = comfy.text_encoders.long_clipl.model_options_long_clip(c, tokenizer_data, model_options) - clip = CLIP(clip_target, embedding_directory=embedding_directory, parameters=parameters, tokenizer_data=tokenizer_data, state_dict=clip_data, model_options=model_options) + clip = CLIP(clip_target, embedding_directory=embedding_directory, parameters=parameters, tokenizer_data=tokenizer_data, state_dict=clip_data, model_options=model_options, disable_dynamic=disable_dynamic) return clip def load_gligen(ckpt_path): @@ -1541,8 +1549,10 @@ def load_checkpoint_guess_config(ckpt_path, output_vae=True, output_clip=True, o out = load_state_dict_guess_config(sd, output_vae, output_clip, output_clipvision, embedding_directory, output_model, model_options, te_model_options=te_model_options, metadata=metadata, disable_dynamic=disable_dynamic) if out is None: raise RuntimeError("ERROR: Could not detect model type of: {}\n{}".format(ckpt_path, model_detection_error_hint(ckpt_path, sd))) - if output_model: + if output_model and out[0] is not None: out[0].cached_patcher_init = (load_checkpoint_guess_config_model_only, (ckpt_path, embedding_directory, model_options, te_model_options)) + if output_clip and out[1] is not None: + out[1].patcher.cached_patcher_init = (load_checkpoint_guess_config_clip_only, (ckpt_path, embedding_directory, model_options, te_model_options)) return out def load_checkpoint_guess_config_model_only(ckpt_path, embedding_directory=None, model_options={}, te_model_options={}, disable_dynamic=False): @@ -1553,6 +1563,14 @@ def load_checkpoint_guess_config_model_only(ckpt_path, embedding_directory=None, disable_dynamic=disable_dynamic) return model +def load_checkpoint_guess_config_clip_only(ckpt_path, embedding_directory=None, model_options={}, te_model_options={}, disable_dynamic=False): + _, clip, *_ = load_checkpoint_guess_config(ckpt_path, False, True, False, + embedding_directory=embedding_directory, output_model=False, + model_options=model_options, + te_model_options=te_model_options, + disable_dynamic=disable_dynamic) + return clip.patcher + def load_state_dict_guess_config(sd, output_vae=True, output_clip=True, output_clipvision=False, embedding_directory=None, output_model=True, model_options={}, te_model_options={}, metadata=None, disable_dynamic=False): clip = None clipvision = None @@ -1638,7 +1656,7 @@ def load_state_dict_guess_config(sd, output_vae=True, output_clip=True, output_c clip_sd = model_config.process_clip_state_dict(sd) if len(clip_sd) > 0: parameters = comfy.utils.calculate_parameters(clip_sd) - clip = CLIP(clip_target, embedding_directory=embedding_directory, tokenizer_data=clip_sd, parameters=parameters, state_dict=clip_sd, model_options=te_model_options) + clip = CLIP(clip_target, embedding_directory=embedding_directory, tokenizer_data=clip_sd, parameters=parameters, state_dict=clip_sd, model_options=te_model_options, disable_dynamic=disable_dynamic) else: logging.warning("no CLIP/text encoder weights in checkpoint, the text encoder model will not be loaded.") diff --git a/comfy/supported_models.py b/comfy/supported_models.py index 473fbbfd4..4f63e8327 100644 --- a/comfy/supported_models.py +++ b/comfy/supported_models.py @@ -1268,6 +1268,16 @@ class WAN21_FlowRVS(WAN21_T2V): out = model_base.WAN21_FlowRVS(self, image_to_video=True, device=device) return out +class WAN21_SCAIL(WAN21_T2V): + unet_config = { + "image_model": "wan2.1", + "model_type": "scail", + } + + def get_model(self, state_dict, prefix="", device=None): + out = model_base.WAN21_SCAIL(self, image_to_video=False, device=device) + return out + class Hunyuan3Dv2(supported_models_base.BASE): unet_config = { "image_model": "hunyuan3d2", @@ -1710,6 +1720,6 @@ class LongCatImage(supported_models_base.BASE): hunyuan_detect = comfy.text_encoders.hunyuan_video.llama_detect(state_dict, "{}qwen25_7b.transformer.".format(pref)) return supported_models_base.ClipTarget(comfy.text_encoders.longcat_image.LongCatImageTokenizer, comfy.text_encoders.longcat_image.te(**hunyuan_detect)) -models = [LotusD, Stable_Zero123, SD15_instructpix2pix, SD15, SD20, SD21UnclipL, SD21UnclipH, SDXL_instructpix2pix, SDXLRefiner, SDXL, SSD1B, KOALA_700M, KOALA_1B, Segmind_Vega, SD_X4Upscaler, Stable_Cascade_C, Stable_Cascade_B, SV3D_u, SV3D_p, SD3, StableAudio, AuraFlow, PixArtAlpha, PixArtSigma, HunyuanDiT, HunyuanDiT1, FluxInpaint, Flux, LongCatImage, FluxSchnell, GenmoMochi, LTXV, LTXAV, HunyuanVideo15_SR_Distilled, HunyuanVideo15, HunyuanImage21Refiner, HunyuanImage21, HunyuanVideoSkyreelsI2V, HunyuanVideoI2V, HunyuanVideo, CosmosT2V, CosmosI2V, CosmosT2IPredict2, CosmosI2VPredict2, ZImage, Lumina2, WAN22_T2V, WAN21_T2V, WAN21_I2V, WAN21_FunControl2V, WAN21_Vace, WAN21_Camera, WAN22_Camera, WAN22_S2V, WAN21_HuMo, WAN22_Animate, WAN21_FlowRVS, Hunyuan3Dv2mini, Hunyuan3Dv2, Hunyuan3Dv2_1, HiDream, Chroma, ChromaRadiance, ACEStep, ACEStep15, Omnigen2, QwenImage, Flux2, Kandinsky5Image, Kandinsky5, Anima] +models = [LotusD, Stable_Zero123, SD15_instructpix2pix, SD15, SD20, SD21UnclipL, SD21UnclipH, SDXL_instructpix2pix, SDXLRefiner, SDXL, SSD1B, KOALA_700M, KOALA_1B, Segmind_Vega, SD_X4Upscaler, Stable_Cascade_C, Stable_Cascade_B, SV3D_u, SV3D_p, SD3, StableAudio, AuraFlow, PixArtAlpha, PixArtSigma, HunyuanDiT, HunyuanDiT1, FluxInpaint, Flux, LongCatImage, FluxSchnell, GenmoMochi, LTXV, LTXAV, HunyuanVideo15_SR_Distilled, HunyuanVideo15, HunyuanImage21Refiner, HunyuanImage21, HunyuanVideoSkyreelsI2V, HunyuanVideoI2V, HunyuanVideo, CosmosT2V, CosmosI2V, CosmosT2IPredict2, CosmosI2VPredict2, ZImage, Lumina2, WAN22_T2V, WAN21_T2V, WAN21_I2V, WAN21_FunControl2V, WAN21_Vace, WAN21_Camera, WAN22_Camera, WAN22_S2V, WAN21_HuMo, WAN22_Animate, WAN21_FlowRVS, WAN21_SCAIL, Hunyuan3Dv2mini, Hunyuan3Dv2, Hunyuan3Dv2_1, HiDream, Chroma, ChromaRadiance, ACEStep, ACEStep15, Omnigen2, QwenImage, Flux2, Kandinsky5Image, Kandinsky5, Anima] models += [SVD_img2vid] diff --git a/comfy_api_nodes/nodes_gemini.py b/comfy_api_nodes/nodes_gemini.py index 3fe804e0b..d83d2fc15 100644 --- a/comfy_api_nodes/nodes_gemini.py +++ b/comfy_api_nodes/nodes_gemini.py @@ -789,8 +789,6 @@ class GeminiImage2(IO.ComfyNode): validate_string(prompt, strip_whitespace=True, min_length=1) if model == "Nano Banana 2 (Gemini 3.1 Flash Image)": model = "gemini-3.1-flash-image-preview" - if response_modalities == "IMAGE+TEXT": - raise ValueError("IMAGE+TEXT is not currently available for the Nano Banana 2 model.") parts: list[GeminiPart] = [GeminiPart(text=prompt)] if images is not None: @@ -895,7 +893,7 @@ class GeminiNanoBanana2(IO.ComfyNode): ), IO.Combo.Input( "response_modalities", - options=["IMAGE"], + options=["IMAGE", "IMAGE+TEXT"], advanced=True, ), IO.Combo.Input( @@ -925,6 +923,7 @@ class GeminiNanoBanana2(IO.ComfyNode): ], outputs=[ IO.Image.Output(), + IO.String.Output(), ], hidden=[ IO.Hidden.auth_token_comfy_org, diff --git a/comfy_execution/jobs.py b/comfy_execution/jobs.py index 370014fb6..fcd7ef735 100644 --- a/comfy_execution/jobs.py +++ b/comfy_execution/jobs.py @@ -20,7 +20,7 @@ class JobStatus: # Media types that can be previewed in the frontend -PREVIEWABLE_MEDIA_TYPES = frozenset({'images', 'video', 'audio', '3d'}) +PREVIEWABLE_MEDIA_TYPES = frozenset({'images', 'video', 'audio', '3d', 'text'}) # 3D file extensions for preview fallback (no dedicated media_type exists) THREE_D_EXTENSIONS = frozenset({'.obj', '.fbx', '.gltf', '.glb', '.usdz'}) @@ -75,6 +75,23 @@ def normalize_outputs(outputs: dict) -> dict: normalized[node_id] = normalized_node return normalized +# Text preview truncation limit (1024 characters) to prevent preview_output bloat +TEXT_PREVIEW_MAX_LENGTH = 1024 + + +def _create_text_preview(value: str) -> dict: + """Create a text preview dict with optional truncation. + + Returns: + dict with 'content' and optionally 'truncated' flag + """ + if len(value) <= TEXT_PREVIEW_MAX_LENGTH: + return {'content': value} + return { + 'content': value[:TEXT_PREVIEW_MAX_LENGTH], + 'truncated': True + } + def _extract_job_metadata(extra_data: dict) -> tuple[Optional[int], Optional[str]]: """Extract create_time and workflow_id from extra_data. @@ -221,23 +238,43 @@ def get_outputs_summary(outputs: dict) -> tuple[int, Optional[dict]]: continue for item in items: - normalized = normalize_output_item(item) - if normalized is None: - continue + if not isinstance(item, dict): + # Handle text outputs (non-dict items like strings or tuples) + normalized = normalize_output_item(item) + if normalized is None: + # Not a 3D file string — check for text preview + if media_type == 'text': + count += 1 + if preview_output is None: + if isinstance(item, tuple): + text_value = item[0] if item else '' + else: + text_value = str(item) + text_preview = _create_text_preview(text_value) + enriched = { + **text_preview, + 'nodeId': node_id, + 'mediaType': media_type + } + if fallback_preview is None: + fallback_preview = enriched + continue + # normalize_output_item returned a dict (e.g. 3D file) + item = normalized count += 1 if preview_output is not None: continue - if isinstance(normalized, dict) and is_previewable(media_type, normalized): + if is_previewable(media_type, item): enriched = { - **normalized, + **item, 'nodeId': node_id, } - if 'mediaType' not in normalized: + if 'mediaType' not in item: enriched['mediaType'] = media_type - if normalized.get('type') == 'output': + if item.get('type') == 'output': preview_output = enriched elif fallback_preview is None: fallback_preview = enriched diff --git a/comfy_extras/nodes_hooks.py b/comfy_extras/nodes_hooks.py index be7d600cd..056369e86 100644 --- a/comfy_extras/nodes_hooks.py +++ b/comfy_extras/nodes_hooks.py @@ -248,7 +248,7 @@ class SetClipHooks: def apply_hooks(self, clip: CLIP, schedule_clip: bool, apply_to_conds: bool, hooks: comfy.hooks.HookGroup=None): if hooks is not None: - clip = clip.clone() + clip = clip.clone(disable_dynamic=True) if apply_to_conds: clip.apply_hooks_to_conds = hooks clip.patcher.forced_hooks = hooks.clone() diff --git a/comfy_extras/nodes_mahiro.py b/comfy_extras/nodes_mahiro.py index 6459ca8c1..a25226e6d 100644 --- a/comfy_extras/nodes_mahiro.py +++ b/comfy_extras/nodes_mahiro.py @@ -10,7 +10,7 @@ class Mahiro(io.ComfyNode): def define_schema(cls): return io.Schema( node_id="Mahiro", - display_name="Mahiro CFG", + display_name="Positive-Biased Guidance", category="_for_testing", description="Modify the guidance to scale more on the 'direction' of the positive prompt rather than the difference between the negative prompt.", inputs=[ @@ -20,27 +20,35 @@ class Mahiro(io.ComfyNode): io.Model.Output(display_name="patched_model"), ], is_experimental=True, + search_aliases=[ + "mahiro", + "mahiro cfg", + "similarity-adaptive guidance", + "positive-biased cfg", + ], ) @classmethod def execute(cls, model) -> io.NodeOutput: m = model.clone() + def mahiro_normd(args): - scale: float = args['cond_scale'] - cond_p: torch.Tensor = args['cond_denoised'] - uncond_p: torch.Tensor = args['uncond_denoised'] - #naive leap + scale: float = args["cond_scale"] + cond_p: torch.Tensor = args["cond_denoised"] + uncond_p: torch.Tensor = args["uncond_denoised"] + # naive leap leap = cond_p * scale - #sim with uncond leap + # sim with uncond leap u_leap = uncond_p * scale cfg = args["denoised"] merge = (leap + cfg) / 2 normu = torch.sqrt(u_leap.abs()) * u_leap.sign() normm = torch.sqrt(merge.abs()) * merge.sign() sim = F.cosine_similarity(normu, normm).mean() - simsc = 2 * (sim+1) - wm = (simsc*cfg + (4-simsc)*leap) / 4 + simsc = 2 * (sim + 1) + wm = (simsc * cfg + (4 - simsc) * leap) / 4 return wm + m.set_model_sampler_post_cfg_function(mahiro_normd) return io.NodeOutput(m) diff --git a/comfy_extras/nodes_wan.py b/comfy_extras/nodes_wan.py index effa994d1..e50bfcd2c 100644 --- a/comfy_extras/nodes_wan.py +++ b/comfy_extras/nodes_wan.py @@ -1456,6 +1456,63 @@ class WanInfiniteTalkToVideo(io.ComfyNode): return io.NodeOutput(model_patched, positive, negative, out_latent, trim_image) +class WanSCAILToVideo(io.ComfyNode): + @classmethod + def define_schema(cls): + return io.Schema( + node_id="WanSCAILToVideo", + category="conditioning/video_models", + inputs=[ + io.Conditioning.Input("positive"), + io.Conditioning.Input("negative"), + io.Vae.Input("vae"), + io.Int.Input("width", default=512, min=32, max=nodes.MAX_RESOLUTION, step=32), + io.Int.Input("height", default=896, min=32, max=nodes.MAX_RESOLUTION, step=32), + io.Int.Input("length", default=81, min=1, max=nodes.MAX_RESOLUTION, step=4), + io.Int.Input("batch_size", default=1, min=1, max=4096), + io.ClipVisionOutput.Input("clip_vision_output", optional=True), + io.Image.Input("reference_image", optional=True), + io.Image.Input("pose_video", optional=True, tooltip="Video used for pose conditioning. Will be downscaled to half the resolution of the main video."), + io.Float.Input("pose_strength", default=1.0, min=0.0, max=10.0, step=0.01, tooltip="Strength of the pose latent."), + io.Float.Input("pose_start", default=0.0, min=0.0, max=1.0, step=0.01, tooltip="Start step to use pose conditioning."), + io.Float.Input("pose_end", default=1.0, min=0.0, max=1.0, step=0.01, tooltip="End step to use pose conditioning."), + ], + outputs=[ + io.Conditioning.Output(display_name="positive"), + io.Conditioning.Output(display_name="negative"), + io.Latent.Output(display_name="latent", tooltip="Empty latent of the generation size."), + ], + is_experimental=True, + ) + + @classmethod + def execute(cls, positive, negative, vae, width, height, length, batch_size, pose_strength, pose_start, pose_end, reference_image=None, clip_vision_output=None, pose_video=None) -> io.NodeOutput: + latent = torch.zeros([batch_size, 16, ((length - 1) // 4) + 1, height // 8, width // 8], device=comfy.model_management.intermediate_device()) + + ref_latent = None + if reference_image is not None: + reference_image = comfy.utils.common_upscale(reference_image[:1].movedim(-1, 1), width, height, "bilinear", "center").movedim(1, -1) + ref_latent = vae.encode(reference_image[:, :, :, :3]) + + if ref_latent is not None: + positive = node_helpers.conditioning_set_values(positive, {"reference_latents": [ref_latent]}, append=True) + negative = node_helpers.conditioning_set_values(negative, {"reference_latents": [torch.zeros_like(ref_latent)]}, append=True) + + if clip_vision_output is not None: + positive = node_helpers.conditioning_set_values(positive, {"clip_vision_output": clip_vision_output}) + negative = node_helpers.conditioning_set_values(negative, {"clip_vision_output": clip_vision_output}) + + if pose_video is not None: + pose_video = comfy.utils.common_upscale(pose_video[:length].movedim(-1, 1), width // 2, height // 2, "area", "center").movedim(1, -1) + pose_video_latent = vae.encode(pose_video[:, :, :, :3]) * pose_strength + positive = node_helpers.conditioning_set_values_with_timestep_range(positive, {"pose_video_latent": pose_video_latent}, pose_start, pose_end) + negative = node_helpers.conditioning_set_values_with_timestep_range(negative, {"pose_video_latent": pose_video_latent}, pose_start, pose_end) + + out_latent = {} + out_latent["samples"] = latent + return io.NodeOutput(positive, negative, out_latent) + + class WanExtension(ComfyExtension): @override async def get_node_list(self) -> list[type[io.ComfyNode]]: @@ -1476,6 +1533,7 @@ class WanExtension(ComfyExtension): WanAnimateToVideo, Wan22ImageToVideoLatent, WanInfiniteTalkToVideo, + WanSCAILToVideo, ] async def comfy_entrypoint() -> WanExtension: diff --git a/execution.py b/execution.py index d0e457f11..aceb75340 100644 --- a/execution.py +++ b/execution.py @@ -43,6 +43,8 @@ from comfy_execution.utils import CurrentNodeContext from comfy_api.internal import _ComfyNodeInternal, _NodeOutputInternal, first_real_override, is_class, make_locked_method_func from comfy_api.latest import io, _io +_AIMDO_VBAR_RESET_UNAVAILABLE_LOGGED = False + class ExecutionResult(Enum): SUCCESS = 0 @@ -540,7 +542,17 @@ async def execute(server, dynprompt, caches, current_item, extra_data, executed, if args.verbose == "DEBUG": comfy_aimdo.control.analyze() comfy.model_management.reset_cast_buffers() - comfy_aimdo.model_vbar.vbars_reset_watermark_limits() + vbar_lib = getattr(comfy_aimdo.model_vbar, "lib", None) + if vbar_lib is not None: + comfy_aimdo.model_vbar.vbars_reset_watermark_limits() + else: + global _AIMDO_VBAR_RESET_UNAVAILABLE_LOGGED + if not _AIMDO_VBAR_RESET_UNAVAILABLE_LOGGED: + logging.warning( + "DynamicVRAM backend unavailable for watermark reset; " + "skipping vbar reset for this process." + ) + _AIMDO_VBAR_RESET_UNAVAILABLE_LOGGED = True if has_pending_tasks: pending_async_nodes[unique_id] = output_data diff --git a/main.py b/main.py index 9c8227100..4bc2ccb79 100644 --- a/main.py +++ b/main.py @@ -25,6 +25,15 @@ from app.assets.scanner import seed_assets import itertools import logging +import comfy_aimdo.control + +if enables_dynamic_vram(): + if not comfy_aimdo.control.init(): + logging.warning( + "DynamicVRAM requested, but comfy-aimdo failed to initialize early. " + "Will fall back to legacy model loading if device init fails." + ) + if '--use-process-isolation' in sys.argv: from comfy.isolation import initialize_proxies initialize_proxies() @@ -208,11 +217,6 @@ import gc if 'torch' in sys.modules: logging.warning("WARNING: Potential Error in code: Torch already imported, torch should never be imported before this point.") -import comfy_aimdo.control - -if enables_dynamic_vram(): - comfy_aimdo.control.init() - import comfy.utils if not IS_PYISOLATE_CHILD: @@ -228,7 +232,7 @@ if not IS_PYISOLATE_CHILD: import comfy.memory_management import comfy.model_patcher -if enables_dynamic_vram(): +if enables_dynamic_vram() and comfy.model_management.is_nvidia() and not comfy.model_management.is_wsl(): if comfy.model_management.torch_version_numeric < (2, 8): logging.warning("Unsupported Pytorch detected. DynamicVRAM support requires Pytorch version 2.8 or later. Falling back to legacy ModelPatcher. VRAM estimates may be unreliable especially on Windows") elif comfy_aimdo.control.init_device(comfy.model_management.get_torch_device().index): diff --git a/node_helpers.py b/node_helpers.py index 4ff960ef8..d3d834516 100644 --- a/node_helpers.py +++ b/node_helpers.py @@ -1,5 +1,6 @@ import hashlib import torch +import logging from comfy.cli_args import args @@ -21,6 +22,36 @@ def conditioning_set_values(conditioning, values={}, append=False): return c +def conditioning_set_values_with_timestep_range(conditioning, values={}, start_percent=0.0, end_percent=1.0): + """ + Apply values to conditioning only during [start_percent, end_percent], keeping the + original conditioning active outside that range. Respects existing per-entry ranges. + """ + if start_percent > end_percent: + logging.warning(f"start_percent ({start_percent}) must be <= end_percent ({end_percent})") + return conditioning + + EPS = 1e-5 # the sampler gates entries with strict > / <, shift boundaries slightly to ensure only one conditioning is active per timestep + c = [] + for t in conditioning: + cond_start = t[1].get("start_percent", 0.0) + cond_end = t[1].get("end_percent", 1.0) + intersect_start = max(start_percent, cond_start) + intersect_end = min(end_percent, cond_end) + + if intersect_start >= intersect_end: # no overlap: emit unchanged + c.append(t) + continue + + if intersect_start > cond_start: # part before the requested range + c.extend(conditioning_set_values([t], {"start_percent": cond_start, "end_percent": intersect_start - EPS})) + + c.extend(conditioning_set_values([t], {**values, "start_percent": intersect_start, "end_percent": intersect_end})) + + if intersect_end < cond_end: # part after the requested range + c.extend(conditioning_set_values([t], {"start_percent": intersect_end + EPS, "end_percent": cond_end})) + return c + def pillow(fn, arg): prev_value = None try: diff --git a/pyproject.toml b/pyproject.toml index 1b2318273..d3e351a03 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,6 +10,25 @@ homepage = "https://www.comfy.org/" repository = "https://github.com/comfyanonymous/ComfyUI" documentation = "https://docs.comfy.org/" +[tool.comfy.host] +allow_network = false +writable_paths = ["/dev/shm", "/tmp"] + +[tool.comfy.host.whitelist] +"ComfyUI-Crystools" = "*" +"ComfyUI-Florence2" = "*" +"ComfyUI-GGUF" = "*" +"ComfyUI-KJNodes" = "*" +"ComfyUI-LTXVideo" = "*" +"ComfyUI-Manager" = "*" +"comfyui-depthanythingv2" = "*" +"comfyui-kjnodes" = "*" +"comfyui-videohelpersuite" = "*" +"comfyui_controlnet_aux" = "*" +"rgthree-comfy" = "*" +"was-ns" = "*" +"websocket_image_save.py" = "*" + [tool.ruff] lint.select = [ "N805", # invalid-first-argument-name-for-method diff --git a/requirements.txt b/requirements.txt index 7697e8e43..a1c92e51c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ comfyui-frontend-package==1.39.19 -comfyui-workflow-templates==0.9.4 +comfyui-workflow-templates==0.9.5 comfyui-embedded-docs==0.4.3 torch torchsde @@ -22,7 +22,7 @@ alembic SQLAlchemy av>=14.2.0 comfy-kitchen>=0.2.7 -comfy-aimdo>=0.2.2 +comfy-aimdo>=0.2.4 requests #non essential dependencies: diff --git a/tests-unit/app_test/frontend_manager_test.py b/tests-unit/app_test/frontend_manager_test.py index 643f04e72..1d5a84b47 100644 --- a/tests-unit/app_test/frontend_manager_test.py +++ b/tests-unit/app_test/frontend_manager_test.py @@ -49,6 +49,12 @@ def mock_provider(mock_releases): return provider +@pytest.fixture(autouse=True) +def clear_cache(): + import utils.install_util + utils.install_util.PACKAGE_VERSIONS = {} + + def test_get_release(mock_provider, mock_releases): version = "1.0.0" release = mock_provider.get_release(version) diff --git a/tests/execution/test_jobs.py b/tests/execution/test_jobs.py index 83c36fe48..814af5c13 100644 --- a/tests/execution/test_jobs.py +++ b/tests/execution/test_jobs.py @@ -38,13 +38,13 @@ class TestIsPreviewable: """Unit tests for is_previewable()""" def test_previewable_media_types(self): - """Images, video, audio, 3d media types should be previewable.""" - for media_type in ['images', 'video', 'audio', '3d']: + """Images, video, audio, 3d, text media types should be previewable.""" + for media_type in ['images', 'video', 'audio', '3d', 'text']: assert is_previewable(media_type, {}) is True def test_non_previewable_media_types(self): """Other media types should not be previewable.""" - for media_type in ['latents', 'text', 'metadata', 'files']: + for media_type in ['latents', 'metadata', 'files']: assert is_previewable(media_type, {}) is False def test_3d_extensions_previewable(self): diff --git a/utils/install_util.py b/utils/install_util.py index 0f59bcf91..34489aec5 100644 --- a/utils/install_util.py +++ b/utils/install_util.py @@ -1,5 +1,7 @@ from pathlib import Path import sys +import logging +import re # The path to the requirements.txt file requirements_path = Path(__file__).parents[1] / "requirements.txt" @@ -16,3 +18,34 @@ Please install the updated requirements.txt file by running: {sys.executable} {extra}-m pip install -r {requirements_path} If you are on the portable package you can run: update\\update_comfyui.bat to solve this problem. """.strip() + + +def is_valid_version(version: str) -> bool: + """Validate if a string is a valid semantic version (X.Y.Z format).""" + pattern = r"^(\d+)\.(\d+)\.(\d+)$" + return bool(re.match(pattern, version)) + + +PACKAGE_VERSIONS = {} +def get_required_packages_versions(): + if len(PACKAGE_VERSIONS) > 0: + return PACKAGE_VERSIONS.copy() + out = PACKAGE_VERSIONS + try: + with open(requirements_path, "r", encoding="utf-8") as f: + for line in f: + line = line.strip().replace(">=", "==") + s = line.split("==") + if len(s) == 2: + version_str = s[-1] + if not is_valid_version(version_str): + logging.error(f"Invalid version format in requirements.txt: {version_str}") + continue + out[s[0]] = version_str + return out.copy() + except FileNotFoundError: + logging.error("requirements.txt not found.") + return None + except Exception as e: + logging.error(f"Error reading requirements.txt: {e}") + return None