ComfyUI Node

Embeddr Split IDs

One list in, many individual IDs out — the batch-processing enabler

By embeddr-net·Created 9 months ago·Updated 5 months ago· 0
Embeddr Split IDs
  • artifact_ids
  • split_ids

Split IDs does exactly what it says: it takes a comma-separated list of artifact IDs and splits it into individual IDs for batch processing. One list in, a list of single IDs out. On the surface it's the most boring node in the Embeddr pack. Underneath it's the reason you can do "load all of these, one at a time" without hand-splitting strings.

Here's the key mechanism, straight from the tooltip on the output: the split_ids output is marked for List Execution. ComfyUI understands that this node emits a list, and downstream nodes that support iteration run once per item. So you wire Split IDs' output into something that wants one ID, and instead of loading "the list," it loads each ID in turn. That's the batch pattern - and it's the inverse of Merge IDs, which bundles IDs into a list for lineage. The pair is the pack's way of doing both directions of "one vs. many."

The input

  • artifact_ids - the custom EMBEDDR_ARTIFACT_ID input. The tooltip says it plainly: "Comma-separated IDs or list of IDs." The node is forgiving about what it receives: a plain comma-separated string, a list, or an object carrying an ID all get normalized into clean individual ID strings. It strips whitespace, skips empties, ignores "none"/"null", and dedupes - so " abc, def, abc " becomes two IDs, not three.

The dedupe is worth remembering: if you feed it a list that legitimately contains the same ID twice, you get one. That's almost always what you want for batch loading, but if your workflow's semantics depend on duplicates, this node will quietly collapse them.

Where it slots into a workflow

The natural pipeline: Load Artifacts (or a search node) returns a batch of IDs → Split IDs fans them out → Load Artifact processes each individually → you get per-artifact outputs you can compare or chain. It's also the cleanup step after Merge IDs - merge for lineage, split for per-item work. Since the node makes no network calls and touches no pixels, it's pure plumbing; nothing to tune, nothing to break.

Install & notes

Pack install as usual: embeddr serve running, pack via ComfyUI Manager or a release into custom_nodes, restart ComfyUI. No extra dependencies.

The one thing to double-check when it "doesn't work": whether your downstream node actually iterates a list. ComfyUI's list execution isn't universal across all custom nodes - if the node you're feeding isn't list-aware, it'll either take the first item or complain about a type mismatch. If that happens, the fix is a batch/iteration-capable node (or an explicit loop) rather than this node. Also: an empty input produces an empty output with no error, so if nothing happens downstream, verify an ID actually reached the input.

CategoryEmbeddr

Inputs (1)

NameTypeDefaultDescription
artifact_idsEMBEDDR_ARTIFACT_IDComma-separated IDs or list of IDs

Outputs (1)

NameTypeDescription
split_idsEMBEDDR_ARTIFACT_IDIndividual IDs (List Execution)