Quickstart

September 13, 2026 ยท View on GitHub

This guide runs MiniMax-H3 Stage0.5 training and Stage2 inference with released 158-frame preencoded latents. Neither requires raw-WDS. For inference only, complete setup and downloads, then skip to Stage2 inference.

1. Set up the H3 environment

Wan, LTX, and MiniMax-H3 use separate environments. Follow the H3 setup in Runtime environments, activate it, and install SolarWM:

export SOLAR_REPO=/path/to/SolarWM
cd "$SOLAR_REPO"
python -m pip install -e .
solarwm environment probe

2. Download weights and data

Choose local directories for the model, data, and outputs:

export SOLAR_MODEL_ROOT=/path/to/SolarWM-models
export SOLAR_DATA_HOME=/path/to/SolarWM-Data
export SOLAR_DATA_ROOT="$SOLAR_DATA_HOME/releases-v1"
export SOLAR_OUTPUT_ROOT=/path/to/outputs
mkdir -p "$SOLAR_MODEL_ROOT" "$SOLAR_DATA_HOME" "$SOLAR_OUTPUT_ROOT"

Accept the H3 model repository's access terms, then download the base model, the Stage2 EMA checkpoint, and the data indexes. The Stage2 checkpoint is only needed for inference.

python -m pip install --upgrade huggingface_hub
hf auth login

hf download junchaoh-cs/SolarWM-H3-33B \
  --include "SolarWM-h3-33B-base/**" "SolarWM-h3-33B-sgf-stage2-158f/**" \
  --local-dir "$SOLAR_MODEL_ROOT"

hf download junchaoh-cs/SolarWM-Data \
  --repo-type dataset \
  --exclude "SolarWM-Data-Annotation/**" \
  --local-dir "$SOLAR_DATA_HOME"

Download minimax-h3-158f-768p-nomind-v1 from ModelScope International or ModelScope China and place it at:

$SOLAR_DATA_ROOT/latent-wds/minimax-h3-158f-768p-nomind-v1/

The main data repository supplies the matching recipe indexes. Keep the latent generation's support/ directory alongside its shards, then set:

export H3_BASE="$SOLAR_MODEL_ROOT/SolarWM-h3-33B-base"
export H3_STAGE2_CHECKPOINT="$SOLAR_MODEL_ROOT/SolarWM-h3-33B-sgf-stage2-158f"
export H3_SUPPORT="$SOLAR_DATA_ROOT/latent-wds/minimax-h3-158f-768p-nomind-v1/support"

3. Check the configuration

Resolve the example with your local paths before starting training:

solarwm config resolve \
  --config configs/examples/minimax_h3/stage0p5-158f-lora384-sp2.yaml \
  --set distributed.world_size=8 \
  --set train.global_batch_size=4 \
  --set model.checkpoint_path="$H3_BASE" \
  --set data.index_root="$SOLAR_DATA_ROOT" \
  --set data.transport.root="$SOLAR_DATA_ROOT" \
  --set data.silence_latents_path="$H3_SUPPORT/h3_silence_153_158_170.safetensors" \
  --set data.encoder_contract_path="$H3_SUPPORT/encoder_contract.json" \
  --set runtime.output_dir="$SOLAR_OUTPUT_ROOT/h3-stage0p5-158f"

4. Launch training

The following command runs on one eight-GPU node with a smaller global batch than the default training config:

torchrun --standalone --nproc-per-node=8 \
  -m solarwm train \
  --config configs/examples/minimax_h3/stage0p5-158f-lora384-sp2.yaml \
  --set distributed.world_size=8 \
  --set train.global_batch_size=4 \
  --set model.checkpoint_path="$H3_BASE" \
  --set data.index_root="$SOLAR_DATA_ROOT" \
  --set data.transport.root="$SOLAR_DATA_ROOT" \
  --set data.silence_latents_path="$H3_SUPPORT/h3_silence_153_158_170.safetensors" \
  --set data.encoder_contract_path="$H3_SUPPORT/encoder_contract.json" \
  --set runtime.output_dir="$SOLAR_OUTPUT_ROOT/h3-stage0p5-158f"

Stage0.5 validation also uses the preencoded data and remains enabled. The output directory contains the resolved configuration, launch manifest, checkpoints, and validation results.

5. Run Stage2 inference

Generate 158-frame videos with the released Stage2 EMA checkpoint:

torchrun --standalone --nproc-per-node=8 -m solarwm infer \
  --config configs/examples/minimax_h3/infer-stage2-158f-sp4.yaml \
  --set model.checkpoint_path="$H3_BASE" \
  --set checkpoint.resume_from="$H3_STAGE2_CHECKPOINT" \
  --set checkpoint.weight_source=ema \
  --set data.index_root="$SOLAR_DATA_ROOT" \
  --set data.transport.root="$SOLAR_DATA_ROOT" \
  --set data.silence_latents_path="$H3_SUPPORT/h3_silence_153_158_170.safetensors" \
  --set data.encoder_contract_path="$H3_SUPPORT/encoder_contract.json" \
  --set runtime.output_dir="$SOLAR_OUTPUT_ROOT/h3-stage2-infer"

Next steps