File size: 31,430 Bytes
aacc7ab
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
---
license: apache-2.0
language:
- en
base_model:
- Wan-AI/Wan2.1-T2V-14B-Diffusers
pipeline_tag: text-to-video
base_model_relation: finetune
library_name: diffusers
---

<div align=center>
<img src="https://raw.githubusercontent.com/SHYuanBest/shyuanbest_media/main/Helios/logo_white.png" width="300px">
</div>

<h1 align="center">Helios: Real Real-Time Long Video Generation Model</h1>

<h5 align="center">⭐ 14B Real-Time Long Video Generation Model can be Cheaper, Faster but Keep Stronger than 1.3B ones ⭐</h5>

<h5 align="center">

[![arXiv](https://img.shields.io/badge/arXiv-2603.04379-b31b1b.svg?logo=arxiv)](https://arxiv.org/abs/2603.04379)
[![hf_paper](https://img.shields.io/badge/🤗-Paper%20In%20HF-red.svg)](https://huggingface.co/papers/2603.04379)
[![Project Page](https://img.shields.io/badge/Project-Website-2ea44f)](https://pku-yuangroup.github.io/Helios-Page)
[![hf_space](https://img.shields.io/badge/🤗-Gradio-00b4d8.svg)](https://huggingface.co/spaces/multimodalart/Helios-Distilled/)
[![HuggingFace](https://img.shields.io/badge/🤗-HuggingFace-blue)](https://huggingface.co/collections/BestWishYsh/helios)
[![ModelScope](https://img.shields.io/badge/🤖-ModelScope-purple)](https://modelscope.cn/collections/BestWishYSH/Helios)
[![GitHub](https://img.shields.io/badge/GitHub-black?logo=github)](https://github.com/PKU-YuanGroup/Helios)
[![GitCode](https://img.shields.io/badge/GitCodes-blue?logo=gitcode)](https://gitcode.com/weixin_47617277/Helios)

[![Ascend](https://img.shields.io/badge/Inference-Ascend--NPU-red)](https://www.hiascend.com/)
[![Diffusers](https://img.shields.io/badge/Inference-Diffusers-blueviolet)](https://github.com/huggingface/diffusers/pull/13208)
[![SGLang Diffusion](https://img.shields.io/badge/Backend-SGLang--Diffusion-yellow)](https://github.com/sgl-project/sglang/pull/19782)
[![vLLM-Omni](https://img.shields.io/badge/Backend-vLLM--Omni-orange)](https://github.com/vllm-project/vllm-omni/pull/1604)



</h5>

<div align="center">
This repository is the official implementation of Helios, which is a breakthrough video generation model that achieves minute-scale, high-quality video synthesis at <strong>19.5 FPS on a single H100 GPU</strong> (about 10 FPS on a single Ascend NPU) —without relying on conventional long video anti-drifting strategies or standard video acceleration techniques.
</div>

<br>

## ✨ Highlights


1. **Without commonly used anti-drifting strategies** (e.g., self-forcing, error-banks, keyframe sampling, or inverted sampling), Helios generates minute-scale videos with high quality and strong coherence.

2. **Without standard acceleration techniques** (e.g., KV-cache, causal masking, sparse/linear attention, TinyVAE, progressive noise schedules, hidden-state caching, or quantization), Helios achieves 19.5 FPS in end-to-end inference on a single H100 GPU.

3. **We introduce optimizations that improve both training and inference throughput while reducing memory consumption,** enabling image-diffusion-scale batch sizes during training while fitting up to four 14B models within 80 GB of GPU memory.



## 🎬 Video Demos

<!-- <div align="center">
  <video src="https://github.com/PKU-YuanGroup/Helios-Page/blob/main/videos/helios_features.mp4?raw=true" width="70%" controls="controls" poster=""></video>
</div>

or you can click <a href="https://www.youtube.com/watch?v=vd_AgHtOUFQ">here</a> to get the video. Some best prompts are [here](./example/prompt.txt). -->

[![Demo Video of Helios](https://github.com/user-attachments/assets/1d10da4a-aba9-4ac1-ab02-cd0dfce8d35b)](https://www.youtube.com/watch?v=vd_AgHtOUFQ)
or you can click <a href="https://github.com/PKU-YuanGroup/Helios-Page/blob/main/videos/helios_features.mp4">here</a> to get the video. Some best prompts are [here](./example/prompt.txt).


## 📣 Latest News!!

* `[2026.03.08]` 👋 Helios now fully supports [Group Offloading](#-group-offloading-to-save-vram) and [Context Parallelism](#-context-parallelism-on-multiple-gpus)! These features significantly optimize VRAM (**only ~6GB**) usage and enable inference across multiple GPUs with *Ulysses Attention*, *Ring Attention*, *Unified Attention*, and *Ulysses Anything Attention*.
* `[2026.03.06]` 🚀 [Cache-DiT](https://github.com/vipshop/cache-dit/pull/834) now supports Helios, it offers Fully Cache Acceleration and Parallelism support for Helios! Special thanks to the Cache-DiT Team for their amazing work.
* `[2026.03.06]` 🚀 We fix the Parallel Inference logits for Helios, and provide an example [here](#-parallel-inference-on-multiple-gpus). Thanks [Cache-DiT Team](https://github.com/vipshop/cache-dit/pull/836). 
* `[2026.03.06]` 👋 We official release the [Gradio Demo](https://huggingface.co/spaces/BestWishYsh/Helios-14B-RealTime), welcome to try it.
* `[2026.03.05]` 👋 We are excited to announce the release of the Helios [technical report](https://arxiv.org/abs/2603.04379) on arXiv. We welcome discussions and feedback!
* `[2026.03.04]` 🚀 Day-0 support for [Ascend-NPU](https://www.hiascend.com),with sincere gratitude to the Ascend Team for their support.
* `[2026.03.04]` 🚀 Day-0 support for [Diffusers](https://github.com/huggingface/diffusers/pull/13208),with special thanks to the HuggingFace Team for their support.
* `[2026.03.04]` 🚀 Day-0 support for [SGLang-Diffusion](https://github.com/sgl-project/sglang/pull/19782),with huge thanks to the SGLang Team for their support.
* `[2026.03.04]` 🚀 Day-0 support for [vLLM-Omni](https://github.com/vllm-project/vllm-omni/pull/1604),with heartfelt gratitude to the vLLM Team for their support.
* `[2026.03.04]` 🔥 We've released the training/inference code and weights of **Helios-Base**, **Helios-Mid** and **Helios-Distilled**.


## 🔥 Friendly Links

If your work has improved **Helios** and you would like more people to see it, please inform us.

* [Ascend-NPU](https://www.hiascend.com/): Developed by Huawei, this hardware is designed for efficient AI model training and inference, boosting performance in tasks like computer vision, natural language processing, and autonomous driving.
* [Diffusers](https://github.com/huggingface/diffusers/pull/13208): A popular library designed for working with diffusion models and other generative models in deep learning. It supports easy integration and manipulation of a wide range of generative models.
* [SGLang-Diffusion](https://github.com/sgl-project/sglang/pull/19782): An inference framework for accelerated image and video generation using diffusion models. It provides an end-to-end unified pipeline with optimized kernels and an efficient scheduler loop.
* [vLLM-Omni](https://github.com/vllm-project/vllm-omni/pull/1604): A fully disaggregated serving system for any-to-any models. vLLM-Omni breaks complex architectures into a stage-based graph, using a decoupled backend to maximize resource efficiency and throughput.
* [Cache-DiT](https://github.com/vipshop/cache-dit/pull/834): A PyTorch-native and Flexible Inference Engine with Hybrid Cache Acceleration and Parallelism for DiTs. It built on top of the Diffusers library and now supports nearly ALL DiTs from Diffusers.



### Model Download

| Models           | Download Link                                                                                                                                            | Supports                                      | Notes                                                                                       |
|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------|---------------------------------------------------------------------------------------------|
| Helios-Base      | 🤗 [Huggingface](https://huggingface.co/BestWishYsh/Helios-Base) 🤖 [ModelScope](https://modelscope.cn/models/BestWishYSH/Helios-Base)                | T2V ✅ I2V ✅ V2V ✅ Interactive ✅           | Best Quality, with v-prediction, standard CFG and custom HeliosScheduler.                   |
| Helios-Mid       | 🤗 [Huggingface](https://huggingface.co/BestWishYsh/Helios-Mid) 🤖 [ModelScope](https://modelscope.cn/models/BestWishYSH/Helios-Mid)                  | T2V ✅ I2V ✅ V2V ✅ Interactive ✅           | Intermediate Ckpt, with v-prediction, CFG-Zero* and custom HeliosScheduler.                 |
| Helios-Distilled | 🤗 [Huggingface](https://huggingface.co/BestWishYsh/Helios-Distilled) 🤖 [ModelScope](https://modelscope.cn/models/BestWishYSH/Helios-Distilled)      | T2V ✅ I2V ✅ V2V ✅ Interactive ✅           | Best Efficiency, with x0-prediction and custom HeliosDMDScheduler.                          |



> 💡Note: 
> * All three models share the same architecture, but Helios-Mid and Helios-Distilled use a more aggressive multi-scale sampling pipeline to achieve better efficiency.
> * Helios-Mid is an intermediate checkpoint generated in the process of distilling Helios-Base into Helios-Distilled, and may not meet expected quality.
> * For Image-to-Video or Video-to-Video, since training is based on Text-to-Video, these two functions may be slightly inferior to Text-to-Video. You may enable `is_skip_first_chunk` if you find the first few chunks are static or imporve the value of `image_noise_sigma_min`, `image_noise_sigma_max`, `video_noise_sigma_min`, and `video_noise_sigma_max`.


Download models using huggingface-cli:
``` sh
pip install "huggingface_hub[cli]"
huggingface-cli download BestWishYSH/Helios-Base --local-dir BestWishYSH/Helios-Base
huggingface-cli download BestWishYSH/Helios-Mid --local-dir BestWishYSH/Helios-Mid
huggingface-cli download BestWishYSH/Helios-Distilled --local-dir BestWishYSH/HeliosDistillede
```

Download models using modelscope-cli:
``` sh
pip install modelscope
modelscope download BestWishYSH/Helios-Base --local_dir BestWishYSH/Helios-Base
modelscope download BestWishYSH/Helios-Mid --local-dir BestWishYSH/Helios-Mid
modelscope download BestWishYSH/Helios-Distilled --local-dir BestWishYSH/HeliosDistillede
```


## 🚀 Inference


Helios uses an autoregressive approach that generates **33 frames per chunk**. For optimal performance, `num_frames` should be set to a multiple of `33`. If a non-multiple value is provided, it will be automatically rounded up to the nearest multiple of 33.

**Example frame counts for different video lengths:**

| num_frames | Adjusted Frames | 24 FPS | 16 FPS |
|------------|-----------------|--------|--------|
| 1449       | 1452 (33×44)    | ~60s (1min) | ~90s (1min 30s) |
| 720        | 726 (33×22)     | ~30s | ~45s |
| 240        | 264 (33×8)      | ~11s | ~16s |
| 129        | 132 (33×4)      | ~5.5s | ~8s |

### Sanity Check

Before trying your own inputs, we highly recommend going through the sanity check to find out if any hardware or software went wrong.

| Task    | **Helios-Base**                                                                                                            | **Helios-Mid**                                                                                                             | **Helios-Distilled**                                                                                                       |
| ------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| **T2V** | <video src="https://github.com/user-attachments/assets/14e10753-0366-4790-ad8f-7b66d821ed11" controls width="240"></video> | <video src="https://github.com/user-attachments/assets/c1778691-a80b-428c-8094-88bb1dd1d52b" controls width="240"></video> | <video src="https://github.com/user-attachments/assets/4ca28c79-9dfa-49de-9c3a-f4c7b6c766cd" controls width="240"></video> |
| **V2V** | <video src="https://github.com/user-attachments/assets/420cb572-85c2-42d8-98d7-37b0bc24c844" controls width="240"></video> | <video src="https://github.com/user-attachments/assets/7d703fa6-dc1a-4138-a897-e58cfd9236d6" controls width="240"></video> | <video src="https://github.com/user-attachments/assets/45329c55-1a25-459c-bbf0-4e584ec5b23d" controls width="240"></video> |


### ✨ Group Offloading to Save VRAM

Helios supports group offloading to significantly reduce VRAM consumption, allowing you to run on GPU with limited memory footprint. For more details on the underlying mechanics, please refer to the [documentation](https://huggingface.co/docs/diffusers/main/en/optimization/memory#group-offloading).

The Helios model below requires `~6GB of VRAM`.

<details>
  <summary>Click to expand the code</summary>

  ```bash
  CUDA_VISIBLE_DEVICES=0 python infer_helios.py \
      --base_model_path "BestWishYsh/Helios-Distilled" \
      --transformer_path "BestWishYsh/Helios-Distilled" \
      --sample_type "t2v" \
      --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
      --num_frames 240 \
      --guidance_scale 1.0 \
      --is_enable_stage2 \
      --pyramid_num_inference_steps_list 2 2 2 \
      --is_amplify_first_chunk \
      --output_folder "./output_helios/helios-distilled" \
      --enable_low_vram_mode \
      --group_offloading_type "leaf_level"
  ```
  
</details>

### ✨ Context Parallelism on Multiple GPUs
Helios supports various Context Parallelism mechanisms, including `Ulysses Attention`, `Ring Attention`, `Unified Attention`, and `Ulysses Anything Attention`. For more details, please refer to the [documentation](https://huggingface.co/docs/diffusers/main/en/training/distributed_inference#context-parallelism).

For example, let's take Helios-Base with 4 GPUs.

<details>
  <summary>Click to expand the code</summary>

  ```bash
  CUDA_VISIBLE_DEVICES=0,1,2,3 torchrun --nproc_per_node 4 infer_helios.py \
      --enable_parallelism \     #  remember to enable this config
      --cp_backend "ulysses" \   #  ["ring", "ulysses", "unified", "ulysses_anything"]
      --base_model_path "BestWishYsh/Helios-Base" \
      --transformer_path "BestWishYsh/Helios-Base" \
      --sample_type "t2v" \
      --num_frames 99 \
      --fps 24 \
      --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
      --guidance_scale 5.0 \
      --output_folder "./output_helios/helios-base"
  ```
  
</details>


### ✨ Diffusers Pipeline

Install diffusers from source:
```bash
pip install git+https://github.com/huggingface/diffusers.git
```

For example, let's take Helios-Distilled (**Standard Pipeline**).

<details>
  <summary>Click to expand the code</summary>

  ```bash
  import torch
  from diffusers import AutoModel, HeliosPyramidPipeline
  from diffusers.utils import export_to_video, load_video, load_image

  vae = AutoModel.from_pretrained("BestWishYsh/Helios-Distilled", subfolder="vae", torch_dtype=torch.float32)

  pipeline = HeliosPyramidPipeline.from_pretrained(
      "BestWishYsh/Helios-Distilled",
      vae=vae,
      torch_dtype=torch.bfloat16
  )
  pipeline.to("cuda")

  negative_prompt = """
  Bright tones, overexposed, static, blurred details, subtitles, style, works, paintings, images, static, overall gray, worst quality,
  low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured,
  misshapen limbs, fused fingers, still picture, messy background, three legs, many people in the background, walking backwards
  """

  # --- T2V ---
  prompt = """
  A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue 
  and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with 
  a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, 
  allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades 
  of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and 
  the vivid colors of its surroundings. A close-up shot with dynamic movement.
  """

  output = pipeline(
      prompt=prompt,
      negative_prompt=negative_prompt,
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      guidance_scale=1.0,
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
  ).frames[0]
  export_to_video(output, "helios_distilled_t2v_output.mp4", fps=24)

  # --- I2V ---
  i2v_prompt = """
  A towering emerald wave surges forward, its crest curling with raw power and energy. Sunlight glints off the translucent water, 
  illuminating the intricate textures and deep green hues within the wave’s body. A thick spray erupts from the breaking crest, 
  casting a misty veil that dances above the churning surface. As the perspective widens, the immense scale of the wave becomes 
  apparent, revealing the restless expanse of the ocean stretching beyond. The scene captures the ocean’s untamed beauty and 
  relentless force, with every droplet and ripple shimmering in the light. The dynamic motion and vivid colors evoke both awe and 
  respect for nature’s might.
  """
  image_path = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/helios/wave.jpg"

  output = pipeline(
      prompt=i2v_prompt,
      negative_prompt=negative_prompt,
      image=load_image(image_path).resize((640, 384)),
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      guidance_scale=1.0,
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
  ).frames[0]
  export_to_video(output, "helios_distilled_i2v_output.mp4", fps=24)

  # --- V2V ---
  v2v_prompt = """
  A bright yellow Lamborghini Huracn Tecnica speeds along a curving mountain road, surrounded by lush green trees 
  under a partly cloudy sky. The car's sleek design and vibrant color stand out against the natural backdrop, 
  emphasizing its dynamic movement. The road curves gently, with a guardrail visible on one side, adding depth to 
  the scene. The motion blur captures the sense of speed and energy, creating a thrilling and exhilarating atmosphere. 
  A front-facing shot from a slightly elevated angle, highlighting the car's aggressive stance and the surrounding greenery.
  """
  video_path = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/helios/car.mp4"

  output = pipeline(
      prompt=v2v_prompt,
      negative_prompt=negative_prompt,
      video=load_video(video_path),
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      guidance_scale=1.0,
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
  ).frames[0]
  export_to_video(output, "helios_distilled_v2v_output.mp4", fps=24)
  ```

</details>

For example, let's take Helios-Distilled (**Modular Pipeline**).

<details>
  <summary>Click to expand the code</summary>

  ```bash
  import torch
  from diffusers import ModularPipeline, ClassifierFreeGuidance
  from diffusers.utils import export_to_video, load_image, load_video

  mod_pipe = ModularPipeline.from_pretrained("BestWishYsh/Helios-Distilled")
  mod_pipe.load_components(torch_dtype=torch.bfloat16)
  mod_pipe.to("cuda")

  # we need to upload guider to the model repo, so each checkpoint will be able to config their guidance differently
  guider = ClassifierFreeGuidance(guidance_scale=1.0)
  mod_pipe.update_components(guider=guider)

  # --- T2V ---
  print("=== T2V ===")
  prompt = (
      "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. "
      "The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving "
      "fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and "
      "sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef "
      "itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures "
      "the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. "
      "A close-up shot with dynamic movement."
  )

  output = mod_pipe(
      prompt=prompt,
      height=384,
      width=640,
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
      output="videos",
  )

  export_to_video(output[0], "helios_distilled_modular_t2v_output.mp4", fps=24)
  print(f"T2V max memory: {torch.cuda.max_memory_allocated() / 1024**3:.3f} GB")
  torch.cuda.empty_cache()
  torch.cuda.reset_peak_memory_stats()

  # --- I2V ---
  print("=== I2V ===")
  image = load_image(
      "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/helios/wave.jpg"
  )
  i2v_prompt = (
      "A towering emerald wave surges forward, its crest curling with raw power and energy. "
      "Sunlight glints off the translucent water, illuminating the intricate textures and deep green hues within the wave's body."
  )

  output = mod_pipe(
      prompt=i2v_prompt,
      image=image,
      height=384,
      width=640,
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
      output="videos",
  )

  export_to_video(output[0], "helios_distilled_modular_i2v_output.mp4", fps=24)
  print(f"I2V max memory: {torch.cuda.max_memory_allocated() / 1024**3:.3f} GB")
  torch.cuda.empty_cache()
  torch.cuda.reset_peak_memory_stats()

  # --- V2V ---
  print("=== V2V ===")
  video = load_video(
      "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/helios/car.mp4"
  )
  v2v_prompt = (
      "A dynamic time-lapse video showing the rapidly moving scenery from the window of a speeding train. "
      "The camera captures various elements such as lush green fields, towering trees, quaint countryside houses, "
      "and distant mountain ranges passing by quickly."
  )

  output = mod_pipe(
      prompt=v2v_prompt,
      video=video,
      height=384,
      width=640,
      num_frames=240,
      pyramid_num_inference_steps_list=[2, 2, 2],
      is_amplify_first_chunk=True,
      generator=torch.Generator("cuda").manual_seed(42),
      output="videos",
  )

  export_to_video(output[0], "helios_distilled_modular_v2v_output.mp4", fps=24)
  print(f"V2V max memory: {torch.cuda.max_memory_allocated() / 1024**3:.3f} GB")
  ```

</details>

### ✨ vLLM-Omni Pipeline

Install vllm-omni from source:
```bash
pip install git+https://github.com/vllm-project/vllm-omni.git
```

For example, let's take Text-to-Video.

<details>
  <summary>Click to expand the code</summary>

  ```bash
  cd vllm-omni

  # Helios-Base
  python3 examples/offline_inference/helios/end2end.py \
    --sample-type t2v \
    --model ./Helios-Base \
    --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
    --num-frames 99 \
    --seed 42 \
    --output helios_t2v_base.mp4

  # Helios-Mid
  python examples/offline_inference/helios/end2end.py \
    --model ./Helios-Mid --sample-type t2v \
    --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
    --guidance-scale 5.0 --is-enable-stage2 \
    --pyramid-num-inference-steps-list 20 20 20 \
    --num-frames 99 \
    --use-cfg-zero-star --use-zero-init --zero-steps 1 \
    --output helios_t2v_mid.mp4

  # Helios-Distilled
  python examples/offline_inference/helios/end2end.py \
    --model ./Helios-Distilled --sample-type t2v \
    --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
    --num-frames 240 --guidance-scale 1.0 --is-enable-stage2 \
    --pyramid-num-inference-steps-list 2 2 2 \
    --is-amplify-first-chunk --output helios_t2v_distilled.mp4
  ```
</details>

### ✨ SGLang-Diffusion Pipeline

Install sglang-diffusion from source:
```bash
pip install git+https://github.com/sgl-project/sglang.git
```

For example, let's take Helios-Base. **(Native Support)**

<details>
  <summary>Click to expand the code</summary>

  ```bash
  sglang generate \
    --model-path BestWishYsh/Helios-Base \
    --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
    --negative-prompt "Bright tones, overexposed, static, blurred details, subtitles, style, works, paintings, images, static, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, misshapen limbs, fused fingers, still picture, messy background, three legs, many people in the background, walking backwards" \
    --height 384 \
    --width 640 \
    --num-frames 99 \
    --num-inference-steps 50 \
    --guidance-scale 5.0
  ```
</details>

For example, let's take Helios-Base. **(Diffusers Backend)**

<details>
  <summary>Click to expand the code</summary>

  ```bash
  sglang generate \
    --model-path BestWishYsh/Helios-Base \
    --prompt "A vibrant tropical fish swimming gracefully among colorful coral reefs in a clear, turquoise ocean. The fish has bright blue and yellow scales with a small, distinctive orange spot on its side, its fins moving fluidly. The coral reefs are alive with a variety of marine life, including small schools of colorful fish and sea turtles gliding by. The water is crystal clear, allowing for a view of the sandy ocean floor below. The reef itself is adorned with a mix of hard and soft corals in shades of red, orange, and green. The photo captures the fish from a slightly elevated angle, emphasizing its lively movements and the vivid colors of its surroundings. A close-up shot with dynamic movement." \
    --negative-prompt "Bright tones, overexposed, static, blurred details, subtitles, style, works, paintings, images, static, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, misshapen limbs, fused fingers, still picture, messy background, three legs, many people in the background, walking backwards" \
    --height 384 \
    --width 640 \
    --num-frames 99 \
    --num-inference-steps 50 \
    --guidance-scale 5.0 \
    --backend diffusers
  ```
</details>

## 🙌 Description

- **Repository:** [Code](https://github.com/PKU-YuanGroup/Helios), [Page](https://pku-yuangroup.github.io/Helios-Page/)
- **Paper:** [https://huggingface.co/papers/2603.04379](https://huggingface.co/papers/2603.04379)
- **Point of Contact:** [Shenghai Yuan](shyuan-cs@hotmail.com)

## ✏️ Citation

If you find our paper and code useful in your research, please consider giving a star ⭐ and citation 📝:

```BibTeX
@article{helios,
  title={Helios: Real Real-Time Long Video Generation Model},
  author={Yuan, Shenghai and Yin, Yuanyang and Li, Zongjian and Huang, Xinwei and Yang, Xiao and Yuan, Li},
  journal={arXiv preprint arXiv:2603.04379},
  year={2026}
}
```