ComfyUI Node
FunPack Distilled Flow Sampler
ODE sampler for distilled few-step video models (e.g. LTX2.3 distilled LoRA). Adams-Bashforth 2-step multistep for better trajectory accuracy across large sigma jumps, Heun predictor-corrector on final steps for quality, optional controlled noise for diversity, optional velocity bias + reactive rescue (shared with the Hybrid/RF samplers), experimental ALG anchor de-staticking for i2v chunks, and experimental Momentum Guidance smoothing for the complementary (fine-motion) sigma window.
FunPack Distilled Flow Sampler
- sigmas
- sampler
- sigmas
◄order2►
◄final_correction_steps1►
◄s_noise0.00►
◄velocity_bias_modeoff►
◄velocity_bias_strength0.00►
◄velocity_bias_sourcemean►
◄velocity_refinement_keydefault►
◄rescue_modefalse►
◄rescue_threshold0.15►
◄rescue_strength0.20►
◄ab2_rampfalse►
◄normalize_strength0.00►
◄normalize_start_sigma0.900►
◄alg_enabledfalse►
◄alg_strength2.0►
◄alg_sigma_threshold0.975►
◄mg_enabledfalse►
◄mg_strength0.50►
◄mg_decay0.50►
◄mg_sigma_threshold0.975►
◄quality_sharpness0.00►
CategoryFunPack/Sampling
Inputs (22)
| Name | Type | Default | Description |
|---|---|---|---|
| order | INT | 21–2 | Multistep order. 1 = standard Euler ODE. 2 = Adams-Bashforth 2-step: extrapolates the denoised direction from two consecutive steps for better accuracy at no extra model-call cost. |
| final_correction_steps | INT | 10–3 | Number of final steps that use a Heun predictor-corrector pass. Each costs one extra model call but significantly improves final-step detail. 1 is usually enough for 8-step runs. |
| s_noise | FLOAT | 0.000–0.5 | Optional stochastic noise for diversity. 0 = fully deterministic ODE (recommended). Small values (0.05–0.15) add variation without strongly disrupting the distilled trajectory. |
| velocity_bias_mode | COMBO | off | Experimental: capture/apply averaged early model velocity around normalized sigma 0.9/0.72/0.42. Off preserves the plain distilled ODE. Note: few-step schedules may only land on a target or two, so it fires less often than on an 8-step run. |
| velocity_bias_strength | FLOAT | 0.000–3 | Strength of the remembered velocity (action) injected at the structure sigma. 0 disables. ~0.15 = subtle spice; 0.3-1.0 = clear action crossover; 2-3 approaches full action replacement (capped so the current gen isn't wiped). Creative tool, not for consistency. |
| velocity_bias_source | COMBO | mean | How velocity bias / rescue pick a good direction. 'mean' = prompt-blind global average. 'nearest' = single best-matching prompt cluster — preserves one real good gen's detail instead of a washed-out average. Affects both apply and rescue. |
| velocity_refinement_key | STRING | default | Memory key used to capture/apply early velocity bias and rescue trajectories. |
| rescue_mode | BOOLEAN | false | Reactive in-flight rescue, rating-gated. Steers each eligible step toward trajectories you rated good and away from ones you rated Awful (matched to the current prompt). A no-op until you've rated a few gens for this prompt/key. |
| rescue_threshold | FLOAT | 0.150–1 | Fires when the step has diverged from the good trajectory by more than this (1 - cosine) OR aligned with a bad trajectory by more than this (cosine). Lower = corrects more eagerly. 0.10-0.20 typical. |
| rescue_strength | FLOAT | 0.200–0.5 | How hard to pull toward good / push away from bad when triggered (magnitude preserved, no energy injected). Keep moderate; 0.5 is a strong correction. |
| sigmasopt | SIGMAS | — | |
| ab2_rampopt | BOOLEAN | false | Graduated 2nd order (free). Instead of full AB2 on every step, ramp the AB2 contribution linearly 0->1 across the schedule: early/noisy steps stay near 1st-order euler (less overshoot), late/detail steps get full AB2. No extra model calls. Helps low-step distilled runs. No effect at order=1. |
| normalize_strengthopt | FLOAT | 0.000–1 | Video-only latent normalization (anti-overbake / oversaturation / colour drift) stacked on this ODE. 0 = off. 0.5 = gentle. Audio is never touched. ~zero overhead. |
| normalize_start_sigmaopt | FLOAT | 0.9000–1 | Sigma at/below which latent normalization activates and anchors its reference (above it the x0 estimate is meaningless). Only used when normalize_strength > 0. |
| alg_enabledopt | BOOLEAN | false | EXPERIMENTAL: Adaptive Low-Pass Guidance (arXiv:2506.08456). Blurs the i2v anchor frame while sigma is above alg_sigma_threshold, then swaps back to the sharp anchor — counters the model's tendency to shortcut to a near-static video that just matches the reference image. No-op without an i2v anchor. |
| alg_strengthopt | FLOAT | 2.01–4 | Downsample factor for the anchor blur (paper default 2.5, but 2.0 held character/i2v consistency noticeably better in testing here). Higher = blurrier anchor during the affected steps. Only used when alg_enabled; guide-frame blur has its own controls on the Scene Chain Sampler (alg_blur_guides + alg_guide_blur_*). |
| alg_sigma_thresholdopt | FLOAT | 0.9750.5–0.999 | Anchor stays blurred while sigma is above this value (the near-pure-noise steps), then swaps to sharp. Higher = narrower blurred window. Only used when alg_enabled; guide-frame blur has its own controls on the Scene Chain Sampler (alg_blur_guides + alg_guide_blur_*). |
| mg_enabledopt | BOOLEAN | false | EXPERIMENTAL: Momentum Guidance (arXiv:2602.20360). Keeps a running average of the per-step direction and blends the current step toward it once sigma drops below mg_sigma_threshold — the complementary window to ALG's blur. Smooths the fine-motion/refinement steps; may damp motion as a side effect, untested for video. |
| mg_strengthopt | FLOAT | 0.500–1 | Blend weight toward the momentum average when active (0 = no effect, 1 = fully replace the step's direction with the average). Only used when mg_enabled. |
| mg_decayopt | FLOAT | 0.500–0.99 | EMA decay for the momentum average (higher = longer memory of past steps' directions). On our 8-step schedule, high decay (e.g. 0.9) keeps the EMA anchored to the very first, near-pure-noise step's direction for nearly the whole run — wrong scale, produces garbage regardless of mg_strength. Tested safe (and good) at 0.5 even at mg_strength=1.0. Only used when mg_enabled. |
| mg_sigma_thresholdopt | FLOAT | 0.9750.5–0.999 | Momentum guidance applies while sigma is BELOW this value (the opposite window from alg_sigma_threshold) — defaults to the same boundary as ALG for a clean handoff. Only used when mg_enabled. |
| quality_sharpnessopt | FLOAT | 0.000–1 | Restores fine detail via temporal-average unsharp on the x0 prediction, applied only during the final Heun-correction steps (final_correction_steps > 0 required to have any effect). 0 disables. 0.2-0.4 typical. Free (no extra model eval), video-only. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| sampler | SAMPLER | — |
| sigmas | SIGMAS | — |