Simple Text To Batch
Simple Text To Batch
- STRING
Every now and then you want the LLM to do a batch's worth of work in a single call - and this node is how you harvest it. Ask Qwen to "write three scene descriptions separated by the word SEPARATOR," and Simple Text To Batch splits the one returned string into a list of three strings, ready to feed one scene at a time into whatever comes next. It's the pack's answer to the "one request, multiple results" pattern.
The mechanism is a split() with training wheels. Give it the text and a separator, and it breaks the text on that separator into a list. It handles common escape sequences - write \n in the separator field and it treats it as an actual newline - and it caps the output at max_count elements, so a runaway response can't flood your graph with a thousand chunks. It also strips whitespace off each chunk, which matters more than you'd think when the model pads lines with blank space.
Inputs and outputs
text- the LLM's output (or any text). Wire the Qwen node'stextoutput here.separator- the string to split on. Default isSEPARATOR; you pick whatever your prompt told the model to emit between items. Escape sequences (\n,\t,\r) are honored.max_count- cap on the number of output chunks (default 10, up to 100000). Excess splits simply don't happen - it's a hard limit, not a truncation warning.- Output:
STRING- a list of strings. That's the whole point: it plugs into nodes that iterate over a batch.
The README's example is the storyteller workflow - ask the model for a multi-scene story with a marker between scenes, split it, and feed each scene into a per-scene image generation block. That's where this node stops being a text utility and becomes a workflow multiplier: one LLM call, a whole batch of generations.
Install
It ships in KLL535/ComfyUI_Simple_Qwen3-VL-gguf:
cd ComfyUI/custom_nodes
git clone https://github.com/KLL535/ComfyUI_Simple_Qwen3-VL-gguf
or ComfyUI Manager (search ComfyUI_Simple_Qwen3-VL-gguf), restart, F5.
The honest take
The fiddly part is you - the separator has to actually appear in the model's output. Reasoning models in particular love to invent their own formatting, so tell it explicitly in the system prompt what the separator is, and if you enabled thinking, run the output through Simple Remove Think first or the <think> block will be one giant chunk. Also note the cap is silent: if the model returns ten scenes and max_count is 5, you get five and the rest is gone with no warning. Set max_count generously and rely on the separator, not the cap, to control output. Get that right and this node quietly turns one API-call-sized LLM job into a whole batch of work.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| separator | STRING | SEPARATOR | — |
| max_count | INT | 101–100000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |