Strata 文本批量 / Batch
64 prompts, one model load, one receipt
- connection
- texts
- results
- paired_json
- text_list
This is the text twin of StrataT8ImageBatch, and it's arguably the most practically useful node in the pack: hand it a list of texts, get a list of rewritten prompts back, with the whole thing running in a single engine lease. If you've ever queued twelve separate prompt-helper runs and watched the model load twelve times, you know why this exists.
Where it sits in a workflow
The classic shape is a storyboard. StrataT8Structured turns your story into validated JSON with a list of shot prompts; its text_list output - or Extract's, or Video Analyze's - feeds straight into texts here; the results list then drives one generation per shot. One prompt-rewriting pass, one GPU handoff, N images. The pack's own examples wire it exactly this way.
The other use is bulk cleanup: a folder of rough ideas, a client's messy list, a CSV of captions, all normalised into the same prompt dialect.
How it works
texts is a bounded list - 1 to 64 strings - and each one becomes its own request with the same system prompt and the same sampling settings. They're sent in order, sequentially, all inside one call to the engine, which means one load, one unload, one VRAM handoff. What you don't get is parallelism; a batch of 64 is 64 sequential generations, so budget time accordingly.
The list type matters. texts is a STRATA_TEXT_LIST, not a native STRING list - which in ComfyUI's plumbing vocabulary means it's one object carried down one wire and processed by this node as a whole, rather than a list that makes every downstream node execute N times (the KB's plumbing notes). Only this pack's nodes emit it, deliberately: it's the "hand the batch to one node" type.
Inputs
- connection - from StrataT8Connection.
- texts - STRATA_TEXT_LIST, 1–64 strings. Wire it from Structured's
text_list, Extract'stext_list, or Batch's owntext_listif you're chaining rewrites. - system - defaults to
Rewrite this into an English image-generation prompt. Output only the prompt.It's applied to every item identically. Swapping it is how you repurpose the node: "Translate to English", "Condense to under 40 tokens", "Write a video prompt with camera movement". - Sampling:
max_tokens1024,temperature0.7,top_p0.95,top_k20,seed,reasoning_effort,refresh.
Outputs
- results - a native STRING list of the rewritten prompts, in input order.
- paired_json - a JSON array where each entry carries
index, the originalinput, theoutput, thereasoningand theusage. Save this. It's the only way to check which input produced which output when a rewrite goes sideways, and it's the thing you'll want when a client asks why shot 9 says something odd. - text_list - the results as a STRATA_TEXT_LIST, so you can chain into another batch node.
Install
Manager → search Strata-T8 (strata-t8, t8star), or:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/Comfyui-Strata-T8.git
python -m pip install -r Comfyui-Strata-T8/requirements.txt
Only jsonschema gets installed; the rest is ComfyUI's own stack. Restart ComfyUI, save a profile in the Strata-T8 sidebar, then select it in a Connection node. The node pack ships no weights - the engine and its Python/CUDA stack live in the portable runtime, and the model data (IQ3_S main model ~83.6GB plus ~5.22GB of MTP tensors) is a separate, prepared folder.
Where people get burned
Don't wire results into a sampler that also batches. The list makes the sampler run once per prompt. If you also set a batch size of 4, you've just asked for 4×N images. Set the sampler's batch to 1 and let the list do the fan-out.
64 is the ceiling, and it's per node. A 200-line list means 4 runs. Fine, but expect the engine to come up and down each time.
Sequential means slow. There's no concurrency here, and same-GPU mode only permits one request in flight anyway. A 64-item batch at a few seconds each plus one load is minutes of watching a progress bar, not seconds - plan for it, and don't point it at reasoning_effort: xhigh unless you enjoy waiting.
system applies to everything, so a bad system prompt gives you 64 bad prompts. Test the wording on a single Text node first, then come here.
refresh is your re-roll. Same list, same settings and same refresh value means ComfyUI returns the cached batch without touching the engine. Bump it when you want fresh rewrites; leave it alone when you're iterating on the downstream sampler, which is where you should be iterating anyway.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| connection | STRATA_CONNECTION | — | |
| texts | STRATA_TEXT_LIST | — | |
| system | STRING | Rewrite this into an English image-generation prompt. Output only the prompt. | — |
| max_tokens | INT | 10241–131072 | — |
| temperature | FLOAT | 0.700–2 | — |
| top_p | FLOAT | 0.950.01–1 | — |
| top_k | INT | 201–64 | — |
| seed | INT | 00–2147483647 | — |
| reasoning_effort | COMBO | 5 options: none, low, medium, high, xhigh | |
| refresh | INT | 00–2147483647 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| results | STRING | — |
| paired_json | STRING | — |
| text_list | STRATA_TEXT_LIST | — |