Fix: render text inputs as editable fields, not input sockets
Widget-type inputs in the optional section render as connection sockets (not editable boxes) in some ComfyUI frontends. Moved all widgets (report_dir, run_tag, reference_description, system_prompt, user_prompt, keep_loaded, auto_download) into required; only generated_image (a real node-to-node wire) stays optional. Same fix for the receptor's source_file. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+5
-3
@@ -749,9 +749,6 @@ class QwenVLImageJudge:
|
|||||||
"max_new_tokens": ("INT", {"default": 1024, "min": 64, "max": 4096}),
|
"max_new_tokens": ("INT", {"default": 1024, "min": 64, "max": 4096}),
|
||||||
"temperature": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 1.5, "step": 0.05}),
|
"temperature": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 1.5, "step": 0.05}),
|
||||||
"swap_eval": ("BOOLEAN", {"default": True}),
|
"swap_eval": ("BOOLEAN", {"default": True}),
|
||||||
},
|
|
||||||
"optional": {
|
|
||||||
"generated_image": ("IMAGE",), # required for compare, ignored for describe
|
|
||||||
"keep_loaded": ("BOOLEAN", {"default": True}),
|
"keep_loaded": ("BOOLEAN", {"default": True}),
|
||||||
"auto_download": ("BOOLEAN", {"default": True}),
|
"auto_download": ("BOOLEAN", {"default": True}),
|
||||||
# The agent reads the analysis from these files after each queue.
|
# The agent reads the analysis from these files after each queue.
|
||||||
@@ -764,6 +761,11 @@ class QwenVLImageJudge:
|
|||||||
"system_prompt": ("STRING", {"default": "", "multiline": True}),
|
"system_prompt": ("STRING", {"default": "", "multiline": True}),
|
||||||
"user_prompt": ("STRING", {"default": "Describe this image.", "multiline": True}),
|
"user_prompt": ("STRING", {"default": "Describe this image.", "multiline": True}),
|
||||||
},
|
},
|
||||||
|
# Only genuine node-to-node wires stay optional (widgets in `optional` render
|
||||||
|
# as input sockets instead of editable fields in some ComfyUI frontends).
|
||||||
|
"optional": {
|
||||||
|
"generated_image": ("IMAGE",), # required for compare, ignored for describe/chat
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
def judge(self, reference_image, mode, model_path, precision, axes,
|
def judge(self, reference_image, mode, model_path, precision, axes,
|
||||||
|
|||||||
+2
-3
@@ -29,11 +29,10 @@ class CalibratorPromptReceptor:
|
|||||||
"prompt": ("STRING", {"default": "", "multiline": True}),
|
"prompt": ("STRING", {"default": "", "multiline": True}),
|
||||||
"negative": ("STRING", {"default": "", "multiline": True}),
|
"negative": ("STRING", {"default": "", "multiline": True}),
|
||||||
"seed": ("INT", {"default": 0, "min": 0, "max": 0x7FFFFFFFFFFFFFFF}),
|
"seed": ("INT", {"default": 0, "min": 0, "max": 0x7FFFFFFFFFFFFFFF}),
|
||||||
},
|
|
||||||
"optional": {
|
|
||||||
# If set and present, a JSON file {prompt, negative, seed} overrides
|
# If set and present, a JSON file {prompt, negative, seed} overrides
|
||||||
# the widgets above. Lets the agent drive the loop file-first if it
|
# the widgets above. Lets the agent drive the loop file-first if it
|
||||||
# prefers that to the HTTP API.
|
# prefers that to the HTTP API. (Kept in `required` so it renders as an
|
||||||
|
# editable field, not an input socket.)
|
||||||
"source_file": ("STRING", {"default": ""}),
|
"source_file": ("STRING", {"default": ""}),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user