IPAdapterApply (SEGS)
Steer each detected region toward a reference image during detailing
- segs
- ipadapter_pipe
- reference_image
- neg_image
- SEGS
Detailing a face is one thing. Detailing it toward a specific reference face is another. IPAdapterApply (SEGS) attaches an IPAdapter reference to your detected regions, so that when the detailer re-renders each one, it's guided by an image you supply instead of prompt text alone. The classic use: you have a portrait you want the detailed faces to resemble, so you feed that reference in here and the detail pass pulls toward it. It applies the IPAdapter per SEG, which is what makes it region-aware rather than blanket.
This is a bridge node. It doesn't detail anything itself - it decorates the SEGS with IPAdapter conditioning that a downstream Detailer then honors.
How it works
You pass in your SEGS plus an ipadapter_pipe (the bundled IPAdapter model + CLIP vision, prepared upstream) and a reference_image. The node embeds that reference and stores it on the SEGS as per-region conditioning. When those SEGS reach a detailer, each region's sampling pass is steered toward the reference at the weight you set. It's the SEGS-scoped version of a normal IPAdapter apply.
The inputs and outputs that matter
segs(SEGS) - the regions to attach the reference to.ipadapter_pipe(IPADAPTER_PIPE) - the IPAdapter model bundle. You build this upstream with the IPAdapter pack's provider nodes; it carries the adapter model and CLIP vision encoder.reference_image(IMAGE) - the image you want the regions to resemble. This is the whole point of the node.weight(default 0.7) - how strongly the reference pulls. Higher sticks closer to the reference; too high and every region converges on it and looks stamped-on. 0.5–0.8 is the working range.start_at/end_at(defaults 0 and 0.9) - the fraction of sampling over which the reference applies. Ending before 1.0 lets the final steps settle naturally.faceid_v2+weight_v2- turn these on when you're using a FaceID-style adapter, which needs its own second weight.
The single output is SEGS - now carrying the reference - which you feed into a Detailer.
How to install it
Install the pack with ComfyUI Manager (search ComfyUI Impact Pack, Install, restart) or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack
cd ComfyUI-Impact-Pack
pip install -r requirements.txt
Run the pip in ComfyUI's Python environment and restart. Critically, this node needs an IPAdapter node pack installed separately to produce the IPADAPTER_PIPE, plus the IPAdapter model files and a CLIP vision model in your models folders. The README specifically warns that Impact Pack is incompatible with outdated versions of ComfyUI IPAdapter Plus - if this node misbehaves, updating that pack is the first move.
Common issues & troubleshooting
Type errors on the ipadapter_pipe input, or the node throws on load. This is the compatibility trap the README calls out: an out-of-date IPAdapter pack. Update the IPAdapter node pack to a current version and rebuild the pipe.
Every detailed region looks like the reference, uniformly. Your weight is too high. Bring it down - the reference should influence the region, not overwrite it.
Missing CLIP vision / model not found. IPAdapter needs both its adapter model and a CLIP vision model present. If the pipe provider errors, that's usually a missing file, not this node's fault.
Nothing changed. This node only tags the SEGS; the actual application happens in the detailer. If you didn't route the output SEGS into a Detailer, the reference never gets used.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| segs | SEGS | — | |
| ipadapter_pipe | IPADAPTER_PIPE | — | |
| weight | FLOAT | 0.70-1–3 | — |
| noise | FLOAT | 0.400–1 | — |
| weight_type | COMBO | channel penalty | 3 options: original, linear, channel penalty |
| start_at | FLOAT | 0.0000–1 | — |
| end_at | FLOAT | 0.9000–1 | — |
| unfold_batch | BOOLEAN | false | — |
| faceid_v2 | BOOLEAN | false | — |
| weight_v2 | FLOAT | 1.00-1–3 | — |
| context_crop_factor | FLOAT | 1.21–100 | — |
| reference_image | IMAGE | — | |
| combine_embedsopt | COMBO | 5 options: concat, add, subtract, average, norm average | |
| neg_imageopt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SEGS | SEGS | — |