SolarWM README

The project's README from github.com/Junchao-cs/SolarWM. As one markdown file: README.md.

SolarWM: Open Data and Scalable Training for Long-Horizon Video World Models

Junchao Huang1,2   Guian Fang3   Shengju Qian4   Xianghao Kong5   Zhuoran Zhao5,6
Wei Huang7   Yihua Du6   Zixin Zhang6   Justin Cui8   Yuchao Gu7   Yukang Chen7   Xinting Hu
Tianyu He9   Shaoshuai Shi   Zhuotao Tian2   Xin Wang   Mike Zheng Shou3   Li Jiang1,2
1CUHK-SZ   2SLAI   3NUS   4CUHK   5HKUST   6HKUST-GZ   7NVIDIA   8UCLA   9MSRA

Project page Paper Hugging Face dataset ModelScope dataset Dataset Access Form Model weights Apache 2.0 license

SolarWM teaser: one framework for diverse interactive worlds

We present SolarWM, a fully open foundation for building interactive video world models from data preparation through scalable training and long-horizon inference.

News

Training progression

The staged workflow is Stage0.5 FM → Stage1 TF-AnyFlow → Stage2 DMD via SGF, turning a bidirectional video model into a camera-controlled few-step autoregressive model.

Backend Stage0.5 (Bid-Cam) Stage1 (TF-AnyFlow) Stage2 (SGF) Runtime interfaces
Wan2.2-5B ✓ ✓ ✓ train, infer, preencode
Wan2.2-14B ✓ Coming soon Coming soon train, infer, preencode
LTX-2.5 ✓ Coming soon Coming soon train, infer, preencode
MiniMax-H3 ✓ Coming soon Coming soon train, infer, preencode

Install

Wan, LTX, and MiniMax-H3 require separate runtime environments. Activate the environment for the selected backbone, then install the shared SolarWM source:

python -m pip install -e .
solarwm environment probe

Model weights are available from the SolarWM model collection. See the Wan2.2 TI2V-5B guide for Stage0.5, Stage1, and Stage2 commands. Data access options are described below.

Data

The public SolarWM-Data release contains release controls, licenses, recipe and test indexes, small format examples, and the SolarWM-Data-Annotation/ package. It does not include the full releases-v1/raw-wds/ or releases-v1/latent-wds/ payloads.

For a released recipe that uses preencoded data, download its matching latent generation. That is sufficient for training and does not require raw-WDS. Raw-WDS is needed only when you want the full processed video corpus, online encoding, your own latent generation, or another workflow whose index points to raw data.

  1. Use preencoded latents. Each latent generation is published in a separate repository. See the latent-WDS release list for available downloads and generations that are still being uploaded.
  2. Rebuild raw-WDS from annotations. SolarWM-Data-Annotation/ is an annotation-only release with no videos. It contains the released camera trajectories, captions, metadata, source identities, and reconstruction tools. Follow its README to download the original videos from their source publishers and process them into the expected raw-wds/ layout.
  3. Request prepared raw-WDS. Submit the Dataset Access Form. Approved applicants receive download instructions by email.

See the dataset access guide for download commands and the payload required by each training, validation, and inference example.

Unified commands

# Validate and render the exact resolved configuration.
solarwm config resolve \
  --config configs/examples/wan22_ti2v_5b/train_stage0p5_fm_153f.yaml \
  --set model.base_path=/path/to/SolarWM-models/SolarWM-5B-base \
  --set checkpoint.path=/path/to/SolarWM-models/SolarWM-5B-bid-stage0p5-81f/model.pt \
  --set data.index_root=/path/to/SolarWM-Data/releases-v1 \
  --set data.transport.root=/path/to/SolarWM-Data/releases-v1 \
  --set runtime.validate_every=0 \
  --set runtime.output_dir=/path/to/output

# Train the released preencoded recipe without raw-WDS.
torchrun --standalone --nproc-per-node=8 \
  -m solarwm train \
  --config configs/examples/wan22_ti2v_5b/train_stage0p5_fm_153f.yaml \
  --set distributed.world_size=8 \
  --set train.global_batch_size=8 \
  --set model.base_path=/path/to/SolarWM-models/SolarWM-5B-base \
  --set checkpoint.path=/path/to/SolarWM-models/SolarWM-5B-bid-stage0p5-81f/model.pt \
  --set data.index_root=/path/to/SolarWM-Data/releases-v1 \
  --set data.transport.root=/path/to/SolarWM-Data/releases-v1 \
  --set runtime.validate_every=0 \
  --set runtime.output_dir=/path/to/output

# Run Wan2.2-5B Stage2 inference for the longest camera-backed horizon.
torchrun --standalone --nproc-per-node=1 -m solarwm infer \
  --config configs/examples/wan22_ti2v_5b/infer_stage2_sgf_camera_length.yaml \
  --set model.base_path=/path/to/SolarWM-models/SolarWM-5B-base \
  --set checkpoint.path=/path/to/SolarWM-models/SolarWM-5B-sgf-stage2-81f \
  --set data.index_root=/path/to/SolarWM-Data/releases-v1 \
  --set data.transport.root=/path/to/SolarWM-Data/releases-v1 \
  --set inference.run_id=my-camera-run \
  --set runtime.output_dir=/path/to/output

# Preencode raw-WDS for the Wan2.2-5B 153f recipe.
torchrun --standalone --nproc-per-node=8 \
  -m solarwm preencode \
  --config configs/examples/wan22_ti2v_5b/preencode_153f.yaml \
  --set model.base_path=/path/to/SolarWM-models/SolarWM-5B-base \
  --set data.index_root=/path/to/wan153f-fixed-window-index \
  --set data.transport.root=/path/to/SolarWM-Data/releases-v1 \
  --set preencode.output_root=/path/to/latent-wds/wan22-ti2v5b-153f-480p-v1 \
  --set preencode.logical_output_root=/path/to/recipes/wan22-ti2v5b-153f-480p-v1 \
  --set runtime.output_dir=/path/to/output

The quickstart walks through a complete Wan2.2-5B setup. Copyable commands for every released route are in the backend guides.

Every launch writes resolved-config.json and launch-manifest.json before model allocation. Config overrides are explicit and included in the resolved configuration identity.

Local and bucket data

Index rows always contain POSIX shard keys relative to the release directory:

{"sample_id":"...","shard":"raw-wds/abot/shards/kept-high-000001.tar"}

Only the runtime root changes:

# Locally mounted storage
data:
  index_root: /path/to/SolarWM-Data/releases-v1
  transport:
    kind: local
    root: /path/to/SolarWM-Data/releases-v1

# Object-store streaming uses the same release-relative rows. Supply the
# release root from the distribution channel or deployment environment.
data:
  index_root: /path/to/SolarWM-Data/releases-v1
  transport:
    kind: gcs
    root: ${SOLAR_RELEASE_ROOT}
    cache_dir: /path/to/solar-cache
    cache_max_gib: 256

Documentation

Acknowledgements

We gratefully thank the teams behind Wan2.2, LTX-2.5, and MiniMax-H3 for releasing the code and pretrained models that make the SolarWM backbone family possible. We also thank the authors of all datasets and open-source projects listed in NOTICE.

Citation

If you use SolarWM-Data, the data engine, or the released models in your research, please cite our paper.

Paper: https://arxiv.org/abs/2609.02886

@misc{huang2026solarwmopendatascalable,
      title={SolarWM: Open Data and Scalable Training for Long-Horizon Video World Models}, 
      author={Junchao Huang and Guian Fang and Shengju Qian and Xianghao Kong and Zhuoran Zhao and Wei Huang and Yihua Du and Zixin Zhang and Justin Cui and Yuchao Gu and Yukang Chen and Xinting Hu and Tianyu He and Shaoshuai Shi and Zhuotao Tian and Xin Wang and Mike Zheng Shou and Li Jiang},
      year={2026},
      eprint={2609.02886},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2609.02886}, 
}

License and attribution

SolarWM is licensed under Apache-2.0. See LICENSE and NOTICE. Model weights and backbone packages may carry their own licenses; review the license and model card in the corresponding release package before use or redistribution. In particular, LTX-2.5 derivatives are subject to the LTX-2.x Community License, and the MiniMax H3 Community License contains territory restrictions. Those packages are not relicensed under the SolarWM code license.

SolarWM (Junchao-cs/SolarWM)

Searching Database…

What is this?SolarWM is a fully open foundation for building interactive video world models, covering data preparation, scalable multi-backbone training, and long-horizon inference.
Is this a single model or a full research pipeline?It is a full pipeline/framework: one training stack that wraps four different diffusion video backbones (Wan2.2, LTX-2.5, MiniMax-H3) and preserves each one's native representation and objective, plus a matching data engine.
How do I get a model training or running?Start with the Wan2.2-5B quickstart: activate the backbone's own runtime environment, install the shared SolarWM source on top of it, then follow the backend guide for Stage0.5/Stage1/Stage2 commands.
What do I need to install before using this?Wan2.2, LTX-2.5, and MiniMax-H3 each need their own separate runtime environment; you activate the environment for the backbone you chose, then install the shared SolarWM source package on top of it.
Can I just download the full dataset directly?No. The public release only ships metadata, indexes, and an annotation-only package; the full raw video shards and latent payloads are not included, so you either use preencoded latents, rebuild raw data from annotations yourself, or request a prepared raw-WDS copy via an access form.
Are the model weights covered by the same license as the code?The SolarWM code is Apache-2.0, but LTX-2.5 derivatives fall under the LTX-2.x Community License and MiniMax H3 weights carry the MiniMax H3 Community License, which includes territory restrictions and is not relicensed under the SolarWM code license.
Do I need serious GPU compute to train these models?The framework trains models from 5B up to 33B parameters through a multi-stage diffusion pipeline, which implies substantial multi-GPU compute, though the README doesn't give exact hardware specs.
What is the three-stage training recipe used by SolarWM?Stage0.5 trains full-clip bidirectional flow matching to build the base representation; Stage1 combines teacher forcing with an AnyFlow loss so the model learns denoising and finite-step flow maps together; Stage2 distills the causal student via self-gradient forcing (DMD/SGF) against a frozen teacher and trainable critic.
How does it get minutes-to-hours rollouts from only 5-second training clips?After training only on 5-second sequences, the resulting causal models support real-time interaction over rollouts spanning minutes to hours, without needing long-sequence fine-tuning or attention-sink tricks.
Which video backbones does SolarWM currently support?Four models ranging from 5B to 33B parameters, built on Wan2.2, LTX-2.5, and MiniMax-H3, each keeping its own native representation and training objective inside a shared framework.
How big and how is the released dataset structured?SolarWM-Data unifies 1.43 million canonical clips from 14 source datasets into one frame-aligned contract covering observations, metric camera geometry, captions, quality metadata, selection, and provenance.
Creator
Junchao-cs
Size
12.5 MB
Stars
777
Updated
CommitOct 16
Age
1mo
Commits · 90 Days