From 5cde6f2216ac948bf7f34959cf7999100763a008 Mon Sep 17 00:00:00 2001 From: kijai <40791699+kijai@users.noreply.github.com> Date: Sun, 3 Aug 2025 12:28:25 +0300 Subject: [PATCH] Fix T5 double RAM use --- nodes.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/nodes.py b/nodes.py index 9def415..5a42a2f 100644 --- a/nodes.py +++ b/nodes.py @@ -387,7 +387,12 @@ class WanVideoTextEncode: params_to_keep = {'norm', 'pos_embedding', 'token_embedding'} for name, param in encoder.model.named_parameters(): dtype_to_use = dtype if any(keyword in name for keyword in params_to_keep) else cast_dtype - set_module_tensor_to_device(encoder.model, name, device=device_to, dtype=dtype_to_use, value=encoder.state_dict[name]) + value = encoder.state_dict[name] if hasattr(encoder, 'state_dict') else encoder.model.state_dict()[name] + set_module_tensor_to_device(encoder.model, name, device=device_to, dtype=dtype_to_use, value=value) + if hasattr(encoder, 'state_dict'): + del encoder.state_dict + mm.soft_empty_cache() + gc.collect() with torch.autocast(device_type=mm.get_autocast_device(device_to), dtype=encoder.dtype, enabled=encoder.quantization != 'disabled'): # Encode positive if not loaded from cache @@ -411,6 +416,7 @@ class WanVideoTextEncode: if force_offload: encoder.model.to(offload_device) mm.soft_empty_cache() + gc.collect() prompt_embeds_dict = { "prompt_embeds": context,