Qwen3-VL Prompt List Builder
Flatten a batch's worth of captions into one list for batch generation
- prompt_list
- count
Where Prompt Splitter hands you captions one at a time by index, Qwen3-VL Prompt List Builder does the opposite: it takes the same batch output and flattens all the captions into a single string, one per line (or separated however you like), plus a count. If your downstream target is a batch image-generation node - something that wants a whole list of prompts in one text field - this is the node that feeds it.
Think of the pipeline. You run Qwen3-VL Batch Run (Folder) over a folder of reference images and get a blob of === filename === blocks. That blob is great for humans reading results top-to-bottom, but it's the wrong shape for a batch sampler, which wants "prompt one, prompt two, prompt three" as a flat list. Prompt List Builder does the reshape: parse the batch output, strip the filename markers, join the remaining captions, done.
The three inputs
- batch_text (STRING, multiline) - the batch output, pasted or wired from Batch Run.
- clean_prefix (BOOLEAN, default true) - strips the
Next Scene:prefix from each caption, same as the splitter. On by default; turn it off if your downstream generator actually wants the prefix. - separator (enum) - how to join the captions:
newline(default),|||, or;;;. This is the knob that matches whatever your downstream node expects. Newline is the safe default for most batch prompt inputs; the custom separators exist because some nodes parse on a specific delimiter.
The two outputs
- prompt_list (STRING) - all captions joined by the separator, filename markers gone. Straight into your batch generation node's prompt field.
- count (INT) - how many prompts ended up in the list. Handy for sanity checks (did the batch really caption all 200 images?) and for configuring a batch sampler's count.
What it doesn't do
Worth being explicit, because the name invites the assumption: this node does not build prompts from scratch, and it does not apply any per-prompt logic. It's a formatter. If you feed it text that isn't in the === filename === batch format, it treats the whole string as one prompt and returns count = 1 - no error, just a uselessly flat list. If you need one caption extracted at a time with its filename, that's Prompt Splitter's job; these two are the split-into-one and flatten-into-many halves of the same parser.
Where it fits
The classic use: batch-caption a folder of reference images with Batch Run, run the output through Prompt List Builder, and hand prompt_list to a batch image-generation node so each caption becomes the prompt for regenerating its source image (or a variant of it). The count output tells you how many generations you're about to kick off, which is a nice last checkpoint before you queue up 200 jobs.
Install once via ComfyUI Manager (search "qwen3-vl-comfy-ui") or cd ComfyUI/custom_nodes && git clone https://github.com/Granddyser/qwen3-vl-comfy-ui && pip install -r requirements.txt, restart, and you'll find it under Qwen3-VL with the rest of the batch helpers. It's a small node - a parser, really - but it's the one that closes the loop between "folder captioned" and "batch generated."
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| batch_text | STRING | — | |
| clean_prefix | BOOLEAN | true | — |
| separator | COMBO | newline | 3 options: newline, |||, ;;; |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| prompt_list | STRING | — |
| count | INT | — |