From 9b5a44ce6ed2440a99fb9446aed506ef680813de Mon Sep 17 00:00:00 2001 From: Jedrzej Kosinski Date: Thu, 24 Jul 2025 18:23:29 -0700 Subject: [PATCH] Moved comfy_api.v3 stuff onto comfy_api.latest --- comfy_api/latest/__init__.py | 3 +++ comfy_api/{v3 => latest}/_io.py | 2 +- comfy_api/{v3 => latest}/_resources.py | 0 comfy_api/{v3 => latest}/_ui.py | 2 +- comfy_api/v3/__init__.py | 9 --------- comfy_extras/nodes_v3_test.py | 2 +- comfy_extras/v3/nodes_ace.py | 2 +- comfy_extras/v3/nodes_advanced_samplers.py | 2 +- comfy_extras/v3/nodes_align_your_steps.py | 2 +- comfy_extras/v3/nodes_apg.py | 2 +- comfy_extras/v3/nodes_attention_multiply.py | 2 +- comfy_extras/v3/nodes_audio.py | 2 +- comfy_extras/v3/nodes_camera_trajectory.py | 2 +- comfy_extras/v3/nodes_canny.py | 2 +- comfy_extras/v3/nodes_cfg.py | 2 +- comfy_extras/v3/nodes_clip_sdxl.py | 2 +- comfy_extras/v3/nodes_compositing.py | 2 +- comfy_extras/v3/nodes_cond.py | 2 +- comfy_extras/v3/nodes_controlnet.py | 2 +- comfy_extras/v3/nodes_cosmos.py | 2 +- comfy_extras/v3/nodes_differential_diffusion.py | 2 +- comfy_extras/v3/nodes_edit_model.py | 2 +- comfy_extras/v3/nodes_flux.py | 2 +- comfy_extras/v3/nodes_freelunch.py | 2 +- comfy_extras/v3/nodes_fresca.py | 2 +- comfy_extras/v3/nodes_gits.py | 2 +- comfy_extras/v3/nodes_hidream.py | 2 +- comfy_extras/v3/nodes_hunyuan.py | 2 +- comfy_extras/v3/nodes_hypernetwork.py | 2 +- comfy_extras/v3/nodes_hypertile.py | 2 +- comfy_extras/v3/nodes_images.py | 2 +- comfy_extras/v3/nodes_ip2p.py | 2 +- comfy_extras/v3/nodes_latent.py | 2 +- comfy_extras/v3/nodes_load_3d.py | 2 +- comfy_extras/v3/nodes_lora_extract.py | 2 +- comfy_extras/v3/nodes_lotus.py | 2 +- comfy_extras/v3/nodes_lt.py | 2 +- comfy_extras/v3/nodes_lumina2.py | 2 +- comfy_extras/v3/nodes_mask.py | 2 +- comfy_extras/v3/nodes_mochi.py | 2 +- comfy_extras/v3/nodes_model_advanced.py | 2 +- comfy_extras/v3/nodes_model_downscale.py | 2 +- comfy_extras/v3/nodes_morphology.py | 2 +- comfy_extras/v3/nodes_optimalsteps.py | 2 +- comfy_extras/v3/nodes_pag.py | 2 +- comfy_extras/v3/nodes_perpneg.py | 2 +- comfy_extras/v3/nodes_photomaker.py | 2 +- comfy_extras/v3/nodes_pixart.py | 2 +- comfy_extras/v3/nodes_post_processing.py | 2 +- comfy_extras/v3/nodes_preview_any.py | 2 +- comfy_extras/v3/nodes_primitive.py | 2 +- comfy_extras/v3/nodes_rebatch.py | 2 +- comfy_extras/v3/nodes_sag.py | 2 +- comfy_extras/v3/nodes_sd3.py | 2 +- comfy_extras/v3/nodes_sdupscale.py | 2 +- comfy_extras/v3/nodes_slg.py | 2 +- comfy_extras/v3/nodes_stable_cascade.py | 2 +- comfy_extras/v3/nodes_tcfg.py | 2 +- comfy_extras/v3/nodes_tomesd.py | 2 +- comfy_extras/v3/nodes_torch_compile.py | 2 +- comfy_extras/v3/nodes_train.py | 2 +- comfy_extras/v3/nodes_upscale_model.py | 2 +- comfy_extras/v3/nodes_video.py | 2 +- comfy_extras/v3/nodes_video_model.py | 2 +- comfy_extras/v3/nodes_wan.py | 2 +- comfy_extras/v3/nodes_webcam.py | 2 +- execution.py | 2 +- nodes.py | 2 +- 68 files changed, 68 insertions(+), 74 deletions(-) rename comfy_api/{v3 => latest}/_io.py (99%) rename comfy_api/{v3 => latest}/_resources.py (100%) rename comfy_api/{v3 => latest}/_ui.py (99%) delete mode 100644 comfy_api/v3/__init__.py diff --git a/comfy_api/latest/__init__.py b/comfy_api/latest/__init__.py index 8738196de..6bfa3b72b 100644 --- a/comfy_api/latest/__init__.py +++ b/comfy_api/latest/__init__.py @@ -5,6 +5,9 @@ from comfy_api.internal import ComfyAPIBase from comfy_api.internal.singleton import ProxiedSingleton from comfy_api.internal.async_to_sync import create_sync_class from comfy_api.latest.input import ImageInput +from comfy_api.latest._io import _IO as io #noqa: F401 +from comfy_api.latest._ui import _UI as ui #noqa: F401 +from comfy_api.latest._resources import _RESOURCES as resources #noqa: F401 from comfy_execution.utils import get_executing_context from comfy_execution.progress import get_progress_state from PIL import Image diff --git a/comfy_api/v3/_io.py b/comfy_api/latest/_io.py similarity index 99% rename from comfy_api/v3/_io.py rename to comfy_api/latest/_io.py index f9c7a8cc1..c527190ec 100644 --- a/comfy_api/v3/_io.py +++ b/comfy_api/latest/_io.py @@ -24,7 +24,7 @@ from comfy.sd import StyleModel as StyleModel_ from comfy_api.input import VideoInput from comfy_api.internal import (_ComfyNodeInternal, _NodeOutputInternal, classproperty, copy_class, first_real_override, is_class, prune_dict, shallow_clone_class) -from comfy_api.v3._resources import Resources, ResourcesLocal +from comfy_api.latest._resources import Resources, ResourcesLocal from comfy_execution.graph import ExecutionBlocker # from comfy_extras.nodes_images import SVG as SVG_ # NOTE: needs to be moved before can be imported due to circular reference diff --git a/comfy_api/v3/_resources.py b/comfy_api/latest/_resources.py similarity index 100% rename from comfy_api/v3/_resources.py rename to comfy_api/latest/_resources.py diff --git a/comfy_api/v3/_ui.py b/comfy_api/latest/_ui.py similarity index 99% rename from comfy_api/v3/_ui.py rename to comfy_api/latest/_ui.py index fc959f6b4..6c83bfb3d 100644 --- a/comfy_api/v3/_ui.py +++ b/comfy_api/latest/_ui.py @@ -17,7 +17,7 @@ import folder_paths # used for image preview from comfy.cli_args import args -from comfy_api.v3._io import ComfyNode, FolderType, Image, _UIOutput +from comfy_api.latest._io import ComfyNode, FolderType, Image, _UIOutput class SavedResult(dict): diff --git a/comfy_api/v3/__init__.py b/comfy_api/v3/__init__.py deleted file mode 100644 index b3a62e65a..000000000 --- a/comfy_api/v3/__init__.py +++ /dev/null @@ -1,9 +0,0 @@ -from comfy_api.v3._io import _IO -from comfy_api.v3._ui import _UI -from comfy_api.v3._resources import _RESOURCES - -io = _IO -ui = _UI -resources = _RESOURCES - -__all__ = ["io", "ui", "resources"] diff --git a/comfy_extras/nodes_v3_test.py b/comfy_extras/nodes_v3_test.py index d78fa9d4b..9e43ef290 100644 --- a/comfy_extras/nodes_v3_test.py +++ b/comfy_extras/nodes_v3_test.py @@ -1,6 +1,6 @@ import torch import time -from comfy_api.v3 import io, ui, resources, _io +from comfy_api.latest import io, ui, resources, _io import logging # noqa import folder_paths import comfy.utils diff --git a/comfy_extras/v3/nodes_ace.py b/comfy_extras/v3/nodes_ace.py index 5a11bafa6..988e0ed5a 100644 --- a/comfy_extras/v3/nodes_ace.py +++ b/comfy_extras/v3/nodes_ace.py @@ -4,7 +4,7 @@ import torch import comfy.model_management import node_helpers -from comfy_api.v3 import io +from comfy_api.latest import io class TextEncodeAceStepAudio(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_advanced_samplers.py b/comfy_extras/v3/nodes_advanced_samplers.py index 5f04a81fe..91512effb 100644 --- a/comfy_extras/v3/nodes_advanced_samplers.py +++ b/comfy_extras/v3/nodes_advanced_samplers.py @@ -6,7 +6,7 @@ import comfy.model_patcher import comfy.samplers import comfy.utils from comfy.k_diffusion.sampling import to_d -from comfy_api.v3 import io +from comfy_api.latest import io @torch.no_grad() diff --git a/comfy_extras/v3/nodes_align_your_steps.py b/comfy_extras/v3/nodes_align_your_steps.py index 207eb8d91..c2a211c99 100644 --- a/comfy_extras/v3/nodes_align_your_steps.py +++ b/comfy_extras/v3/nodes_align_your_steps.py @@ -3,7 +3,7 @@ import numpy as np import torch -from comfy_api.v3 import io +from comfy_api.latest import io NOISE_LEVELS = { "SD1": [ diff --git a/comfy_extras/v3/nodes_apg.py b/comfy_extras/v3/nodes_apg.py index c518a101a..961bdddb3 100644 --- a/comfy_extras/v3/nodes_apg.py +++ b/comfy_extras/v3/nodes_apg.py @@ -1,6 +1,6 @@ import torch -from comfy_api.v3 import io +from comfy_api.latest import io def project(v0, v1): diff --git a/comfy_extras/v3/nodes_attention_multiply.py b/comfy_extras/v3/nodes_attention_multiply.py index 2e8516034..9fb86714f 100644 --- a/comfy_extras/v3/nodes_attention_multiply.py +++ b/comfy_extras/v3/nodes_attention_multiply.py @@ -1,4 +1,4 @@ -from comfy_api.v3 import io +from comfy_api.latest import io def attention_multiply(attn, model, q, k, v, out): diff --git a/comfy_extras/v3/nodes_audio.py b/comfy_extras/v3/nodes_audio.py index 68b841d3a..994863a42 100644 --- a/comfy_extras/v3/nodes_audio.py +++ b/comfy_extras/v3/nodes_audio.py @@ -9,7 +9,7 @@ import torchaudio import comfy.model_management import folder_paths import node_helpers -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui class ConditioningStableAudio(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_camera_trajectory.py b/comfy_extras/v3/nodes_camera_trajectory.py index 3cfbba20f..edc159591 100644 --- a/comfy_extras/v3/nodes_camera_trajectory.py +++ b/comfy_extras/v3/nodes_camera_trajectory.py @@ -6,7 +6,7 @@ from einops import rearrange import comfy.model_management import nodes -from comfy_api.v3 import io +from comfy_api.latest import io CAMERA_DICT = { "base_T_norm": 1.5, diff --git a/comfy_extras/v3/nodes_canny.py b/comfy_extras/v3/nodes_canny.py index 6bdbd8fdc..e24b0df38 100644 --- a/comfy_extras/v3/nodes_canny.py +++ b/comfy_extras/v3/nodes_canny.py @@ -3,7 +3,7 @@ from __future__ import annotations from kornia.filters import canny import comfy.model_management -from comfy_api.v3 import io +from comfy_api.latest import io class Canny(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_cfg.py b/comfy_extras/v3/nodes_cfg.py index 872fb7ae7..66ec27f9a 100644 --- a/comfy_extras/v3/nodes_cfg.py +++ b/comfy_extras/v3/nodes_cfg.py @@ -2,7 +2,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io def optimized_scale(positive, negative): diff --git a/comfy_extras/v3/nodes_clip_sdxl.py b/comfy_extras/v3/nodes_clip_sdxl.py index 35faa3a78..54b83dc16 100644 --- a/comfy_extras/v3/nodes_clip_sdxl.py +++ b/comfy_extras/v3/nodes_clip_sdxl.py @@ -1,7 +1,7 @@ from __future__ import annotations import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class CLIPTextEncodeSDXL(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_compositing.py b/comfy_extras/v3/nodes_compositing.py index 10b2c5e8d..cfe195148 100644 --- a/comfy_extras/v3/nodes_compositing.py +++ b/comfy_extras/v3/nodes_compositing.py @@ -5,7 +5,7 @@ from enum import Enum import torch import comfy.utils -from comfy_api.v3 import io +from comfy_api.latest import io def resize_mask(mask, shape): diff --git a/comfy_extras/v3/nodes_cond.py b/comfy_extras/v3/nodes_cond.py index 1f53080bd..9d3181886 100644 --- a/comfy_extras/v3/nodes_cond.py +++ b/comfy_extras/v3/nodes_cond.py @@ -1,6 +1,6 @@ from __future__ import annotations -from comfy_api.v3 import io +from comfy_api.latest import io class CLIPTextEncodeControlnet(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_controlnet.py b/comfy_extras/v3/nodes_controlnet.py index 0ef2843d1..4788113a4 100644 --- a/comfy_extras/v3/nodes_controlnet.py +++ b/comfy_extras/v3/nodes_controlnet.py @@ -1,6 +1,6 @@ import comfy.utils from comfy.cldm.control_types import UNION_CONTROLNET_TYPES -from comfy_api.v3 import io +from comfy_api.latest import io class ControlNetApplyAdvanced(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_cosmos.py b/comfy_extras/v3/nodes_cosmos.py index 436fd2baf..9779e0ffe 100644 --- a/comfy_extras/v3/nodes_cosmos.py +++ b/comfy_extras/v3/nodes_cosmos.py @@ -6,7 +6,7 @@ import comfy.latent_formats import comfy.model_management import comfy.utils import nodes -from comfy_api.v3 import io +from comfy_api.latest import io def vae_encode_with_padding(vae, image, width, height, length, padding=0): diff --git a/comfy_extras/v3/nodes_differential_diffusion.py b/comfy_extras/v3/nodes_differential_diffusion.py index 58906b2fa..6eb8cacbc 100644 --- a/comfy_extras/v3/nodes_differential_diffusion.py +++ b/comfy_extras/v3/nodes_differential_diffusion.py @@ -2,7 +2,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io class DifferentialDiffusion(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_edit_model.py b/comfy_extras/v3/nodes_edit_model.py index 85700cf61..79dd672e3 100644 --- a/comfy_extras/v3/nodes_edit_model.py +++ b/comfy_extras/v3/nodes_edit_model.py @@ -1,7 +1,7 @@ from __future__ import annotations import node_helpers -from comfy_api.v3 import io +from comfy_api.latest import io class ReferenceLatent(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_flux.py b/comfy_extras/v3/nodes_flux.py index 266fdfdd4..3967fc4ad 100644 --- a/comfy_extras/v3/nodes_flux.py +++ b/comfy_extras/v3/nodes_flux.py @@ -2,7 +2,7 @@ from __future__ import annotations import comfy.utils import node_helpers -from comfy_api.v3 import io +from comfy_api.latest import io PREFERED_KONTEXT_RESOLUTIONS = [ (672, 1568), diff --git a/comfy_extras/v3/nodes_freelunch.py b/comfy_extras/v3/nodes_freelunch.py index c7d71c0a0..fe3e2c9dd 100644 --- a/comfy_extras/v3/nodes_freelunch.py +++ b/comfy_extras/v3/nodes_freelunch.py @@ -6,7 +6,7 @@ import logging import torch -from comfy_api.v3 import io +from comfy_api.latest import io def Fourier_filter(x, threshold, scale): diff --git a/comfy_extras/v3/nodes_fresca.py b/comfy_extras/v3/nodes_fresca.py index 4d890eef4..e9057fca5 100644 --- a/comfy_extras/v3/nodes_fresca.py +++ b/comfy_extras/v3/nodes_fresca.py @@ -5,7 +5,7 @@ from __future__ import annotations import torch import torch.fft as fft -from comfy_api.v3 import io +from comfy_api.latest import io def Fourier_filter(x, scale_low=1.0, scale_high=1.5, freq_cutoff=20): diff --git a/comfy_extras/v3/nodes_gits.py b/comfy_extras/v3/nodes_gits.py index 0d774a96e..2efb34763 100644 --- a/comfy_extras/v3/nodes_gits.py +++ b/comfy_extras/v3/nodes_gits.py @@ -3,7 +3,7 @@ from __future__ import annotations import numpy as np import torch -from comfy_api.v3 import io +from comfy_api.latest import io def loglinear_interp(t_steps, num_steps): diff --git a/comfy_extras/v3/nodes_hidream.py b/comfy_extras/v3/nodes_hidream.py index 1f596d123..8afd3bb13 100644 --- a/comfy_extras/v3/nodes_hidream.py +++ b/comfy_extras/v3/nodes_hidream.py @@ -3,7 +3,7 @@ from __future__ import annotations import comfy.model_management import comfy.sd import folder_paths -from comfy_api.v3 import io +from comfy_api.latest import io class CLIPTextEncodeHiDream(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_hunyuan.py b/comfy_extras/v3/nodes_hunyuan.py index d606081c2..1c2262a0e 100644 --- a/comfy_extras/v3/nodes_hunyuan.py +++ b/comfy_extras/v3/nodes_hunyuan.py @@ -5,7 +5,7 @@ import torch import comfy.model_management import node_helpers import nodes -from comfy_api.v3 import io +from comfy_api.latest import io PROMPT_TEMPLATE_ENCODE_VIDEO_I2V = ( "<|start_header_id|>system<|end_header_id|>\n\n\nDescribe the video by detailing the following aspects according to the reference image: " diff --git a/comfy_extras/v3/nodes_hypernetwork.py b/comfy_extras/v3/nodes_hypernetwork.py index 907654cd1..3981324d7 100644 --- a/comfy_extras/v3/nodes_hypernetwork.py +++ b/comfy_extras/v3/nodes_hypernetwork.py @@ -6,7 +6,7 @@ import torch import comfy.utils import folder_paths -from comfy_api.v3 import io +from comfy_api.latest import io def load_hypernetwork_patch(path, strength): diff --git a/comfy_extras/v3/nodes_hypertile.py b/comfy_extras/v3/nodes_hypertile.py index e1c9bb503..cec010644 100644 --- a/comfy_extras/v3/nodes_hypertile.py +++ b/comfy_extras/v3/nodes_hypertile.py @@ -7,7 +7,7 @@ import math from einops import rearrange from torch import randint -from comfy_api.v3 import io +from comfy_api.latest import io def random_divisor(value: int, min_value: int, /, max_options: int = 1) -> int: diff --git a/comfy_extras/v3/nodes_images.py b/comfy_extras/v3/nodes_images.py index 6fc8953e7..db528dd3c 100644 --- a/comfy_extras/v3/nodes_images.py +++ b/comfy_extras/v3/nodes_images.py @@ -9,7 +9,7 @@ import comfy.utils import folder_paths import node_helpers import nodes -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui from server import PromptServer diff --git a/comfy_extras/v3/nodes_ip2p.py b/comfy_extras/v3/nodes_ip2p.py index 7789c496a..d784797b4 100644 --- a/comfy_extras/v3/nodes_ip2p.py +++ b/comfy_extras/v3/nodes_ip2p.py @@ -2,7 +2,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io class InstructPixToPixConditioning(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_latent.py b/comfy_extras/v3/nodes_latent.py index ab4d690eb..47966c518 100644 --- a/comfy_extras/v3/nodes_latent.py +++ b/comfy_extras/v3/nodes_latent.py @@ -4,7 +4,7 @@ import torch import comfy.utils import comfy_extras.nodes_post_processing -from comfy_api.v3 import io +from comfy_api.latest import io def reshape_latent_to(target_shape, latent, repeat_batch=True): diff --git a/comfy_extras/v3/nodes_load_3d.py b/comfy_extras/v3/nodes_load_3d.py index 0068da40f..b0ab3db16 100644 --- a/comfy_extras/v3/nodes_load_3d.py +++ b/comfy_extras/v3/nodes_load_3d.py @@ -6,7 +6,7 @@ from pathlib import Path import folder_paths import nodes from comfy_api.input_impl import VideoFromFile -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui def normalize_path(path): diff --git a/comfy_extras/v3/nodes_lora_extract.py b/comfy_extras/v3/nodes_lora_extract.py index 197740515..54bd051d4 100644 --- a/comfy_extras/v3/nodes_lora_extract.py +++ b/comfy_extras/v3/nodes_lora_extract.py @@ -9,7 +9,7 @@ import torch import comfy.model_management import comfy.utils import folder_paths -from comfy_api.v3 import io +from comfy_api.latest import io CLAMP_QUANTILE = 0.99 diff --git a/comfy_extras/v3/nodes_lotus.py b/comfy_extras/v3/nodes_lotus.py index 9b19ca16b..f2190c753 100644 --- a/comfy_extras/v3/nodes_lotus.py +++ b/comfy_extras/v3/nodes_lotus.py @@ -3,7 +3,7 @@ from __future__ import annotations import torch import comfy.model_management as mm -from comfy_api.v3 import io +from comfy_api.latest import io class LotusConditioning(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_lt.py b/comfy_extras/v3/nodes_lt.py index abb3a932b..6e4604480 100644 --- a/comfy_extras/v3/nodes_lt.py +++ b/comfy_extras/v3/nodes_lt.py @@ -16,7 +16,7 @@ from comfy.ldm.lightricks.symmetric_patchifier import ( SymmetricPatchifier, latent_to_pixel_coords, ) -from comfy_api.v3 import io +from comfy_api.latest import io def conditioning_get_any_value(conditioning, key, default=None): diff --git a/comfy_extras/v3/nodes_lumina2.py b/comfy_extras/v3/nodes_lumina2.py index 4dadce477..470537ccc 100644 --- a/comfy_extras/v3/nodes_lumina2.py +++ b/comfy_extras/v3/nodes_lumina2.py @@ -2,7 +2,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io class CLIPTextEncodeLumina2(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_mask.py b/comfy_extras/v3/nodes_mask.py index 5ad53eb2e..3fc736d40 100644 --- a/comfy_extras/v3/nodes_mask.py +++ b/comfy_extras/v3/nodes_mask.py @@ -7,7 +7,7 @@ import torch import comfy.utils import node_helpers import nodes -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui def composite(destination, source, x, y, mask=None, multiplier=8, resize_source=False): diff --git a/comfy_extras/v3/nodes_mochi.py b/comfy_extras/v3/nodes_mochi.py index d0a07e725..77677e4df 100644 --- a/comfy_extras/v3/nodes_mochi.py +++ b/comfy_extras/v3/nodes_mochi.py @@ -4,7 +4,7 @@ import torch import comfy.model_management import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class EmptyMochiLatentVideo(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_model_advanced.py b/comfy_extras/v3/nodes_model_advanced.py index 188ce5462..55e372f71 100644 --- a/comfy_extras/v3/nodes_model_advanced.py +++ b/comfy_extras/v3/nodes_model_advanced.py @@ -7,7 +7,7 @@ import comfy.model_sampling import comfy.sd import node_helpers import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class LCM(comfy.model_sampling.EPS): diff --git a/comfy_extras/v3/nodes_model_downscale.py b/comfy_extras/v3/nodes_model_downscale.py index 69ed296ef..5eaddb7af 100644 --- a/comfy_extras/v3/nodes_model_downscale.py +++ b/comfy_extras/v3/nodes_model_downscale.py @@ -1,7 +1,7 @@ from __future__ import annotations import comfy.utils -from comfy_api.v3 import io +from comfy_api.latest import io class PatchModelAddDownscale(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_morphology.py b/comfy_extras/v3/nodes_morphology.py index 7c44cc086..bb4e2543a 100644 --- a/comfy_extras/v3/nodes_morphology.py +++ b/comfy_extras/v3/nodes_morphology.py @@ -13,7 +13,7 @@ from kornia.morphology import ( ) import comfy.model_management -from comfy_api.v3 import io +from comfy_api.latest import io class ImageRGBToYUV(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_optimalsteps.py b/comfy_extras/v3/nodes_optimalsteps.py index 4dcb79b4d..f8f6e3b07 100644 --- a/comfy_extras/v3/nodes_optimalsteps.py +++ b/comfy_extras/v3/nodes_optimalsteps.py @@ -3,7 +3,7 @@ from __future__ import annotations import numpy as np import torch -from comfy_api.v3 import io +from comfy_api.latest import io # from https://github.com/bebebe666/OptimalSteps diff --git a/comfy_extras/v3/nodes_pag.py b/comfy_extras/v3/nodes_pag.py index 7aebf614a..4ea7b07a5 100644 --- a/comfy_extras/v3/nodes_pag.py +++ b/comfy_extras/v3/nodes_pag.py @@ -2,7 +2,7 @@ from __future__ import annotations import comfy.model_patcher import comfy.samplers -from comfy_api.v3 import io +from comfy_api.latest import io #Modified/simplified version of the node from: https://github.com/pamparamm/sd-perturbed-attention #If you want the one with more options see the above repo. diff --git a/comfy_extras/v3/nodes_perpneg.py b/comfy_extras/v3/nodes_perpneg.py index d7ee7cfa4..a539320c3 100644 --- a/comfy_extras/v3/nodes_perpneg.py +++ b/comfy_extras/v3/nodes_perpneg.py @@ -9,7 +9,7 @@ import comfy.sampler_helpers import comfy.samplers import comfy.utils import node_helpers -from comfy_api.v3 import io +from comfy_api.latest import io def perp_neg(x, noise_pred_pos, noise_pred_neg, noise_pred_nocond, neg_scale, cond_scale): diff --git a/comfy_extras/v3/nodes_photomaker.py b/comfy_extras/v3/nodes_photomaker.py index ae72faffb..7b742cb98 100644 --- a/comfy_extras/v3/nodes_photomaker.py +++ b/comfy_extras/v3/nodes_photomaker.py @@ -9,7 +9,7 @@ import comfy.model_management import comfy.ops import comfy.utils import folder_paths -from comfy_api.v3 import io +from comfy_api.latest import io # code for model from: # https://github.com/TencentARC/PhotoMaker/blob/main/photomaker/model.py under Apache License Version 2.0 diff --git a/comfy_extras/v3/nodes_pixart.py b/comfy_extras/v3/nodes_pixart.py index adfcee5cb..63276955f 100644 --- a/comfy_extras/v3/nodes_pixart.py +++ b/comfy_extras/v3/nodes_pixart.py @@ -1,7 +1,7 @@ from __future__ import annotations import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class CLIPTextEncodePixArtAlpha(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_post_processing.py b/comfy_extras/v3/nodes_post_processing.py index c42dba1b1..1b715f33c 100644 --- a/comfy_extras/v3/nodes_post_processing.py +++ b/comfy_extras/v3/nodes_post_processing.py @@ -10,7 +10,7 @@ from PIL import Image import comfy.model_management import comfy.utils import node_helpers -from comfy_api.v3 import io +from comfy_api.latest import io def gaussian_kernel(kernel_size: int, sigma: float, device=None): diff --git a/comfy_extras/v3/nodes_preview_any.py b/comfy_extras/v3/nodes_preview_any.py index 6aab98ed9..c45b6ab92 100644 --- a/comfy_extras/v3/nodes_preview_any.py +++ b/comfy_extras/v3/nodes_preview_any.py @@ -2,7 +2,7 @@ from __future__ import annotations import json -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui class PreviewAny(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_primitive.py b/comfy_extras/v3/nodes_primitive.py index 5740d2a03..bd4066af1 100644 --- a/comfy_extras/v3/nodes_primitive.py +++ b/comfy_extras/v3/nodes_primitive.py @@ -2,7 +2,7 @@ from __future__ import annotations import sys -from comfy_api.v3 import io +from comfy_api.latest import io class String(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_rebatch.py b/comfy_extras/v3/nodes_rebatch.py index 07863a9d0..26fabde1b 100644 --- a/comfy_extras/v3/nodes_rebatch.py +++ b/comfy_extras/v3/nodes_rebatch.py @@ -2,7 +2,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io class ImageRebatch(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_sag.py b/comfy_extras/v3/nodes_sag.py index 4317dabf5..2c4290e09 100644 --- a/comfy_extras/v3/nodes_sag.py +++ b/comfy_extras/v3/nodes_sag.py @@ -9,7 +9,7 @@ from torch import einsum import comfy.samplers from comfy.ldm.modules.attention import optimized_attention -from comfy_api.v3 import io +from comfy_api.latest import io # from comfy/ldm/modules/attention.py diff --git a/comfy_extras/v3/nodes_sd3.py b/comfy_extras/v3/nodes_sd3.py index 6f7451571..d7401aad0 100644 --- a/comfy_extras/v3/nodes_sd3.py +++ b/comfy_extras/v3/nodes_sd3.py @@ -6,7 +6,7 @@ import comfy.model_management import comfy.sd import folder_paths import nodes -from comfy_api.v3 import io +from comfy_api.latest import io from comfy_extras.v3.nodes_slg import SkipLayerGuidanceDiT diff --git a/comfy_extras/v3/nodes_sdupscale.py b/comfy_extras/v3/nodes_sdupscale.py index 30e804122..382a71909 100644 --- a/comfy_extras/v3/nodes_sdupscale.py +++ b/comfy_extras/v3/nodes_sdupscale.py @@ -3,7 +3,7 @@ from __future__ import annotations import torch import comfy.utils -from comfy_api.v3 import io +from comfy_api.latest import io class SD_4XUpscale_Conditioning(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_slg.py b/comfy_extras/v3/nodes_slg.py index cf5a925aa..d98c225c2 100644 --- a/comfy_extras/v3/nodes_slg.py +++ b/comfy_extras/v3/nodes_slg.py @@ -4,7 +4,7 @@ import re import comfy.model_patcher import comfy.samplers -from comfy_api.v3 import io +from comfy_api.latest import io class SkipLayerGuidanceDiT(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_stable_cascade.py b/comfy_extras/v3/nodes_stable_cascade.py index 3d34b3a12..09c8719eb 100644 --- a/comfy_extras/v3/nodes_stable_cascade.py +++ b/comfy_extras/v3/nodes_stable_cascade.py @@ -20,7 +20,7 @@ import torch import comfy.utils import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class StableCascade_EmptyLatentImage(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_tcfg.py b/comfy_extras/v3/nodes_tcfg.py index 62c6100d6..2133136c5 100644 --- a/comfy_extras/v3/nodes_tcfg.py +++ b/comfy_extras/v3/nodes_tcfg.py @@ -4,7 +4,7 @@ from __future__ import annotations import torch -from comfy_api.v3 import io +from comfy_api.latest import io def score_tangential_damping(cond_score: torch.Tensor, uncond_score: torch.Tensor) -> torch.Tensor: diff --git a/comfy_extras/v3/nodes_tomesd.py b/comfy_extras/v3/nodes_tomesd.py index 5032b1482..f824dcc27 100644 --- a/comfy_extras/v3/nodes_tomesd.py +++ b/comfy_extras/v3/nodes_tomesd.py @@ -7,7 +7,7 @@ from typing import Callable, Tuple import torch -from comfy_api.v3 import io +from comfy_api.latest import io def do_nothing(x: torch.Tensor, mode:str=None): diff --git a/comfy_extras/v3/nodes_torch_compile.py b/comfy_extras/v3/nodes_torch_compile.py index 528de0e86..ed218174c 100644 --- a/comfy_extras/v3/nodes_torch_compile.py +++ b/comfy_extras/v3/nodes_torch_compile.py @@ -1,7 +1,7 @@ from __future__ import annotations from comfy_api.torch_helpers import set_torch_compile_wrapper -from comfy_api.v3 import io +from comfy_api.latest import io class TorchCompileModel(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_train.py b/comfy_extras/v3/nodes_train.py index 46888f5be..9afc9d93c 100644 --- a/comfy_extras/v3/nodes_train.py +++ b/comfy_extras/v3/nodes_train.py @@ -18,7 +18,7 @@ import comfy_extras.nodes_custom_sampler import folder_paths import node_helpers from comfy.weight_adapter import adapter_maps, adapters -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui def make_batch_extra_option_dict(d, indicies, full_size=None): diff --git a/comfy_extras/v3/nodes_upscale_model.py b/comfy_extras/v3/nodes_upscale_model.py index a3337f9ad..9b892ba3c 100644 --- a/comfy_extras/v3/nodes_upscale_model.py +++ b/comfy_extras/v3/nodes_upscale_model.py @@ -8,7 +8,7 @@ from spandrel import ImageModelDescriptor, ModelLoader import comfy.utils import folder_paths from comfy import model_management -from comfy_api.v3 import io +from comfy_api.latest import io try: from spandrel import MAIN_REGISTRY diff --git a/comfy_extras/v3/nodes_video.py b/comfy_extras/v3/nodes_video.py index a12553371..004efe08f 100644 --- a/comfy_extras/v3/nodes_video.py +++ b/comfy_extras/v3/nodes_video.py @@ -12,7 +12,7 @@ from comfy.cli_args import args from comfy_api.input import AudioInput, ImageInput, VideoInput from comfy_api.input_impl import VideoFromComponents, VideoFromFile from comfy_api.util import VideoCodec, VideoComponents, VideoContainer -from comfy_api.v3 import io, ui +from comfy_api.latest import io, ui class CreateVideo(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_video_model.py b/comfy_extras/v3/nodes_video_model.py index 3c17eb918..e0ee00d73 100644 --- a/comfy_extras/v3/nodes_video_model.py +++ b/comfy_extras/v3/nodes_video_model.py @@ -8,7 +8,7 @@ import comfy_extras.nodes_model_merging import folder_paths import node_helpers import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class ConditioningSetAreaPercentageVideo(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_wan.py b/comfy_extras/v3/nodes_wan.py index 550766362..43c999ad5 100644 --- a/comfy_extras/v3/nodes_wan.py +++ b/comfy_extras/v3/nodes_wan.py @@ -8,7 +8,7 @@ import comfy.model_management import comfy.utils import node_helpers import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class TrimVideoLatent(io.ComfyNode): diff --git a/comfy_extras/v3/nodes_webcam.py b/comfy_extras/v3/nodes_webcam.py index ce75fce31..797160978 100644 --- a/comfy_extras/v3/nodes_webcam.py +++ b/comfy_extras/v3/nodes_webcam.py @@ -7,7 +7,7 @@ from PIL import Image, ImageOps, ImageSequence import folder_paths import node_helpers import nodes -from comfy_api.v3 import io +from comfy_api.latest import io class WebcamCapture(io.ComfyNode): diff --git a/execution.py b/execution.py index dae0d0390..ac1357adc 100644 --- a/execution.py +++ b/execution.py @@ -33,7 +33,7 @@ from comfy_execution.validation import validate_node_input from comfy_execution.progress import get_progress_state, reset_progress_state, add_progress_handler, WebUIProgressHandler 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.v3 import io, resources +from comfy_api.latest import io, resources class ExecutionResult(Enum): diff --git a/nodes.py b/nodes.py index 2f2ac476f..78745a15a 100644 --- a/nodes.py +++ b/nodes.py @@ -29,7 +29,7 @@ import comfy.controlnet from comfy.comfy_types import IO, ComfyNodeABC, InputTypeDict, FileLocator from comfy_api.internal import register_versions, ComfyAPIWithVersion from comfy_api.version_list import supported_versions -from comfy_api.v3 import io +from comfy_api.latest import io import comfy.clip_vision