File size: 1,474 Bytes
892e8a7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11a0f9c
892e8a7
 
 
 
 
 
 
 
 
 
 
46695f2
892e8a7
 
 
 
 
 
 
 
 
 
 
 
 
46695f2
892e8a7
 
 
 
 
 
 
 
 
 
 
 
11a0f9c
892e8a7
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
---

license: apache-2.0
library_name: pytorch
pipeline_tag: other
tags:
  - world-model
  - diffusion
  - breakout
  - video
  - causal
  - game
---


# Diffusion Breakout

An action-conditioned Breakout world model. Hold **A / D** (or the arrow keys) and the model generates the next frame.

![demo](demo.gif)

128x128 at 6 FPS with 12 frames of latent history. The model has about 70M parameters and uses the frozen SDXL VAE from `madebyollin/sdxl-vae-fp16-fix`.

## Run it

Requires a CUDA GPU with BF16 support.

```bash

pip install torch numpy pillow safetensors huggingface_hub diffusers



hf download kerzgrr/diffusionbreakout live_infer.py --local-dir .

python live_infer.py --steps 4

```

To keep the weights in a local folder:

```bash

hf download kerzgrr/diffusionbreakout \

  --local-dir checkpoints/diffusionbreakout \

  --include "ema.safetensors" \

  --include "config.json" \

  --include "live_infer.py"



python checkpoints/diffusionbreakout/live_infer.py \

  --local-dir checkpoints/diffusionbreakout \

  --steps 4 \

  --window-scale 6

```

Click the window for focus. **A / Left** moves left; **D / Right** moves right.

## Files

| file | contents |
|---|---|
| `ema.safetensors` | action-conditioned EMA weights |
| `config.json` | model, video, codec, and training settings |
| `live_infer.py` | single-file live inference |
| `demo.gif` | live rollout |

Actions are encoded as `[left, right]`.