diff --git a/__init__.py b/__init__.py index 316c82e..db725cf 100644 --- a/__init__.py +++ b/__init__.py @@ -590,11 +590,17 @@ NODE_CLASS_MAPPINGS["UNETLoaderMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAP NODE_CLASS_MAPPINGS["VAELoaderMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAPPINGS["VAELoader"]) NODE_CLASS_MAPPINGS["CLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["CLIPLoader"]) NODE_CLASS_MAPPINGS["DualCLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["DualCLIPLoader"]) -NODE_CLASS_MAPPINGS["TripleCLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["TripleCLIPLoader"]) -NODE_CLASS_MAPPINGS["QuadrupleCLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["QuadrupleCLIPLoader"]) +if "TripleCLIPLoader" in GLOBAL_NODE_CLASS_MAPPINGS: + NODE_CLASS_MAPPINGS["TripleCLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["TripleCLIPLoader"]) +if "QuadrupleCLIPLoader" in GLOBAL_NODE_CLASS_MAPPINGS: + NODE_CLASS_MAPPINGS["QuadrupleCLIPLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["QuadrupleCLIPLoader"]) NODE_CLASS_MAPPINGS["CLIPVisionLoaderMultiGPU"] = override_class_clip(GLOBAL_NODE_CLASS_MAPPINGS["CLIPVisionLoader"]) NODE_CLASS_MAPPINGS["CheckpointLoaderSimpleMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAPPINGS["CheckpointLoaderSimple"]) NODE_CLASS_MAPPINGS["ControlNetLoaderMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAPPINGS["ControlNetLoader"]) +if "DiffusersLoader" in GLOBAL_NODE_CLASS_MAPPINGS: + NODE_CLASS_MAPPINGS["DiffusersLoaderMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAPPINGS["DiffusersLoader"]) +if "DiffControlNetLoader" in GLOBAL_NODE_CLASS_MAPPINGS: + NODE_CLASS_MAPPINGS["DiffControlNetLoaderMultiGPU"] = override_class(GLOBAL_NODE_CLASS_MAPPINGS["DiffControlNetLoader"]) if check_module_exists("ComfyUI-LTXVideo") or check_module_exists("comfyui-ltxvideo"): NODE_CLASS_MAPPINGS["LTXVLoaderMultiGPU"] = override_class(LTXVLoader) diff --git a/nodes.py b/nodes.py index 6d95624..733f295 100644 --- a/nodes.py +++ b/nodes.py @@ -40,10 +40,12 @@ class UnetLoaderGGUFAdvanced(UnetLoaderGGUF): class CLIPLoaderGGUF: @classmethod def INPUT_TYPES(s): + import nodes + base = nodes.CLIPLoader.INPUT_TYPES() return { "required": { "clip_name": (s.get_filename_list(),), - "type": (["stable_diffusion", "stable_cascade", "sd3", "stable_audio", "mochi", "ltxv", "pixart", "wan"],), + "type": base["required"]["type"], } } @@ -77,12 +79,14 @@ class CLIPLoaderGGUF: class DualCLIPLoaderGGUF(CLIPLoaderGGUF): @classmethod def INPUT_TYPES(s): + import nodes + base = nodes.DualCLIPLoader.INPUT_TYPES() file_options = (s.get_filename_list(), ) return { "required": { "clip_name1": file_options, "clip_name2": file_options, - "type": (("sdxl", "sd3", "flux", "hunyuan_video"),), + "type": base["required"]["type"], } } diff --git a/pyproject.toml b/pyproject.toml index 02ac2a8..509b3b6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "comfyui-multigpu" description = "Adds full multi-GPU support for WanVideoWrapper, enabling model loading and block-swapping on any device. Provides a suite of custom nodes to manage multiple GPUs for ComfyUI, including advanced GGUF offloading with DisTorch and device overrides for core nodes." -version = "1.8.1" +version = "1.8.2" license = {file = "LICENSE"} [project.urls]