Skip to content

Repository files navigation

PrediT — training-free acceleration for diffusion transformers

PrediT

Predict to Skip: Linear Multistep Feature Forecasting for Efficient Diffusion Transformers

Hanshuai Cui · Zhiqing Tang · Qianli Ma · Zhi Yao · Weijia Jia

Training-free diffusion acceleration through prediction, correction, and adaptive skipping.

arXiv 2602.18093 ACM Multimedia 2026 Training-Free Python 3.10+ PyTorch License: Apache-2.0

Overview · Method · Quick Start · Backends · Repository layout · Citation · License

Overview

Diffusion transformers spend many model evaluations traversing locally smooth segments of the denoising trajectory. PrediT turns that regularity into a training-free acceleration strategy: it forecasts future denoising outputs, corrects when the dynamics rise, and adapts the number of skipped evaluations to the current trajectory.

Efficiency

The following values are reported in the accepted paper. Refer to the paper for the complete datasets, baselines, quality metrics, and evaluation protocol.

Backend Paper-reported speedup
FLUX.1-dev 4.28×
DiT-XL/2 2.48×
HunyuanVideo 3.28×
Best reported operating point up to 5.54×

PrediT does not redistribute model weights or datasets. Access to upstream models—and compliance with their usage terms—remains the user's responsibility.

Method

Overview of the PrediT method

PrediT predicts smooth denoising regions, corrects rising dynamics, and skips model evaluations adaptively.

At every computed step, Dynamic Step Modulation measures the relative change in model output and converts it into an adaptive prediction horizon:

delta = ||f_n - f_(n-1)||_1 / (||f_n||_1 + eps)
J = clamp(floor(tau / (delta + eps)^(1 / (p + 1))), 1, J_max)
Regime Decision
delta >= tau ABM correction, with no subsequent skip
tau * correction_ratio <= delta < tau ABM correction, followed by up to J - 1 skips
delta < tau * correction_ratio AB update, followed by up to J - 1 skips

A skipped step uses only the most recent computed model outputs: predicted values are never fed back into the history buffer. The shared core supports Adams–Bashforth and Adams–Moulton orders 1–4. Its coefficients and history ordering match the paper supplement and the FLUX/HunyuanVideo experiment code. As in those implementations, the closed-form coefficients assume an approximately uniform local timestep grid.

Quick Start

Python 3.10 or newer is required.

git clone https://github.com/hsc113/PrediT.git
cd PrediT
python -m venv .venv
source .venv/bin/activate
pip install -e ".[torch,test]"
pytest

Validate the packaged configurations without loading a model:

predit validate-config configs/flux.json
predit validate-config configs/dit_50.json --smoke
predit validate-config configs/hunyuanvideo_17f.json --smoke
predit provenance

Supported Backends

FLUX.1-dev

Use the BFL FLUX checkout pinned in provenance.json. Configure its documented checkpoint environment variables, then run:

python scripts/run_flux.py \
  --upstream /path/to/flux \
  --config configs/flux.json \
  --prompt "A red fox resting in snow" \
  --output outputs/flux/fox.png

For a quick integration check, add --smoke. The smoke profile reduces spatial size and step count; it is an integration check, not a quality benchmark.

DiT-XL/2

The DiT adapter follows the epsilon-level DDIM sampler in the paper supplement and imports the official DiT checkout pinned in provenance.json at runtime:

pip install -e ".[dit]"
python scripts/run_dit.py \
  --upstream /path/to/DiT \
  --checkpoint /path/to/DiT-XL-2-256x256.pt \
  --vae stabilityai/sd-vae-ft-mse \
  --config configs/dit_70.json

Use configs/dit_50.json for the 50-step profile. The paper-reported 2.48× DiT result uses the 70-step profile; add --sampler ddim for a matched deterministic DDIM baseline.

HunyuanVideo

First apply the integration patch following integrations/hunyuanvideo/README.md.

The PrediT runner passes the shared configuration through hunyuan_pipeline_kwargs; model, prompt, device, and output paths stay explicit:

python scripts/run_hunyuanvideo.py \
  --upstream ../HunyuanVideo \
  --model-path /path/to/HunyuanVideo-weights \
  --config configs/hunyuanvideo_17f.json \
  --output outputs/hunyuanvideo/sample.mp4 \
  -- --model HYVideo-T/2-cfgdistill

Configuration

Each JSON configuration contains three sections:

Section Purpose
predit Algorithm parameters: order, mode, thresholds, skip/fixed intervals, sensitivity, timestep window, and eps
generation Deterministic model, prompt/class, seed, shape, steps, guidance, device, and output settings
smoke Fields overlaid on generation when --smoke is supplied

CLI output paths and prompts take precedence over configuration values. Runners write *.config.json and *.stats.json next to the generated media.

Repository layout

src/predit/       shared methods, controller, and adapters
configs/          paper and smoke profiles
integrations/     separately licensed optional upstream patches
scripts/          one-sample runners and repository audit
tests/            coefficient, state-machine, config, and adapter tests
provenance.json   exact source revisions, file hashes, and license boundaries

Citation

If PrediT is useful in your research, please cite the paper:

@misc{cui2026predictskiplinearmultistep,
  title={Predict to Skip: Linear Multistep Feature Forecasting for Efficient Diffusion Transformers},
  author={Hanshuai Cui and Zhiqing Tang and Qianli Ma and Zhi Yao and Weijia Jia},
  year={2026},
  eprint={2602.18093},
  archivePrefix={arXiv},
  primaryClass={cs.CV},
  url={https://arxiv.org/abs/2602.18093}
}

License

Original PrediT code is released under Apache-2.0. The HunyuanVideo integration patch and the derivative files it installs are expressly excluded from that grant and remain subject to the Tencent Hunyuan Community License. This repository does not relicense upstream projects, model weights, or datasets. See LICENSE, NOTICE, THIRD_PARTY.md, provenance.json, and the license files beside the integration patch for details.

About

Official implementation of PrediT (ACM MM 2026): training-free linear multistep feature forecasting for efficient diffusion transformers.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages