Files
2025-10-02 09:08:50 +09:00

67 lines
2.2 KiB
Python

"""
u5_FreeVRAM - ComfyUI Custom Node for Memory Management
MIT License - Copyright (c) 2024
This node provides memory management functionality for ComfyUI workflows.
It allows unloading models, clearing caches, and freeing memory without
disrupting the workflow execution.
"""
# ========================================
# Existing Node - Protected
# ========================================
from .model_unloader import VRAMFreeNode
# ========================================
# New Addition: Sequential Loaders
# ========================================
SEQUENTIAL_LOADERS_AVAILABLE = False
try:
from .sequential_loaders import (
SequentialCheckpointLoader,
SequentialLoRALoader,
SequentialCLIPLoaderSimple,
SequentialVAELoaderSimple,
)
SEQUENTIAL_LOADERS_AVAILABLE = True
print("[FreeVRAM] Sequential Loaders loaded successfully (ComfyUI standard only)")
except ImportError as e:
print(f"[FreeVRAM] Sequential Loaders not available: {e}")
print("[FreeVRAM] Core FreeVRAM node will work normally")
# ========================================
# Node Registration
# ========================================
NODE_CLASS_MAPPINGS = {
# Existing node (always available)
"VRAMFree": VRAMFreeNode,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"VRAMFree": "FREE VRAM (u5)",
}
# Sequential Loaders (only if available)
if SEQUENTIAL_LOADERS_AVAILABLE:
NODE_CLASS_MAPPINGS.update({
"SequentialCheckpointLoader": SequentialCheckpointLoader,
"SequentialLoRALoader": SequentialLoRALoader,
"SequentialCLIPLoaderSimple": SequentialCLIPLoaderSimple,
"SequentialVAELoaderSimple": SequentialVAELoaderSimple,
})
NODE_DISPLAY_NAME_MAPPINGS.update({
"SequentialCheckpointLoader": "Sequential Checkpoint Loader",
"SequentialLoRALoader": "Sequential LoRA Loader",
"SequentialCLIPLoaderSimple": "Sequential CLIP Loader",
"SequentialVAELoaderSimple": "Sequential VAE Loader",
})
# Version information
__version__ = "1.1.0" # Sequential Loaders added
__license__ = "MIT"
__author__ = "u5_FreeVRAM Development Team"
# Web UI
WEB_DIRECTORY = "./js"