S2PD / README.md
jefequien's picture nielsr's picture
nielsr HF Staff
Add pipeline tag (#1)
0b8f8d4
|
Raw History Blame Contribute Delete
16.6 kB
---
library_name: s2pd
license: mit
pipeline_tag: image-to-video
tags:
- video-generation
- diffusion
- safetensors
- evaluation
---
# Serial-to-Parallel Diffusion
[Project Page](https://jefequien.github.io/S2PD/) · [Code](https://github.com/jefequien/S2PD)
## DiT-B
Pixel-space models trained from scratch.
| Dataset | Bidirectional | cDF | BC | S2PD |
| :--- | :---: | :---: | :---: | :---: |
| Conway | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/conway) |
| Chess | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/chess) |
| 2048 | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/2048) |
| Fifteen Puzzle | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/fifteen_puzzle) |
| Tetris | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/tetris) |
| Snake | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/snake) |
| Rubik’s Cube 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/rubiks_3d) |
| Double Pendulum | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/double_pendulum) |
| Three Body | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/three_body) |
| Colliding Balls 2D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/colliding_balls) |
| Colliding Balls 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/colliding_balls_3d) |
| Pong | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/dit-b-pixel/pong) |
## Wan-5B-LoRA
Adapters requiring the [Wan-5B backbone](https://huggingface.co/Wan-AI/Wan2.2-TI2V-5B-Diffusers).
| Dataset | Bidirectional | cDF | BC | S2PD |
| :--- | :---: | :---: | :---: | :---: |
| Kubric MOVi-A | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/wan-5b-lora/kubric_movi_a) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/wan-5b-lora/kubric_movi_a) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/wan-5b-lora/kubric_movi_a) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/wan-5b-lora/kubric_movi_a) |
| Kubric MOVi-C | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/wan-5b-lora/kubric_movi_c) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/wan-5b-lora/kubric_movi_c) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/wan-5b-lora/kubric_movi_c) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/wan-5b-lora/kubric_movi_c) |
| MPMWorlds | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/wan-5b-lora/mpm_worlds) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/wan-5b-lora/mpm_worlds) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/wan-5b-lora/mpm_worlds) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/wan-5b-lora/mpm_worlds) |
| Rubik’s Cube Real | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BD/wan-5b-lora/rubiks_real) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/CDF/wan-5b-lora/rubiks_real) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/BC/wan-5b-lora/rubiks_real) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/S2PD/wan-5b-lora/rubiks_real) |
<details>
<summary>Block size ablations (DiT-B)</summary>
Pin-8 and Pin-64 train with their named block size and full-video blocks, weighted 80/20.
| Dataset | Pin-8 | Pin-64 |
| :--- | :---: | :---: |
| Conway | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/conway) |
| Chess | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/chess) |
| 2048 | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/2048) |
| Fifteen Puzzle | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/fifteen_puzzle) |
| Tetris | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/tetris) |
| Snake | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/snake) |
| Rubik’s Cube 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/rubiks_3d) |
| Double Pendulum | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/double_pendulum) |
| Three Body | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/three_body) |
| Colliding Balls 2D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/colliding_balls) |
| Colliding Balls 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/colliding_balls_3d) |
| Pong | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/block-size/pin-64/dit-b-pixel/pong) |
</details>
<details>
<summary>Token order ablations (DiT-B, Pin-8)</summary>
| Dataset | Raster | Zigzag | Hilbert |
| :--- | :---: | :---: | :---: |
| Conway | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/conway) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/conway) |
| Chess | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/chess) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/chess) |
| 2048 | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/2048) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/2048) |
| Fifteen Puzzle | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/fifteen_puzzle) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/fifteen_puzzle) |
| Tetris | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/tetris) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/tetris) |
| Snake | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/snake) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/snake) |
| Rubik’s Cube 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/rubiks_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/rubiks_3d) |
| Double Pendulum | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/double_pendulum) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/double_pendulum) |
| Three Body | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/three_body) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/three_body) |
| Colliding Balls 2D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/colliding_balls) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/colliding_balls) |
| Colliding Balls 3D | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/colliding_balls_3d) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/colliding_balls_3d) |
| Pong | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/raster/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/zigzag/dit-b-pixel/pong) | [ckpt](https://huggingface.co/jefequien/S2PD/tree/main/checkpoints/ablations/token-order/hilbert/dit-b-pixel/pong) |
</details>
Download and usage instructions are in the [code repository](https://github.com/jefequien/S2PD).
## Datasets
- [Kubric MOVi-A](https://huggingface.co/jefequien/S2PD/tree/main/data/kubric_movi_a): 9,703 training and 250 validation clips.
- [Kubric MOVi-C](https://huggingface.co/jefequien/S2PD/tree/main/data/kubric_movi_c): 9,737 training and 250 validation clips.
- [Rubik’s Cube Real](https://huggingface.co/jefequien/S2PD/tree/main/data/rubiks_real): 5,000 training and 512 validation clips.
- [Chess](https://huggingface.co/jefequien/S2PD/tree/main/data/chess): 1 million training and 10,000 validation games.
## Licenses
Original weights, adapters, Rubik’s Cube Real footage, and training curves: [MIT](./LICENSE).
[Lichess games](https://database.lichess.org/): [CC0](./LICENSE-CHESS-CC0-1.0.txt). The [mirrored Wan backbone, VAE, UMT5 encoder, and tokenizer](./pretrained/wan-2.2-ti2v-5b): [Apache 2.0](./LICENSE-WAN-APACHE-2.0.txt).
S2PD Kubric renders: [CC BY-SA 4.0](./data/kubric_movi_a/LICENSE.txt); see the dataset cards for upstream attribution.
## Citation
If you use S2PD in your research, please cite:
```bibtex
@misc{hu2026s2pd,
title = {{S2PD}: Serial-to-Parallel Diffusion for Physically and Logically Consistent Video Generation},
author = {Hu, Jeffrey and Olmeda Reino, Daniel and Tewari, Ayush},
year = {2026},
eprint = {2610.06847},
archivePrefix = {arXiv},
primaryClass = {cs.CV},
url = {https://arxiv.org/abs/2610.06847}
}
```