Nodes/NovelAI GENYTOOLS/NAI XY 对比图
ComfyUI Node

NAI XY 对比图

A comparison grid where every cell is a paid generation

By XTOGENY·Created 3 months ago·Updated about a month ago· 20
NAI XY 对比图
  • nai_pipe
  • positive
  • negative
  • core_settings
  • advanced_settings
  • x_axis
  • y_axis
  • XY对比大图
  • 单元格图像批次
  • 单元格报告JSON
  • 费用与统计
◄base_seed0►
◄max_total_anlas0.00►
◄request_delay0.5►
◄use_cachetrue►
◄cache_max_gb10►
◄cell_gap8►
◄label_height72►
◄preview_max_edge512►

The A/B test machine of the pack, and the node that will quietly eat your Anlas if you let it. NAIXYPlotV2 takes the full modular pipeline, two axes from NAIXYAxisV2, and generates a labeled grid: every combination of X value and Y value becomes one image. 5×5 grid, 25 images, 25 API calls. That's the whole cost model in one sentence, so read the rest with that in mind.

What it is

Inputs: nai_pipe, positive and negative prompts, core and advanced settings - the same stack every sampler takes - plus x_axis and y_axis from the axis nodes. Then the controls:

  • base_seed - the seed for the first cell; each subsequent cell gets base_seed + index. That means a fixed seed sweeps across the grid rather than randomizing per cell, which is what you want for a controlled comparison.
  • max_total_anlas - a hard cap on the whole grid's spend. The node stops before firing if the batch would exceed it.
  • request_delay (default 0.5s) - a pause between calls. Matters for rate-limit safety on big grids.
  • use_cache / cache_max_gb - per-cell caching, so rerunning a grid only pays for cells whose inputs changed.
  • cell_gap, label_height, preview_max_edge - presentation: spacing, label strip height, and the max edge of the preview cells (labels stay readable, cells scale down).

Outputs: XY对比大图 (the assembled labeled grid image), 单元格图像批次 (the individual cells as a batch), 单元格报告JSON (per-cell details), and 费用与统计 (the spend summary).

What it's good at

The genuinely useful comparisons on a cloud API: guidance × sampler, steps × CFG rescale, model × steps, or a prompt-suffix sweep against a seed range. The KB's prompting notes hammer that sampler and guidance choices are image-dependent and you can't reason your way to the right one - you have to look. This node makes looking cheap per cell and expensive in aggregate, so the discipline is to keep axes small.

The cost discipline

This is the node where the "every cell is a paid generation" reality bites hardest. A 3×3 grid is 9 calls; a 6×6 grid is 36. Set max_total_anlas before you run, start with small axes to sanity-check the grid layout and labeling, and use the cache so re-tuning the prompt doesn't re-bill every cell - cells whose inputs (including prompt) are unchanged come back from cache for free.

Install and setup

Part of ComfyUI-NovelAI-GENYTOOLS. Manager search, or:

cd ComfyUI/custom_nodes
git clone https://github.com/XTOGENY/ComfyUI-NovelAI-GENYTOOLS.git
pip install -r ComfyUI-NovelAI-GENYTOOLS/requirements.txt

Restart, set your NovelAI Persistent API Token under NovelAI 2.0: Persistent API Token.

Gotchas

  • X and Y axes can't be the same parameter - the node rejects it (comparing guidance to itself is meaningless anyway).
  • Each axis maxes at 6 values, enforced here too. 6×6 = 36 paid calls if you don't set a cap.
  • The per-cell seed derives from base_seed + index, so the order of cells matters for reproducibility. Keep your axis values in a stable order.
  • The 费用与统计 output is your invoice. If a grid run cost more than you expected, the report JSON per cell tells you which cells actually went to the API versus hit the cache.
CategoryNovelAI 2.0/生成/批量任务与XY图

Inputs (15)

NameTypeDefaultDescription
nai_pipeNAI_PIPE—
positiveNAI_POSITIVE_PROMPT—
negativeNAI_NEGATIVE_PROMPT—
core_settingsNAI_CORE_SETTINGS—
advanced_settingsNAI_ADVANCED_SETTINGS—
x_axisNAI_XY_AXIS—
y_axisNAI_XY_AXIS—
base_seedINT00–4294967295—
max_total_anlasFLOAT0.000–100000—
request_delayFLOAT0.50–10—
use_cacheBOOLEANtrue—
cache_max_gbINT101–100—
cell_gapINT80–64—
label_heightINT7236–160—
preview_max_edgeINT512256–1024—

Outputs (4)

NameTypeDescription
XY对比大图IMAGE—
单元格图像批次IMAGE—
单元格报告JSONSTRING—
费用与统计STRING—