From 37c0c5ed46edaddb166620b3afc0efb4dec3c14b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=E1=BA=A7n=20Nam=20Tu=E1=BA=A5n?= Date: Mon, 19 Aug 2024 23:46:39 +0700 Subject: [PATCH] Fix for Execution Model Inversion --- py/capture.py | 7 ++++--- py/defs/formatters.py | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/py/capture.py b/py/capture.py index fb01d30..3eec2d6 100644 --- a/py/capture.py +++ b/py/capture.py @@ -7,6 +7,7 @@ from .defs.meta import MetaField from nodes import NODE_CLASS_MAPPINGS from execution import get_input_data +from comfy_execution.graph import DynamicPrompt class Capture: @@ -15,14 +16,14 @@ class Capture: inputs = {} prompt = hook.current_prompt extra_data = hook.current_extra_data - outputs = hook.prompt_executer.outputs + outputs = hook.prompt_executer.caches.outputs for node_id, obj in prompt.items(): class_type = obj["class_type"] obj_class = NODE_CLASS_MAPPINGS[class_type] node_inputs = prompt[node_id]["inputs"] input_data = get_input_data( - node_inputs, obj_class, node_id, outputs, prompt, extra_data + node_inputs, obj_class, node_id, outputs, DynamicPrompt(prompt), extra_data ) for node_class, metas in CAPTURE_FIELD_LIST.items(): if class_type == node_class: @@ -54,7 +55,7 @@ class Capture: continue field_name = field_data["field_name"] - value = input_data.get(field_name) + value = input_data[0].get(field_name) if value is not None: format = field_data.get("format") v = value diff --git a/py/defs/formatters.py b/py/defs/formatters.py index 7c68d66..983d158 100644 --- a/py/defs/formatters.py +++ b/py/defs/formatters.py @@ -64,7 +64,7 @@ def extract_embedding_hashes(text, input_data): def _extract_embedding_names(text, input_data): - clip = input_data["clip"][0] + clip = input_data[0]["clip"][0] tokenizer = clip.tokenizer if isinstance(tokenizer, SD1Tokenizer): tokenizer = tokenizer.clip_l