arkennemasis QC Request (ask the critic to look)
Teach a vision model to be your QC critic — and make sure it sees both images
- plate
- candidate
- reference
- system_instructions
- request
- plate
- candidate
- reference
The numeric verifier in this pipeline can tell you the colour is off by ΔE 3.2 and the product moved 1.4% - but it can't tell you the material "reads convincingly as brushed aluminium." That's the gap the QC critic fills, and ArkQCRequest is the node that builds the critic's question. It packages the two images the critic must see - the locked plate and the generated candidate - together with a strict instruction set, so a vision LLM can judge the candidate the way a person would.
The critical detail is in the tooltip: the critic must see both. The node outputs the images alongside the text, and you wire them into the LLM's image_1 and image_2 inputs. A critic that only got the text would be grading from memory, which is how plausible-but-wrong renders sail through.
How it works
The default critic_instructions are a real QC checklist, in priority order: identity (same physical object, same silhouette, nothing "improved"), scene (camera, framing, lighting, shadow), the change itself (did the intended attribute actually change and read convincingly), bleed (did it spill onto a part it shouldn't have touched), artefacts. The answer must be one JSON object with verdict, confidence, identity_ok, scene_ok, change_ok, issues, diagnosis, and - the useful part - corrected_prompt, a full rewritten prompt addressing the specific defects.
Inputs and outputs
plate- the locked base photograph, IMAGE 1.candidate- the generated variation, IMAGE 2.cell_json- so the critic knows which variation it's judging.prompt_used- the prompt that produced the candidate. Without it the critic can diagnose but not correct.measurements_json- optional verdict from Verify Candidate. Giving the critic the numbers alongside the pictures makes it a second opinion rather than a duplicate of one.reference- the material reference photograph for the changed part, when the value was specified by picture. This one matters more than it looks: without it, the critic is asked whether a panel "reads convincingly as" a material it has never seen and can only mark its own guess - failing correct renders, which costs a paid regeneration each time.- Outputs:
system_instructions,request(wire both into the LLM withjson_onlyON), plusplate,candidate,referencepass-throughs for the vision inputs.
Install and gotchas
Part of the arkennemasis pack:
cd ComfyUI/custom_nodes
git clone https://github.com/Hishamahmer/comfyui-arkennemasis
pip install -r ComfyUI/custom_nodes/comfyui-arkennemasis/requirements.txt
Restart, or install via ComfyUI Manager by repo URL.
The two mistakes people make: forgetting reference on reference-image axes (a stream of phantom failures on renders that were actually correct), and forgetting prompt_used (the critic passes but offers no corrected_prompt, so a failing image just re-fails the same way on retry). Both are optional in the schema. Both cost you paid calls. Wire them.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| plate | IMAGE | The locked base photograph — IMAGE 1. | |
| candidate | IMAGE | The generated variation — IMAGE 2. | |
| cell_json | STRING | {} | — |
| prompt_usedopt | STRING | The prompt that produced the candidate. The critic needs it to rewrite it — without this it can diagnose but not correct. | |
| recipe_jsonopt | STRING | — | |
| measurements_jsonopt | STRING | Optional verdict from Verify Candidate. Giving the critic the numbers alongside the pictures makes it a second opinion rather than a duplicate of one. | |
| critic_instructionsopt | STRING | — | |
| referenceopt | IMAGE | The material reference photograph for the changed part, when the value was specified by picture. Without it the critic is asked whether a panel 'reads convincingly as' a material it has never seen, and can only mark its own guess — failing correct renders, which costs a paid regeneration each time. |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| system_instructions | STRING | — |
| request | STRING | — |
| plate | IMAGE | — |
| candidate | IMAGE | — |
| reference | IMAGE | — |