From 0849c80e2ab50b2821856c3de1ae6ebc1f879260 Mon Sep 17 00:00:00 2001 From: comfyanonymous Date: Tue, 17 Sep 2024 01:57:59 -0400 Subject: [PATCH] get_key_patches now works without unloading the model. --- comfy/model_patcher.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/comfy/model_patcher.py b/comfy/model_patcher.py index a89ad4fd7..6ca124e6d 100644 --- a/comfy/model_patcher.py +++ b/comfy/model_patcher.py @@ -283,17 +283,21 @@ class ModelPatcher: return list(p) def get_key_patches(self, filter_prefix=None): - comfy.model_management.unload_model_clones(self) model_sd = self.model_state_dict() p = {} for k in model_sd: if filter_prefix is not None: if not k.startswith(filter_prefix): continue - if k in self.patches: - p[k] = [model_sd[k]] + self.patches[k] + bk = self.backup.get(k, None) + if bk is not None: + weight = bk.weight else: - p[k] = (model_sd[k],) + weight = model_sd[k] + if k in self.patches: + p[k] = [weight] + self.patches[k] + else: + p[k] = (weight,) return p def model_state_dict(self, filter_prefix=None):