ARVideoI2V
Seed an autoregressive video model with a start frame
- model
- vae
- start_image
- MODEL
- LATENT
Autoregressive video models are the streaming generation path in ComfyUI - instead of denoising a whole clip at once, they generate frame-by-frame or block-by-block, which is what makes first-frame latency near-instant possible. ARVideoI2V is the node that turns one of those models into an image-to-video model. You give it a start image, it gives you back a model that knows what the first frame should be, plus an empty latent to sample.
It landed in core in May 2026, and it works with the Causal Forcing / Self-Forcing AR checkpoints - the community Self-Forcing fine-tunes built on Wan 2.1 1.3B being the ones most people actually run.
How it works
The trick is in the mechanism, and the source spells it out: the node VAE-encodes your start_image and stores it in the model's transformer options, so the AR sampler can seed its KV cache before denoising begins. That's the whole game - the first frame is already in the model's memory when it starts predicting, rather than being painted in as a condition at the end. And because it's a T2V checkpoint with the image baked into the cache, there's no separate I2V architecture or extra weights to find.
Inputs
model- your AR video model.vae- the matching VAE (the Wan family's 3D causal VAE for the 1.3B Self-Forcing checkpoints).start_image- the first frame. This is the required input that makes it I2V rather than T2V.width/height/length/batch_size- the standard video dimensions. Defaults are the usual 832×480, 81 frames.
Outputs
MODEL- the patched model with the start image tucked into its transformer options. This is what you feed to the sampler.LATENT- an empty latent with the correct shape for the video. Feed it to the KSampler alongside the model.
Building the rest of the graph
You'll also want EmptyARVideoLatent for the latent and SamplerARVideo for the actual autoregressive loop. That sampler has a num_frame_per_block setting (1 = framewise, 3 = chunkwise), and the tooltip carries the warning that matters: it must match the checkpoint's training mode. Get that wrong and your "I2V" generates garbage from frame one even though the start image encoded fine.
The other honest gotcha: the AR ecosystem is small. The quality bar is "streaming video you can watch as it renders," not "best frame quality available" - you're trading per-frame polish for low latency and long-generation feasibility. If you just want a nice 5-second clip, the standard diffusion video path is still the higher-quality default. If you want video that starts generating almost instantly and streams, this is the setup.
Ships with ComfyUI core, no install.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| vae | VAE | — | |
| start_image | IMAGE | — | |
| width | INT | 83216–8192 | — |
| height | INT | 48016–8192 | — |
| length | INT | 811–1024 | — |
| batch_size | INT | 11–64 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| LATENT | LATENT | — |