Nodes/ComfyUI-Artist-Tester/πŸ‘‰ 1. Artist Iterator (V2)
ComfyUI Node

πŸ‘‰ 1. Artist Iterator (V2)

Batch-test 100 artists without babysitting ComfyUI

By g7b2Β·Created 9 months agoΒ·Updated 8 months agoΒ· 0
πŸ‘‰ 1. Artist Iterator (V2)
    • artist_tag
    • current_index
    • total_count
    • index_string
    β—„text_listGreg Rutkowski artist:wlop artist:cilorankoβ–Ί
    β—„select_modeAuto Incrementβ–Ί
    β—„seed0β–Ί
    β—„reset_counterfalseβ–Ί
    β—„index_input0β–Ί

    You've got a base prompt you like and twenty artist tags you want to run it through. The boring way: edit the prompt box, hit queue, compare, repeat twenty times. This node is the not-boring way - it hands you one artist per queue run, so you can queue the whole batch and walk away.

    ArtistListIterator is the core of the g7b2/ComfyUI-Artist-Tester pack, and it's about as simple as the idea gets. You paste a list, one artist per line, and it outputs a single line plus some counters. It doesn't render anything, doesn't touch a model, needs no API key. It's a prompt-management node, and that's the point: batch-testing artists is the classic "the UI has no button for this" ComfyUI job - batched prompt variations are exactly what a form interface can't express - and this is a tiny dedicated tool for it.

    How it works

    The node keeps a counter in memory, keyed by an MD5 hash of your list's text. That hash is the "counter isolation" the README brags about: give two of these nodes different lists and they each track their own position without clobbering each other. The flip side is the counter is bound to the list content - change a line or reorder, and the hash changes, so the counter starts over.

    There are four select_mode options:

    • Auto Increment (default): 0, 1, 2… wraps around. Nothing clever.
    • Random (No Repeat): the one you want for a long batch. The seed shuffles the list's indices deterministically, like building a playlist, and the counter walks it. Run a hundred artists with one seed and you'll see every one exactly once before any repeats.
    • Random (Pure): old behavior, uses Python's global random, can hit the same artist twice in a row. Fine for A/B vibes, wrong for a clean sweep.
    • Fixed (Use Input): pick a specific line by feeding index_input.

    Two implementation details matter. The node overrides IS_CHANGED to return NaN, which tells ComfyUI "never cache me" - without that, ComfyUI would run the node once, cache it, and you'd be stuck on artist #1 forever. And the counter lives in Python memory, not in your workflow JSON: restart ComfyUI and you're back at line one.

    The inputs you'll actually touch

    • text_list - one artist per line, whitespace trimmed, blank lines skipped. The default is Greg Rutkowski, artist:wlop, artist:ciloranko - note the artist: prefix, the CivitAI-style tag format many models were trained on.
    • select_mode - described above.
    • seed - only does anything in Random (No Repeat). It reshuffles the playlist; the other modes ignore it entirely.
    • reset_counter - labelled "Reset (Run Once)" for a reason. Flip it on, queue once, flip it back off, or it resets every run and you never leave artist #1.
    • index_input (optional) - for Fixed mode.

    Outputs and wiring

    You get four: artist_tag (the line itself), current_index (0-based), total_count, and index_string - a zero-padded string like 001 whose padding adapts to your list length, so filenames sort correctly whether you have 9 artists or 100. The canonical wiring is artist_tag β†’ ArtistPromptComposer's artist_tag input, and index_string β†’ the save node's filename prefix if you want per-artist files.

    Installing

    Same deal as the whole pack: ComfyUI Manager, search "ComfyUI-Artist-Tester", or

    cd ComfyUI/custom_nodes
    git clone https://github.com/g7b2/ComfyUI-Artist-Tester.git
    

    then restart. Zero dependencies, zero model downloads - pyproject.toml lists an empty dependencies, and all three nodes are pure Python. It shows up under the "🎨 Artist Tester" category.

    Gotchas worth knowing

    • The counter is session-only. If ComfyUI restarts or crashes mid-batch, you're back at artist #1; there's no resume built in.
    • In Random (No Repeat), the permutation depends on the seed and the list length. Add or delete a line mid-batch and the shuffle changes - you can see repeats at the boundary.
    • Changing the seed mid-batch reshuffles too, which can re-hit an artist you already did.
    • It's a tiny MIT pack (v2.0.0, beta) with essentially no community footprint, so like any custom node it's worth a skim of the source before you trust it with a production workflow.

    That's the whole tool. Paste your list, pick a mode, queue the batch.

    Category🎨 Artist Tester

    Inputs (5)

    NameTypeDefaultDescription
    text_listSTRINGGreg Rutkowski artist:wlop artist:cilorankoβ€”
    select_modeCOMBOAuto Increment4 options: Auto Increment, Random (No Repeat), Random (Pure), Fixed (Use Input)
    seedINT00–18446744073709550000β€”
    reset_counterBOOLEANfalseβ€”
    index_inputoptINT00–18446744073709550000β€”

    Outputs (4)

    NameTypeDescription
    artist_tagSTRINGβ€”
    current_indexINTβ€”
    total_countINTβ€”
    index_stringSTRINGβ€”