Nodes/ComfyUI-IPAdapter-Flux/Apply IPAdapter Flux Model (Advanced)
ComfyUI Node

Apply IPAdapter Flux Model (Advanced)

The same node with weight scheduling instead of a flat number

By Shakker-Labs·Created 2 years ago·Updated about a year ago· 474
Apply IPAdapter Flux Model (Advanced)
  • model
  • ipadapter_flux
  • image
  • MODEL
weight_start0.00
weight_end1.00
steps10
start_percent0.000
end_percent1.000

This is ApplyIPAdapterFlux's sibling with one real difference: instead of a single flat weight value, you get weight_start, weight_end, and a steps count, so the adapter's pull can ramp across the generation instead of staying constant. Everything else - what the node does, how it wires in - is identical to the plain version. Reach for this one specifically when a flat weight isn't giving you the balance you want between "prompt matters" and "reference matters" at different points in the denoise.

How it works

Same mechanism as the standard Apply node: InstantX's Flux adapter injects your reference image through its own cross-attention path, running alongside (not replacing) your text conditioning. The difference here is purely about how strong that injection is allowed to be at different points in sampling. Rather than one number applied uniformly, you set a starting weight and an ending weight, computed across a given step count - so you can, say, start the adapter's pull strong early (while the model is still deciding broad composition) and taper it down toward the end (so fine detail doesn't get steamrolled by the reference).

That taper matters more than it sounds like it should. The most consistent complaint about IP-Adapter across every version of it - SD 1.5, SDXL, this Flux build - is that running it at full strength for the entire sampling process measurably softens detail. A weight that eases off late in the process is a direct answer to that, which is presumably why this Advanced variant exists as a separate node rather than just adding a slider to the basic one.

Same honesty check as the rest of the pack applies: the underlying adapter's own card says it isn't built for fine-grained style transfer or tight character consistency, and community sentiment is split between people who get great results and people who've moved to PuLID-Flux for faces or Redux for style. More knobs here won't turn this into an identity-lock tool - it'll just give you finer control over the same general-appearance adapter.

The inputs that matter

  • ipadapter_flux - the bundle from either IPAdapterFluxLoader or IPAdapterFluxLoaderAdvanced (they're interchangeable - same output type).
  • image - your reference image.
  • weight_start (default 0, range -1 to 5) and weight_end (default 1, same range) - the two ends of the weight ramp. Defaults ramp from off to fully-on, which is a reasonable starting point; flip them if you want the opposite (strong influence early, fading out).
  • steps (default 10, range 1100) - how many steps the weight ramp is computed over.
  • start_percent / end_percent (default 0 and 1) - same as the basic node: what fraction of the overall sampling schedule the adapter is active for at all. This is a separate control from the weight ramp - think of start_percent/end_percent as the on/off window, and weight_start/weight_end/steps as the intensity curve inside that window.

The output

A single MODEL, patched and ready for your KSampler - same as the standard Apply node.

Installing it

Same install as the rest of the pack. Via ComfyUI Manager: search ComfyUI-IPAdapter-Flux, install, restart. By hand:

cd ComfyUI/custom_nodes
git clone https://github.com/Shakker-Labs/ComfyUI-IPAdapter-Flux
cd ComfyUI-IPAdapter-Flux
pip install -r requirements.txt

Then the model files, not bundled with the code: InstantX's FLUX.1-dev-IP-Adapter into ComfyUI/models/ipadapter-flux, and google/siglip-so400m-patch14-384 into ComfyUI/models/clip_vision (or leave it to auto-cache from HuggingFace on first run). Restart ComfyUI afterward.

Where people get burned

If you're not sure whether you need this node over the plain ApplyIPAdapterFlux, you probably don't - start with the basic node and a flat weight around 0.5–0.8, and only reach for the ramp once you've actually hit the "full strength softens my detail" problem and want finer control than just lowering end_percent. Don't set weight_start/weight_end and then forget start_percent/end_percent are a separate, still-active control - leaving the latter at full range (0 to 1) while trying to shape influence purely through the weight ramp is a common way to get confused about why a change "isn't doing anything." And as with the rest of this pack: dependency conflicts from requirements.txt sharing your Python environment with other custom nodes are a far more likely cause of an install error than a bug in this specific node.

CategoryInstantXNodes

Inputs (8)

NameTypeDefaultDescription
modelMODEL
ipadapter_fluxIP_ADAPTER_FLUX_INSTANTX
imageIMAGE
weight_startFLOAT0.00-1–5
weight_endFLOAT1.00-1–5
stepsINT101–100
start_percentFLOAT0.0000–1
end_percentFLOAT1.0000–1

Outputs (1)

NameTypeDescription
MODELMODEL