Nodes/arkennemasis Nodes/arkennemasis Catalogue Fan-Out (one chain, N rows, concurrent)
ComfyUI Node

arkennemasis Catalogue Fan-Out (one chain, N rows, concurrent)

One chain, N rows, rendered concurrently — the catalogue loop

By Hishamahmer·Created about a month ago·Updated a day ago· 6
arkennemasis Catalogue Fan-Out (one chain, N rows, concurrent)
    • model_image
    • cloth_image
    • prompt
    • filename
    • sku
    • index
    • count
    rows_json[]

    ArkCatalogueFanOut is the loop of the catalogue path. You build one generation chain - image edit node, save node, whatever the run needs - and this node makes that single chain render every row of the catalogue, concurrently. No copying the chain N times, no for loop in your head, no 200-node canvas. Wire it between ArkCatalogueLoad and your generator and the fan-out is the plumbing.

    The mechanism is ComfyUI's OUTPUT_IS_LIST: everything this node emits except count is a list, and ComfyUI responds by running the downstream chain once per item. That's what turns one graph into N executions. Because the rows run through the same chain, the image generator's own concurrency gate overlaps the calls - which is the polite way of saying you get parallelism without blasting a rate limit.

    How it works

    The only required input is rows_json, straight from ArkCatalogueLoad's rows_json output. The node reads the rows, loads each row's model and cloth reference images from disk, and fans everything out:

    • model_image → wire into the generator's image_1
    • cloth_imageimage_2
    • promptprompt
    • filename → the save node (the CSV's own filename, so files land where the spreadsheet says)
    • sku, index - per-row identifiers for naming and records
    • count - not a list; the total, for nodes that need to know how many there are

    If there's nothing to generate - every row already delivered, or the filter on Load matched no rows - it raises and tells you so, rather than silently doing nothing.

    Installing

    cd ComfyUI/custom_nodes
    git clone https://github.com/Hishamahmer/comfyui-arkennemasis
    pip install replicate httpx
    

    Restart ComfyUI. It's pure list plumbing - no models, no keys.

    Troubleshooting

    • "nothing to generate" - all rows delivered, or the filter matched nothing. Check the Load node's only/skip_existing settings rather than assuming a broken graph.
    • One row per chain run means one failure can be per-row. The generator's retry logic (in the pack's API nodes) handles transient 429s and 5xx; a hard failure on one row aborts that run. That's why skip_existing on Load matters - a failed run resumes without re-billing what already succeeded.
    • Concurrency caution: the pack's API nodes default to running one call at a time with an option for all at once (capped at 2 by default). If you're paying per call, keep an eye on which mode your generator is in before you fan out 60 rows.
    Categoryarkennemasis/Variation

    Inputs (1)

    NameTypeDefaultDescription
    rows_jsonSTRING[]

    Outputs (7)

    NameTypeDescription
    model_imageIMAGE
    cloth_imageIMAGE
    promptSTRING
    filenameSTRING
    skuSTRING
    indexINT
    countINT