BasicPipe -> DetailerPipe (SDXL)
Build an SDXL base+refiner detailer pipe
- base_basic_pipe
- refiner_basic_pipe
- bbox_detector
- sam_model_opt
- segm_detector_opt
- detailer_hook
- detailer_pipe
This one is specifically for the SDXL base+refiner setup. If you're running SDXL the "proper" way - base model does the bulk of the denoising, refiner polishes the last steps - and you want your detailing passes to use both, BasicPipe -> DetailerPipe (SDXL) is how you fuse them into a single DETAILER_PIPE that the refiner-aware detailers can consume. It takes two basic pipes, one for the base and one for the refiner, plus a detector, and bundles the lot.
Honestly, for a lot of workflows the SDXL refiner is optional-to-skippable these days. But if you are using it and you want your face/hand detail passes to respect it too, this is the node that carries the refiner through into detailing instead of leaving it behind after the initial generation.
How it works
A basic pipe bundles model + clip + vae + positive + negative. This node takes two of them - base_basic_pipe and refiner_basic_pipe - and packs them together with a detector into a detailer pipe that knows about the base/refiner split. Downstream, an SDXL-capable detailer unpacks it, runs the base sampler for most steps and the refiner for the tail, and refines each detected region with the full two-model treatment.
The inputs and outputs that matter
base_basic_pipe- the SDXL base model bundle. Does most of the work.refiner_basic_pipe- the SDXL refiner bundle. Applied for the final refining steps.bbox_detector- the detector that finds regions to detail (a YOLO face detector, typically).wildcard- optional per-region prompt text.Select to add LoRA/Select to add Wildcard- UI helper dropdowns that insert syntax into the wildcard field; they're not data inputs.
Optional: sam_model_opt and segm_detector_opt to tighten masks, and detailer_hook for advanced per-pass control.
The single output is detailer_pipe (DETAILER_PIPE), which feeds a detailer-pipe node - the refiner ratio is set on that downstream detailer, not here.
How to install it
Part of the Impact Pack. ComfyUI Manager: search ComfyUI Impact Pack, Install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack comfyui-impact-pack
cd comfyui-impact-pack
pip install -r requirements.txt
then restart. You'll want the Impact Subpack for the YOLO detector, and of course the SDXL base and refiner checkpoints loaded into their two basic pipes.
Common issues & troubleshooting
Only the base seems to be doing anything. How much the refiner contributes is controlled by the refiner_ratio on the downstream detailer, not on this node. This node only bundles the two pipes; set the ratio where the detailing actually happens.
Type errors connecting the pipes. Both inputs need to be genuine BASIC_PIPE objects (from a ToBasicPipe node or equivalent). Feeding a detailer pipe or loose model wires here won't work - build each basic pipe first.
You're not actually using an SDXL refiner. Then you don't need this node at all. Use ToDetailerPipe for a plain single-model detailer pipe; the SDXL variant only earns its place when you genuinely have a base and a separate refiner to combine.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| base_basic_pipe | BASIC_PIPE | — | |
| refiner_basic_pipe | BASIC_PIPE | — | |
| bbox_detector | BBOX_DETECTOR | — | |
| wildcard | STRING | — | |
| Select to add LoRA | COMBO | 1 options: Select the LoRA to add to the text | |
| Select to add Wildcard | COMBO | 1 options: Select the Wildcard to add to the text | |
| sam_model_optopt | SAM_MODEL | — | |
| segm_detector_optopt | SEGM_DETECTOR | — | |
| detailer_hookopt | DETAILER_HOOK | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| detailer_pipe | DETAILER_PIPE | — |