Nodes/SimpleSyrup/Batch SEGS
ComfyUI Node

Batch SEGS

Batch SEGS

By Artificial-Sweetener·Created 3 months ago·Updated 12 days ago· 2
Batch SEGS
  • segs_inputs
  • segs

Every time you run a detail pass on a face, you're using the same basic loop Impact Pack made famous: detect a region, crop it, resample it at proper resolution, paste it back. SimpleSyrup speaks that language too - it built its whole regional system around Impact's SEGS value so regions can move between detectors, detailers, and masks without rebuilding anything. The snag: what if you want to detail two kinds of region in one pass, say faces from one detector and hands from another? Most SEGS-consuming nodes take a single SEGS input. Batch SEGS exists so you don't have to run the detailer twice.

How it works

It's a Combine node for SEGS. The single segs_inputs socket is COMFY_AUTOGROW_V3 - expandable - so you keep dragging out new wires and each one adds another SEGS input. The node joins every segment from every input, in socket order, into one combined SEGS payload that comes out the other side. Downstream, Detail SEGS by Scale Factor (or any SimpleSyrup or Impact detailer) sees one flat list of regions and treats them all as a single pass.

Order matters, the same way it does everywhere else in this pack. SEGS regions come with a defined order, and per-region conditioning batches pair with them by position. If you're also feeding a CONDITIONING_BATCH to the detailer, the combined order here decides which prompt lands on which region. So plug in the detectors in the order you want regions processed, and you'll know exactly what the batch alignment is doing.

The one input, the one output

  • segs_inputs (COMFY_AUTOGROW_V3): expandable list of SEGS values. Each can be a single-detector result, an already-combined SEGS, or even output from Mask to SEGS if you're mixing detected and hand-drawn regions.
  • output segs (SEGS): all input segments concatenated in order. Wire straight into Detail SEGS as Regions, Detail SEGS by Scale Factor, Simple Preview SEGS, or KSampler (Contextual Diffusion)'s optional SEGS input.

There's no configuration here at all. It's plumbing - one of those "70% of your workflow is plumbing" nodes that never touches a pixel but keeps the graph from turning into a second job.

Why you'd reach for it

The realistic use is a workflow where you want faces and hands (or people and a specific prop) fixed in a single pass, because running the detailer twice doubles the sampling time and risks double-editing overlapping areas. Batch SEGS gives you one combined region set, one VAE round-trip per region, one composite. It also plays nicely with the pack's SEGS preview node if you want to eyeball what actually got detected before the expensive sampling starts.

Install

SimpleSyrup is one pack; install it once and all its nodes appear. Easiest route is ComfyUI Manager → search SimpleSyrup → Install → restart. Manual route:

Set-Location ComfyUI\custom_nodes
git clone https://github.com/Artificial-Sweetener/SimpleSyrup.git
Set-Location SimpleSyrup
..\..\venv\Scripts\python.exe -m pip install -r requirements.txt

Then restart ComfyUI. Keep ComfyUI itself current - SimpleSyrup uses the v3 extension API and simply won't register its nodes on an old build. Requirements are modest: the pack installs TorchLanc, Ultralytics, ONNX Runtime, Segment Anything and a few smaller helpers.

Common issues

  • Regions come out in the wrong order / wrong prompt per region - check socket order into Batch SEGS; it's positional, and rewiring silently changes pairing.
  • Nothing appears after install - update ComfyUI, then check Manager's log for the pip install step. If the node list is missing the whole SimpleSyrup category, it's almost always the stale-ComfyUI problem.

That's the whole node. Small, boring, and it's the thing that lets one detail pass cover regions from five different detectors.

CategorySimpleSyrup/Detection

Inputs (1)

NameTypeDefaultDescription
segs_inputsCOMFY_AUTOGROW_V3Expandable SEGS inputs joined in socket order.

Outputs (1)

NameTypeDescription
segsSEGSCombined SEGS with all input segments in order.