Commit ·
175fdf1
1
Parent(s): c565789
Refresh RAVEN model card
Browse files
README.md
CHANGED
|
@@ -1,174 +1,92 @@
|
|
| 1 |
---
|
| 2 |
license: cc-by-nc-4.0
|
| 3 |
-
|
| 4 |
-
tags:
|
| 5 |
-
- text-to-video
|
| 6 |
-
- video-generation
|
| 7 |
-
- diffusion
|
| 8 |
-
- autoregressive
|
| 9 |
-
- consistency-model
|
| 10 |
-
- grpo
|
| 11 |
-
- wan2.1
|
| 12 |
-
- raven
|
| 13 |
base_model:
|
| 14 |
- Wan-AI/Wan2.1-T2V-1.3B
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
---
|
| 17 |
|
| 18 |
# RAVEN: Real-time Autoregressive Video Extrapolation with Consistency-model GRPO
|
| 19 |
|
| 20 |
[Yanzuo Lu](https://yanzuo.lu/) · [Ronglai Zuo](https://2000zrl.github.io/) · [Jiankang Deng](https://jiankangdeng.github.io/) — Imperial College London
|
| 21 |
|
| 22 |
-
Project page: https://yanzuo.lu/raven
|
|
|
|
|
|
|
| 23 |
|
| 24 |
## Overview
|
| 25 |
|
| 26 |
-
RAVEN is a causal autoregressive text-to-video
|
| 27 |
|
| 28 |
-
|
| 29 |
|
| 30 |
-
|
| 31 |
-
| --- | --- |
|
| 32 |
-
| `raven_model.pt` | Full RAVEN backbone for causal autoregressive text-to-video generation. |
|
| 33 |
-
| `cmgrpo_raven_lora.safetensors` | CM-GRPO LoRA adapter only. Load `raven_model.pt` as the base weight and this file through the LoRA path. |
|
| 34 |
-
| `cmgrpo_raven_full.pt` | RAVEN base and CM-GRPO LoRA adapter packed into one PEFT-wrapped state dict. Load this file through the LoRA path without a separate base weight. |
|
| 35 |
-
| `cmgrpo_raven_merge.pt` | Full CM-GRPO backbone with the adapter already merged into RAVEN. Load this file as the base weight, with no LoRA block. |
|
| 36 |
|
| 37 |
-
|
| 38 |
|
| 39 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 40 |
|
| 41 |
## Model details
|
| 42 |
|
| 43 |
-
|
| 44 |
-
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
- Schedule: linear interpolation schedule, `v_lerp` prediction type
|
| 52 |
-
- Classifier-free guidance: not used; the `guidance_scale=3.0` value in the configs is a placeholder for interface compatibility
|
| 53 |
-
- Causal chunking: `chunk_size=3`, `independent_first_chunk=3`, `sink=0`, `window_size=null`
|
| 54 |
-
- VAE stride: `[4, 8, 8]`
|
| 55 |
-
- Latent channels: 16
|
| 56 |
-
- DiT config: dim 1536, 30 layers, 12 heads, FFN dim 8960, text length 512
|
| 57 |
|
| 58 |
## Usage
|
| 59 |
|
| 60 |
-
|
| 61 |
|
| 62 |
-
```
|
| 63 |
-
git clone https://github.com/
|
| 64 |
cd RAVEN
|
| 65 |
-
```
|
| 66 |
-
|
| 67 |
-
Set up the environment:
|
| 68 |
-
|
| 69 |
-
```bash
|
| 70 |
conda env create -f tools/environment.yaml
|
| 71 |
-
conda activate raven
|
| 72 |
bash tools/prepare_venv.sh
|
| 73 |
source venv/bin/activate
|
| 74 |
```
|
| 75 |
|
| 76 |
-
|
| 77 |
|
| 78 |
-
```
|
| 79 |
hf download mvp-lab/RAVEN --local-dir /path/to/RAVEN-weights
|
| 80 |
```
|
| 81 |
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
```jsonc
|
| 85 |
-
"backbone": {
|
| 86 |
-
"weight": "/path/to/RAVEN-weights/raven_model.pt"
|
| 87 |
-
}
|
| 88 |
-
```
|
| 89 |
-
|
| 90 |
-
CM-GRPO can be loaded in any of three equivalent forms:
|
| 91 |
-
|
| 92 |
-
Adapter only (`cmgrpo_raven_lora.safetensors`):
|
| 93 |
-
|
| 94 |
-
```jsonc
|
| 95 |
-
"backbone": {
|
| 96 |
-
"weight": "/path/to/RAVEN-weights/raven_model.pt",
|
| 97 |
-
"lora": {
|
| 98 |
-
"enabled": true,
|
| 99 |
-
"weight": "/path/to/RAVEN-weights/cmgrpo_raven_lora.safetensors"
|
| 100 |
-
}
|
| 101 |
-
}
|
| 102 |
-
```
|
| 103 |
-
|
| 104 |
-
Base + LoRA bundle (`cmgrpo_raven_full.pt`):
|
| 105 |
-
|
| 106 |
-
```jsonc
|
| 107 |
-
"backbone": {
|
| 108 |
-
"lora": {
|
| 109 |
-
"enabled": true,
|
| 110 |
-
"weight": "/path/to/RAVEN-weights/cmgrpo_raven_full.pt"
|
| 111 |
-
}
|
| 112 |
-
}
|
| 113 |
-
```
|
| 114 |
-
|
| 115 |
-
Merged backbone (`cmgrpo_raven_merge.pt`):
|
| 116 |
-
|
| 117 |
-
```jsonc
|
| 118 |
-
"backbone": {
|
| 119 |
-
"weight": "/path/to/RAVEN-weights/cmgrpo_raven_merge.pt"
|
| 120 |
-
}
|
| 121 |
-
```
|
| 122 |
-
|
| 123 |
-
The released CM-GRPO configs use the base + LoRA bundle form by default.
|
| 124 |
-
|
| 125 |
-
Reference configs:
|
| 126 |
-
|
| 127 |
-
```bash
|
| 128 |
-
configs/trials/generate_t2v/causal_wan2.1_1.3B_t2v/raven_baseline_prompts.jsonc
|
| 129 |
-
configs/trials/generate_t2v/causal_wan2.1_1.3B_t2v/cmgrpo_baseline_prompts.jsonc
|
| 130 |
-
configs/trials/vbench_t2v/causal_wan2.1_1.3B_t2v/raven.jsonc
|
| 131 |
-
configs/trials/vbench_t2v/causal_wan2.1_1.3B_t2v/cmgrpo.jsonc
|
| 132 |
-
```
|
| 133 |
|
| 134 |
-
|
| 135 |
|
| 136 |
-
``
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
```
|
| 140 |
|
| 141 |
-
|
|
|
|
|
|
|
| 142 |
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
bash tools/multi_run.sh configs/trials/vbench_t2v/causal_wan2.1_1.3B_t2v/cmgrpo.jsonc
|
| 146 |
```
|
| 147 |
|
| 148 |
-
## Requirements
|
| 149 |
-
|
| 150 |
-
The released configs depend on the RAVEN codebase and the upstream Wan2.1-T2V-1.3B components, including:
|
| 151 |
-
|
| 152 |
-
- Wan2.1-T2V-1.3B diffusion backbone / DiT config
|
| 153 |
-
- Wan2.1 VAE
|
| 154 |
-
- UMT5-XXL tokenizer and text encoder
|
| 155 |
-
- Python 3.10
|
| 156 |
-
- CUDA 12.8
|
| 157 |
-
- PyTorch 2.11 + cu128
|
| 158 |
-
- flash-attention 2/3 and magi-attention as built by `tools/prepare_venv.sh`
|
| 159 |
-
|
| 160 |
-
See the code repository README for full setup and evaluation instructions.
|
| 161 |
-
|
| 162 |
## License
|
| 163 |
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
The upstream Wan2.1 components are subject to their own licenses and terms. Users are responsible for complying with all applicable licenses for the base model, code, data, and dependencies.
|
| 167 |
|
| 168 |
## Citation
|
| 169 |
|
| 170 |
-
If you find this work useful, please cite RAVEN. A BibTeX entry will be added when available.
|
| 171 |
-
|
| 172 |
```bibtex
|
| 173 |
@article{lu2026raven,
|
| 174 |
title = {RAVEN: Real-time Autoregressive Video Extrapolation with Consistency-model GRPO},
|
|
|
|
| 1 |
---
|
| 2 |
license: cc-by-nc-4.0
|
| 3 |
+
pipeline_tag: text-to-video
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
base_model:
|
| 5 |
- Wan-AI/Wan2.1-T2V-1.3B
|
| 6 |
+
tags:
|
| 7 |
+
- autoregressive
|
| 8 |
+
- acceleration
|
| 9 |
+
- streaming
|
| 10 |
+
- realtime
|
| 11 |
+
- diffusion
|
| 12 |
---
|
| 13 |
|
| 14 |
# RAVEN: Real-time Autoregressive Video Extrapolation with Consistency-model GRPO
|
| 15 |
|
| 16 |
[Yanzuo Lu](https://yanzuo.lu/) · [Ronglai Zuo](https://2000zrl.github.io/) · [Jiankang Deng](https://jiankangdeng.github.io/) — Imperial College London
|
| 17 |
|
| 18 |
+
Project page: <https://yanzuo.lu/raven>
|
| 19 |
+
|
| 20 |
+
[](https://arxiv.org/abs/2605.15190) [](https://github.com/mvp-ai-lab/RAVEN)
|
| 21 |
|
| 22 |
## Overview
|
| 23 |
|
| 24 |
+
**Wan2.1-T2V-1.3B release.** RAVEN is a causal autoregressive text-to-video model for real-time streaming generation. It extrapolates future chunks from already-generated content, and it is trained with a training-time test framework that aligns training attention with inference-time extrapolation.
|
| 25 |
|
| 26 |
+
CM-GRPO is the reinforcement-learning stage on top of RAVEN. It treats a consistency-model sampling step as a conditional Gaussian transition and applies online Group Relative Policy Optimization directly to that kernel.
|
| 27 |
|
| 28 |
+
This repository hosts weights only. Training, inference, and evaluation code live in the [code repository](https://github.com/mvp-ai-lab/RAVEN). Other artifacts are listed in the [RAVEN collection](https://huggingface.co/collections/mvp-lab/raven).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
|
| 30 |
+
## Files
|
| 31 |
|
| 32 |
+
| File | Description |
|
| 33 |
+
| --- | --- |
|
| 34 |
+
| `raven_model.pt` | RAVEN backbone (post-distillation, pre-RL). Full `CausalWanModel` state dict. |
|
| 35 |
+
| `cmgrpo_raven_merge.pt` | CM-GRPO backbone with the LoRA already folded into RAVEN. Same key set as `raven_model.pt`. |
|
| 36 |
+
| `cmgrpo_raven_lora.safetensors` | CM-GRPO adapter only. Use together with `raven_model.pt` as the base. |
|
| 37 |
+
| `cmgrpo_raven_full.pt` | PEFT-wrapped bundle of base + adapter, kept as an archival interchange format. The current code cannot load it directly. Convert or merge it offline first. |
|
| 38 |
|
| 39 |
## Model details
|
| 40 |
|
| 41 |
+
| Item | Value |
|
| 42 |
+
| --- | --- |
|
| 43 |
+
| Base model | `Wan-AI/Wan2.1-T2V-1.3B` DiT, causal autoregressive variant |
|
| 44 |
+
| Task / mode | Text-to-video, causal streaming extrapolation |
|
| 45 |
+
| Resolution | 480 x 832 |
|
| 46 |
+
| Frames | 81 |
|
| 47 |
+
| Frame rate | 16 fps |
|
| 48 |
+
| Sampling | 4 NFE with a consistency sampler |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
|
| 50 |
## Usage
|
| 51 |
|
| 52 |
+
### Setup
|
| 53 |
|
| 54 |
+
```sh
|
| 55 |
+
git clone https://github.com/mvp-ai-lab/RAVEN.git
|
| 56 |
cd RAVEN
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 57 |
conda env create -f tools/environment.yaml
|
|
|
|
| 58 |
bash tools/prepare_venv.sh
|
| 59 |
source venv/bin/activate
|
| 60 |
```
|
| 61 |
|
| 62 |
+
### Download
|
| 63 |
|
| 64 |
+
```sh
|
| 65 |
hf download mvp-lab/RAVEN --local-dir /path/to/RAVEN-weights
|
| 66 |
```
|
| 67 |
|
| 68 |
+
### Configure and run
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 69 |
|
| 70 |
+
Trial YAML files keep site-specific absolute paths (backbone, VAE, text encoder, tokenizer, prompt lists), so edit them or override the keys on the command line before running. The loading schema depends on which checkpoint you use.
|
| 71 |
|
| 72 |
+
- Base or merged checkpoint → `models.backbone.weight.path`.
|
| 73 |
+
- Adapter-only → `raven_model.pt` as the base plus `models.backbone.adapter.weight`, with `r`, `lora_alpha`, and `target_modules` matching the CM-GRPO training trial (`r = lora_alpha = 256`).
|
| 74 |
+
- Legacy `lora: {enabled, weight}` blocks are not part of the current schema and are ignored.
|
|
|
|
| 75 |
|
| 76 |
+
```sh
|
| 77 |
+
bash tools/multi_run.sh \
|
| 78 |
+
projects/wan_t2v/trials/dmd/wan2_1_1_3B/causal_wan_t2v_dmd/val_only/raven_sample100.yaml
|
| 79 |
|
| 80 |
+
bash tools/multi_run.sh \
|
| 81 |
+
projects/wan_t2v/trials/dmd/wan2_1_1_3B/causal_wan_t2v_dmd/val_only/cmgrpo_raven_sample100.yaml
|
|
|
|
| 82 |
```
|
| 83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
## License
|
| 85 |
|
| 86 |
+
These weights are released under [CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/). The upstream Wan2.1 components (DiT initialization, VAE, UMT5-XXL text encoder) remain subject to their own licenses and terms. You are responsible for complying with all applicable licenses for the base model, code, data, and dependencies.
|
|
|
|
|
|
|
| 87 |
|
| 88 |
## Citation
|
| 89 |
|
|
|
|
|
|
|
| 90 |
```bibtex
|
| 91 |
@article{lu2026raven,
|
| 92 |
title = {RAVEN: Real-time Autoregressive Video Extrapolation with Consistency-model GRPO},
|