diff --git a/CHANGELOG.md b/CHANGELOG.md index 78bde94..f66df22 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## 🆕 Version 1.2.3 — Stackable LoRA Input + +- Added optional `lora` input to IAMCCS_WanLoRAStack node +- Now supports up to 8 LoRA models in total (4 direct + 4 from chained stack) +- Enable daisy-chaining multiple IAMCCS_WanLoRAStack nodes for extended LoRA capabilities +- Maintains backward compatibility with existing workflows + ## 🆕 Version 1.2.1 — Extended Wan 2.1 Compatibility Removed the deprecated LightX2V node (now merged into WAN-style remap) diff --git a/README.md b/README.md index d8e6d0e..1d3ee88 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,12 @@ ### Category: ComfyUI Custom Nodes ### Main Feature: Fix for LoRA loading in native WANAnimate workflows +Version: 1.2.3 + +# UPDATE VERSION 1-2-3 + +## 🆕 Version 1.2.3 — New input lora - add another StackLoraModel (concatenate) + Extended Wan 2.1 Compatibility + Version: 1.2.1 # UPDATE VERSION 1-2-1 @@ -65,6 +71,10 @@ Ideal for WANAnimate, WANVideo, or any Flow-based cinematic model. ![Node piece no_3](assets/ensemble.png) +# New version 1.2.3!! Lora concatenate!! You can add another Lora stack to the node! + +![Node piece no_4](assets/lora_concatenatel.png)lora_concatenatel.png + ### LoRA Stack (WAN-style remap) Supports the following LoRAs: - New Moe distill WAN 2.2 LightX2V High Model diff --git a/assets/lora_concatenatel.png b/assets/lora_concatenatel.png new file mode 100644 index 0000000..cf3c727 Binary files /dev/null and b/assets/lora_concatenatel.png differ diff --git a/iamccs_wan_lora_stack.py b/iamccs_wan_lora_stack.py index 5f3e2b0..61f2722 100644 --- a/iamccs_wan_lora_stack.py +++ b/iamccs_wan_lora_stack.py @@ -112,6 +112,9 @@ class IAMCCS_WanLoRAStack: "lora4": (lora_list, {"default": "no"}), "strength4": ("FLOAT", {"default": 0.0, "min": -5.0, "max": 5.0, "step": 0.01}), "model_type": (["wan2x", "flow", "standard"], {"default": "flow"}), + }, + "optional": { + "lora": ("LORA",), } } @@ -123,7 +126,8 @@ class IAMCCS_WanLoRAStack: lora2, strength2, lora3, strength3, lora4, strength4, - model_type="flow"): + model_type="flow", + lora=None): loras = [] for name, strength in [ @@ -141,6 +145,10 @@ class IAMCCS_WanLoRAStack: sd = standardize_wan_lora_keys(sd) loras.append({"name": name, "strength": strength, "state_dict": sd}) + # Concatena la stack LORA opzionale se fornita + if lora is not None and isinstance(lora, list): + loras.extend(lora) + if not loras: logging.warning("[IAMCCS_WanLoRAStack] ⚠ No LoRA selected") else: diff --git a/pyproject.toml b/pyproject.toml index 17091ae..ac8684a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "iamccs-wan-lora-fixer-stack" -version = "1.2.1" -description = "Nodo IAMCCS per ComfyUI che applica fino a 5 LoRA (WAN 2.1 / 2.2 compatibili) con fix automatico e input/output MODEL. Aggiornamento v1.2.1: compatibilità estesa del solo nodo Wan style remap." +version = "1.2.3" +description = "Nodo IAMCCS per ComfyUI che applica fino a 4 LoRA (WAN 2.1 / 2.2 compatibili) con fix automatico e input/output MODEL. Aggiornamento v1.2.3: ADD Lora input for Lora stack adding." license = { text = "MIT" } authors = [ { name = "Carmine Cristallo Scalzi (IAMCCS)", email = "info@carminecristalloscalzi.com" } diff --git a/version.json b/version.json index bfbacba..960651e 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "name": "iamccs-wan-lora-fixer-stack", - "version": "1.2.1", + "version": "1.2.3", "author": "Carmine Cristallo Scalzi (IAMCCS)", - "description": "Nodo IAMCCS per ComfyUI che applica fino a 5 LoRA in stack, compatibile con WAN 2.2 (Flow). Aggiornamento per compatibilità estesa a WAN 2.1." + "description": "Nodo IAMCCS per ComfyUI che applica fino a 8 LoRA in stack (concatenabili), compatibile con WAN 2.2 (Flow). Aggiornamento per compatibilità estesa a WAN 2.1." }