Nodes/LongLive-Plug for ComfyUI/LongLive-Plug Sampling Recipe
ComfyUI Node

LongLive-Plug Sampling Recipe

The LongLive-Plug Sampling Recipe Node

By hiroki-abe-58·Created 23 days ago·Updated 7 days ago· 1
LongLive-Plug Sampling Recipe
  • model
  • positive
  • negative
  • guider
  • sampler
  • sigmas
  • recipe_report
◄recipewan21-14b-plug-4step-unipc►
◄init_noiseupstream►
◄strict_profiletrue►

Distilled video LoRAs are everywhere at this point - LightX2V and CausVid did for Wan roughly what Lightning did for SDXL. The catch is that the settings are not the settings you're used to. CFG has to sit at 1.0, the step count has to match what the adapter was trained for, and the noise schedule has to be the one it was distilled against. Set CFG 5 out of habit and your distilled model burns; run a 4-step adapter at 20 steps and you get artifacts, not quality.

LongLive-Plug Sampling Recipe is the node that refuses to let you make those mistakes. It outputs the three things SamplerCustomAdvanced wants - a guider, a sampler and sigmas - for one of five recipes whose provenance is pinned to an upstream commit.

Why not just use a KSampler

Because LongLive-Plug's default recipe doesn't use a stock solver. wan21-14b-plug-4step-unipc runs a 4-step FlowUniPC solver with a shift of 5.0 at CFG 1.0, and the pack re-implements that solver rather than approximating it - including the int64-truncated model timesteps and the x_T = noise starting point. The README claims CPU bit-identity with the upstream scheduler, and the node enforces its end of that bargain at runtime: if the SIGMAS tensor it handed you comes back changed, it raises sigmas do not match the LongLive-Plug recipe. Don't interpose a scheduler node between them.

The CFG 1.0 part matters more than beginners expect. At exactly 1.0 ComfyUI doesn't compute the unconditional pass at all, so a 4-step run is 4 model evaluations, not 8. The recipe's report tells you which. The base 50-step CFG 5 baseline, for comparison, is 100 passes.

The five recipes

wan21-14b-plug-4step-unipc is the default and the one to use. The -euler and -lcm variants were published upstream with the few-step adapter for other runtimes; the lcm one comes from the Self-Forcing-Plus training rollout and is stochastic. Then wan21-14b-base-50step-unipc-cfg5, which is Wan's own defaults, and wan21-14b-base-4step-unipc-cfg5-naive, which is not upstream at all and exists purely so you can see what step-cutting without adapters looks like. Spoiler: blurred and ghosted.

Three 4-step recipes is more choice than most people want. Default to unipc.

Inputs and outputs

Required: model, positive conditioning, recipe, init_noise, and strict_profile. negative is optional - and only used by the CFG 5 base recipe. Wire one into a CFG 1.0 plug recipe and it's ignored, which is correct behavior and worth knowing before you spend an afternoon tuning a negative prompt that never runs.

init_noise has two modes and the tooltip explains them exactly. upstream means x_T = noise, the Wan/LongLive convention where the starting point is pure noise and the latent's contents don't matter - so you need an empty latent, and the sampler raises if it isn't all zeros. comfy uses the standard sigma_0 × noise + (1 - sigma_0) × latent, which is what you want for image-to-video, where the latent carries the first frame.

Outputs are guider, sampler, sigmas, and recipe_report. First three go into SamplerCustomAdvanced alongside a RandomNoise and your empty latent; the fourth is a JSON string for a PreviewAny when you want to know which sigmas and model timesteps you actually ran.

Install

ComfyUI Manager, search LongLive-Plug. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/hiroki-abe-58/ComfyUI-LongLive-Plug

No extra Python dependencies. You do need the Wan2.1-T2V-14B bf16 diffusion model, the UM-T5 text encoder, the Wan 2.1 VAE and both LongLive-Plug LoRA adapters - the pack README pins the filenames and revisions. Run ComfyUI with --bf16-unet --bf16-text-enc --fp32-vae to match the tested setup. This node presumes you've already applied the adapter pair with LongLive-Plug Apply Adapter Pair; it checks for the marker that node leaves on the model and refuses to proceed without it.

Common issues

"recipe expects the LongLive-Plug adapter pair." You skipped the adapter node. Apply first, then feed that node's model output here.

"recipe is a base-model recipe but LongLive-Plug adapters are applied." The interlock works both directions. Which is a good thing - the base 50-step recipe at CFG 5 with the few-step adapter merged in is not a configuration anyone wants.

"expected a flow-matching (CONST) Wan model with timestep multiplier 1000." You're running something that isn't Wan, or isn't loaded the way the node expects.

Same seed doesn't reproduce the upstream CLI video. Documented limitation, and not a bug in your workflow: ComfyUI's RandomNoise uses a different noise layout than upstream, so the sampling arithmetic matches but the starting noise doesn't.

Only one config is actually proven. Wan2.1-T2V-14B at 832×480, 81 frames, on an RTX 5090. Other resolutions, lengths and GPUs are untested, and strict_profile blocks non-exact backbones by default - you can loosen it, at your own risk.

Worth saying plainly: this pack has essentially no community footprint yet. It's one author's carefully-instrumented integration, and the README documents its own limits better than most. Treat the benchmark numbers as one person's machine, and the interlock errors as the useful documentation they are.

CategoryLongLive-Plug

Inputs (6)

NameTypeDefaultDescription
modelMODEL—
positiveCONDITIONING—
recipeCOMBOwan21-14b-plug-4step-unipc5 options: wan21-14b-plug-4step-unipc, wan21-14b-plug-4step-euler, wan21-14b-plug-4step-lcm, wan21-14b-base-50step-unipc-cfg5, wan21-14b-base-4step-unipc-cfg5-naive
init_noiseCOMBOupstreamupstream: x_T = noise (Wan/LongLive). comfy: x_T = sigma_0 * noise + (1 - sigma_0) * latent
strict_profileBOOLEANtrue—
negativeoptCONDITIONING—

Outputs (4)

NameTypeDescription
guiderGUIDER—
samplerSAMPLER—
sigmasSIGMAS—
recipe_reportSTRING—