Nodes/civitai-comfy-nodes/Civitai Qwen Image Bench
ComfyUI Node

Civitai Qwen Image Bench

Score your generated images against their prompts

By civitai·Created 2 months ago·Updated about a month ago· 42
Civitai Qwen Image Bench
  • api_config
  • results
  • workflow_id
  • raw_json
items_json
dimensions_json
modelurn:air:qwen3:repository:huggingface:Civitai/[email protected]
max_tokens4096
seed42

Ever had a stack of outputs and no good way to say which one is actually better? That's the hole this node fills. CivitaiQwenImageBench runs a judge model - Qwen-Image-Bench - over a batch of prompt/image pairs and returns a score per image, broken down by benchmark dimensions. Think of it as a rubber-stamp quality check that runs on Civitai's servers instead of in your head. You give it the prompt you used and the image you got, and it tells you how faithfully the image answers the prompt, on a 0/60/100 scale.

It lives in the Civitai/Analysis menu, part of Civitai's official ComfyUI pack. Like every node in that pack it's a thin cloud client: no model downloads, no local GPU, and the job is billed in Buzz. It's a niche tool, but if you batch-test prompts or compare LoRA checkpoints, an automated grader is a genuinely useful second opinion - especially when you're comparing dozens of variations and can't eyeball all of them.

How it works

The node takes a JSON array of items, each a {id, prompt, image} triple. Every item is evaluated independently - the judge looks at the prompt, looks at the image, and scores prompt adherence across its standard dimensions (things like content fidelity, style, quality - the exact set lives inside the model's output). Add dimensions if you want to restrict scoring to specific top-level dimensions; leave it empty and it scores everything.

Fill the two required fields as JSON, e.g.:

[
  {"id": "v1", "prompt": "a red fox in fresh snow, telephoto", "image": "https://example.com/out_v1.png"},
  {"id": "v2", "prompt": "a red fox in fresh snow, telephoto", "image": "https://example.com/out_v2.png"}
]

The image value is a URL (or data URL / base64 string) to the image being judged. Paste JSON into the multiline items_json widget; the node parses it and submits the batch. The results output comes back keyed by your id, with fieldScores per dimension plus a totalScore, alongside the usual workflow_id and raw_json.

The inputs that matter

  • items_json (required) - the prompt/image pairs to score. Valid JSON, one object per image.
  • dimensions_json (required, but can be left empty) - which benchmark dimensions to evaluate; empty means all.
  • model - which judge to use. Defaults to Civitai's hosted Qwen-Image-Bench-FP8 AIR model. You almost never need to touch this.
  • max_tokens (4096) and seed (42) - the model card's recommended values, already the defaults.

Installing it

This is one of ~160 nodes in Civitai Comfy Nodes, Civitai's official pack for their Orchestration API. Install the pack once and you get all of them:

  • ComfyUI Manager: Manager → Custom Nodes Manager → search Civitai Comfy Nodes (publisher civitai) → Install, then restart.
  • CLI: comfy node registry-install civitai-comfy-nodes
  • Source: clone into custom_nodes and pip install -r civitai-comfy-nodes/requirements.txt - the only dependency is requests.

You'll need a Civitai account and some Buzz, since scoring runs on their fleet. Credentials resolve through a connected Civitai Auth node, the CIVITAI_API_TOKEN env var (best for headless setups), or a stored key from the Civitai sidebar.

Where people get burned

  • Malformed JSON. The node parses items_json client-side, so a missing comma fails locally with a clear error before it ever reaches the API. Keep it valid JSON.
  • No credentials. Without an Auth node, env var, or stored key you get Civitai's "No Civitai credentials" error. Set CIVITAI_API_TOKEN and restart ComfyUI.
  • It's cloud, so it's moderated. Your prompts and images go to Civitai's servers and the same content filters as the web generator apply - outputs the pipeline flags come back blocked.
  • It's early preview. The pack's README is upfront that nodes "may change without notice," and the community has reported slow generation and bugs in the first weeks. A batch of many items can take a while, so the default 30-minute timeout (configurable via the Auth node or CIVITAI_COMFY_TIMEOUT) is worth knowing about.

If you're only grading one or two images, your own eyes are faster and free. This node pays for itself when "eyeball it" stops scaling - as a batch gate before you commit to a prompt direction.

CategoryCivitai/Analysis

Inputs (6)

NameTypeDefaultDescription
items_jsonSTRINGPrompt/image pairs to score. Each item is evaluated independently.
dimensions_jsonSTRINGTop-level benchmark dimensions to evaluate. Leave empty to evaluate all dimensions.
modeloptSTRINGurn:air:qwen3:repository:huggingface:Civitai/[email protected]The AIR model to use for the benchmark judge.
max_tokensoptINT40961–128000Maximum number of tokens to generate. The model card recommends 4096.
seedoptINT420–4294967295Deterministic seed. The model card recommends 42.
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (3)

NameTypeDescription
resultsSTRING
workflow_idSTRING
raw_jsonSTRING