ComfyUI Node

List to Text Node

The boring node that makes BLIP's answers readable

By muhammederem·Created 2 years ago·Updated about a year ago· 1
List to Text Node
  • list
  • STRING

Some nodes are heroics; this one is plumbing. The List to Text Node ships in the same tiny pack as the Blip Processor Node, and it exists for one reason: the Blip Processor outputs a list of answers, and a bare list is useless until something turns it into text you can actually read or feed onward. This node does that join. It's maybe ten lines of logic, but it's the difference between getting answers out of the pack and staring at a connection that leads nowhere.

What it does

It takes a LIST_STRING and joins every entry with a newline, returning a single STRING. That's the entire job - no separator option, no dedupe, no trimming, no "or". Just a straight "\n".join() on your list.

Because the node is flagged as an output node, ComfyUI renders its result right in the UI when the workflow runs. So the classic setup - LoadImage → Blip Processor Node → List to Text - shows you the Q&A transcript on screen the moment you hit Execute. The pack's bundled example workflow goes one step further and pipes the text into ShowText (from pysssss's ComfyUI-Custom-Scripts) so it floats in a persistent panel; nice if you're running the same image through many question batches and want the transcript to stick around.

Inputs and outputs

There's exactly one input, list (a LIST_STRING), and one output, STRING. Nothing optional, no knobs to fiddle with. This is a node you wire up in thirty seconds and never think about again.

Using it beyond the pack

Don't think of this as BLIP-only. Any node in your graph that emits a list of strings - question answers, batches of prompt variants, model name suggestions, whatever your other custom nodes throw off - can be flattened here for display or handed to any downstream text node that wants a single blob. It's a general-purpose string-join in the Comfy graph, and a handy one to have around.

Installing it

If you're here because you already have the Blip Processor installed, you already have this - one pack, both nodes, no separate setup. If not, ComfyUI Manager: search "blip-comfyui". Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/muhammederem/blip-comfyui

Then restart ComfyUI. This node itself needs nothing extra beyond the pack's pinned deps (transformers==4.44.0, torchvision==0.16.2, Pillow==11.0.0) - and notably, no model download. The only heavyweight in this pack is the Blip Processor's ~1GB HuggingFace model, and that only downloads when you actually run the image node. List to Text is pure logic.

Gotchas

They're few and mild. It's a dumb join: if your list entries already contain newlines, the output gets a little ragged, and there's no formatting toggle - for anything fancier you'd reach for a dedicated text-utility pack. It also joins exactly what it's given, so if the Blip Processor returns empty answers (which happens when you ask the 2022-era VQA model something it just shrugs at), you get blank lines rather than an error. That's not a bug in this node; that's the model telling you to rephrase.

Honestly, don't overthink it. Install the pack for the Blip Processor, and let List to Text be the cheap pair of hands that turns a list into words. That's its whole life, and it does it fine.

CategoryBlip

Inputs (1)

NameTypeDefaultDescription
listLIST_STRING

Outputs (1)

NameTypeDescription
STRINGSTRING