Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
World-generation prompts work best describing a scene and camera motion; the built-in prompt in the example is a known-good starting point.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- World-generation prompts work best describing a scene and camera motion; the built-in prompt in the example is a known-good starting point.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
FLUX.1 dev defaults to a local official_weights/FLUX.1-dev directory in the example; the cookbook command passes the Hugging Face ID explicitly instead.
+
Image outputs land under outputs/; adjust --output if that path is not writable.
+
Gated checkpoints (FLUX.1 dev): run huggingface-cli login and accept the license on Hugging Face first.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- FLUX.1 dev defaults to a local `official_weights/FLUX.1-dev` directory in the example; the cookbook command passes the Hugging Face ID explicitly instead.
-- Image outputs land under `outputs/`; adjust `--output` if that path is not writable.
-- Gated checkpoints (FLUX.1 dev): run `huggingface-cli login` and accept the license on Hugging Face first.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
The editing example reads assets/images/couple.jpg from the repository root, so run it from a repo checkout rather than an arbitrary working directory.
+
Output paths default under image_output/; pass --output to change them.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- The editing example reads `assets/images/couple.jpg` from the repository root, so run it from a repo checkout rather than an arbitrary working directory.
-- Output paths default under `image_output/`; pass `--output` to change them.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Out of memory: basic_hy15.py already enables dit/VAE/text-encoder CPU offload; further tradeoffs are described in Optimizations.
+
pin_cpu_memory errors on low-RAM machines are documented inline in the example; set it to false as the source comment suggests.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Out of memory: `basic_hy15.py` already enables dit/VAE/text-encoder CPU offload; further tradeoffs are described in [Optimizations](../inference/optimizations.md).
-- `pin_cpu_memory` errors on low-RAM machines are documented inline in the example; set it to false as the source comment suggests.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
- Inference is the first complete stage. Distillation, fine-tuning,
- training, evaluation, optimization, and deployment will reuse the same
- family-first structure as their recipes land. Each family page shows
- which stages are available and which are planned. Two DGX Sparks: bring up
- the QSFP Ray cluster first
- (pair two Sparks),
- then pick the FastH3 two-Spark recipe.
-
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Alternative Lite/Pro checkpoints are listed inline in the maintained examples; swap the model string only after checking its Hugging Face card.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Alternative Lite/Pro checkpoints are listed inline in the maintained examples; swap the model string only after checking its Hugging Face card.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-Both recipes map to checked-in FastVideo examples and recorded single-GPU B200 runs. The image-to-video run also records 10,365.89 MB peak GPU memory. These measurements describe the recorded runs; they are not minimum hardware requirements.
+
+ Evidence status
+
+
Both recipes map to checked-in FastVideo examples and recorded single-GPU B200 runs. The image-to-video run also records 10,365.89 MB peak GPU memory. These measurements describe the recorded runs; they are not minimum hardware requirements.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Each LongCat script runs multiple passes (basic, distilled, refine); total runtime scales accordingly, and every pass prints its own output directory.
+
Out of memory: the sources already enable VAE and text-encoder CPU offload; further options are covered in Offloading.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Each LongCat script runs multiple passes (basic, distilled, refine); total runtime scales accordingly, and every pass prints its own output directory.
-- Out of memory: the sources already enable VAE and text-encoder CPU offload; further options are covered in [Offloading](../inference/offloading.md).
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
The distilled recipe is source-configured for four GPUs; running it on fewer GPUs is unverified and may fail during distributed setup.
+
Audio-less output usually means the base checkpoint resolved instead of the distilled LTX-2 checkpoint with audio; check the loaded model ID in the logs.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- The distilled recipe is source-configured for four GPUs; running it on fewer GPUs is unverified and may fail during distributed setup.
-- Audio-less output usually means the base checkpoint resolved instead of the distilled LTX-2 checkpoint with audio; check the loaded model ID in the logs.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Matrix Game 3.0 downloads its reference input image from GitHub; offline machines should pre-download it and edit the IMAGE_URL constant locally.
+
Streaming variants of Matrix Game 2.0 exist under examples/inference/basic/basic_matrixgame2_streaming.py but are not included as cookbook recipes.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Matrix Game 3.0 downloads its reference input image from GitHub; offline machines should pre-download it and edit the `IMAGE_URL` constant locally.
-- Streaming variants of Matrix Game 2.0 exist under `examples/inference/basic/basic_matrixgame2_streaming.py` but are not included as cookbook recipes.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Generate video and audio with H3. Run a server on CUDA or Apple Silicon MLX to iterate on prompts, or call the pipeline directly from Python.
- 6 maintained recipes
+ 7 maintained recipes
@@ -29,13 +29,20 @@ hide:
Deployment planned
+
Compare H3 modes and options
Supported modes
CUDA covers T2VA, FL2VA, and Ref2VA on the full checkpoint, plus FastH3
- Preview and FastH3 LoRA. MLX is T2VA only. Temporal --fast,
+ Preview, FastH3 LoRA, and a two-node FastH3 Preview recipe over Ray
+ sequence parallel. MLX is T2VA only. Temporal --fast,
spatial --fast-spatial, and opt-in VSA are flags on the same
MLX script, not extra recipes.
@@ -84,6 +91,11 @@ hide:
No cookbook recipe
Not wired
+
+
2-Spark SP
+
FastH3 Preview across two DGX Sparks with Ray sequence parallel (sp_size=2) over QSFP RoCE
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
Follow the Apple Silicon guide for the download, conversion, and storage requirements.
+
Two DGX Sparks
+
uv pip install ray
+
The 2-Spark recipe needs two DGX Sparks on an active QSFP link, the same FastH3 snapshot on both NVMes, and a Ray cluster on top. Follow pairing two Sparks before running it.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
The full CUDA H3 examples request four GPUs by default. Their sources do not claim a GPU model or memory minimum.
+
The FastH3 CUDA performance profile was measured on four GB200 GPUs. Use its strict profile when exact operation order matters more than the measured performance configuration.
+
The MLX source runtime supports T2VA, optional temporal --fast, optional spatial --fast-spatial, and opt-in VSA on --include-vsa checkpoints. FL2VA, Ref2VA, and two-pass refinement are not wired.
+
GPU count and VAE decode backend are configurable in the builder above for FastH3 recipes. Only the value shown by default has a recorded run; other supported values are unmeasured here.
+
The 2-Spark recipe fixes its own GPU count and execution backend in its YAML config and is not affected by the GPU count knob above. It requires a two-node Ray cluster on the QSFP interconnect; see the setup step above.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-CUDA FastH3 uses the pinned performance dependencies:
-
- UV_TORCH_BACKEND=cu130 uv pip install -e ".[fasth3]"
-
-Apple Silicon uses the native MLX extra and a locally converted H3 DiT:
-
- uv pip install -e ".[mlx]"
-
-Follow the [Apple Silicon guide](../getting_started/installation/mps.md#run-fasth3-preview)
-for the download, conversion, and storage requirements.
-
-## Troubleshooting
-
-- The full CUDA H3 examples request four GPUs by default. Their sources do not claim a GPU model or memory minimum.
-- The FastH3 CUDA performance profile was measured on four GB200 GPUs. Use its strict profile when exact operation order matters more than the measured performance configuration.
-- The MLX source runtime supports T2VA, optional temporal `--fast`, optional spatial `--fast-spatial`, and opt-in VSA on `--include-vsa` checkpoints. FL2VA, Ref2VA, and two-pass refinement are not wired.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-Every command, model ID, and flag on this page maps to a checked-in FastVideo source. Recipes marked **Verified** also have a recorded hardware path in linked FastVideo evidence. The full H3 CUDA examples remain **Source-backed** where the source records a GPU count but no GPU model or memory requirement. Unlisted hardware is unknown, not unsupported.
+
+ Evidence status
+
+
Every command, model ID, and flag on this page maps to a checked-in FastVideo source. Recipes marked Verified also have a recorded hardware path in linked FastVideo evidence. The full H3 CUDA examples remain Source-backed where the source records a GPU count but no GPU model or memory requirement. Unlisted hardware is unknown, not unsupported.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
If the example reports a missing local converted_weights/mmaudio/large_44k_v2 path, the MMAUDIO_MODEL_PATH env var from the cookbook command was not applied; export it in the same shell.
+
Alternatively convert upstream weights yourself with scripts/checkpoint_conversion/convert_mmaudio_to_diffusers.py and point the env var at the result.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- If the example reports a missing local `converted_weights/mmaudio/large_44k_v2` path, the `MMAUDIO_MODEL_PATH` env var from the cookbook command was not applied; export it in the same shell.
-- Alternatively convert upstream weights yourself with `scripts/checkpoint_conversion/convert_mmaudio_to_diffusers.py` and point the env var at the result.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Loader errors about monolithic checkpoints mean an upstream stabilityai/stable-audio-open-* ID was used; use the FastVideo converted repos from the recipes.
+
Duration and step knobs (audio_end_in_s, num_inference_steps) are documented inline in the example source.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Loader errors about monolithic checkpoints mean an upstream `stabilityai/stable-audio-open-*` ID was used; use the FastVideo converted repos from the recipes.
-- Duration and step knobs (`audio_end_in_s`, `num_inference_steps`) are documented inline in the example source.
-
-## Evidence status
-
-The Stable Audio Open 1.0 recipe maps to a checked-in example and a recorded single-GPU B200 run. The Stable Audio Open Small recipe remains **Source-backed** because the implementation PR did not record a full run for that gated checkpoint. Neither recipe claims a minimum VRAM requirement.
+
+ Evidence status
+
+
The Stable Audio Open 1.0 recipe maps to a checked-in example and a recorded single-GPU B200 run. The Stable Audio Open Small recipe remains Source-backed because the implementation PR did not record a full run for that gated checkpoint. Neither recipe claims a minimum VRAM requirement.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
The example writes several PNGs under outputs/sd35/samples/; make sure the output directory is writable.
+
Gated checkpoints: Stability AI models require accepting the license and huggingface-cli login.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- The example writes several PNGs under `outputs/sd35/samples/`; make sure the output directory is writable.
-- Gated checkpoints: Stability AI models require accepting the license and `huggingface-cli login`.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
TurboDiffusion paths load community-published loayrashid/TurboWan* checkpoints; availability is governed by those repos.
+
The SLA attention backend used by the I2V recipe is selected inside the example source; do not combine it with another FASTVIDEO_ATTENTION_BACKEND override in the same shell.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- TurboDiffusion paths load community-published `loayrashid/TurboWan*` checkpoints; availability is governed by those repos.
-- The SLA attention backend used by the I2V recipe is selected inside the example source; do not combine it with another `FASTVIDEO_ATTENTION_BACKEND` override in the same shell.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Out of memory on the A14B recipes: the checked-in sources already enable CPU offload; see Configuration for the offload surface before reducing resolution or frames.
+
The FastWan2.1 recipe requires VIDEO_SPARSE_ATTN; confirm the environment variable in the command was set in the same shell.
+
FastMetal MLX: install with uv pip install -e ".[mlx]", then follow the Apple Silicon guide. CUDA FastWan-QAD checkpoints are refused on the MLX runtime.
+
FastMetal 5B uses mlx_wan22_generate.py. 1.3B and 14B use mlx_wan_prompt_to_video.py.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Out of memory on the A14B recipes: the checked-in sources already enable CPU offload; see [Configuration](../inference/configuration.md) for the offload surface before reducing resolution or frames.
-- The FastWan2.1 recipe requires `VIDEO_SPARSE_ATTN`; confirm the environment variable in the command was set in the same shell.
-- FastMetal MLX: install with `uv pip install -e ".[mlx]"`, then follow the [Apple Silicon guide](../getting_started/installation/mps.md). CUDA FastWan-QAD checkpoints are refused on the MLX runtime.
-- FastMetal 5B uses `mlx_wan22_generate.py`. 1.3B and 14B use `mlx_wan_prompt_to_video.py`.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-Every recipe on this page maps to a checked-in FastVideo source. The FastMetal MLX releases include the recorded M4 Max system memory, documented unified-memory floor, and measured peak MLX memory. CUDA entries remain **Source-backed** where the examples record a GPU count but no exact GPU model or VRAM. Unlisted hardware is unknown, not unsupported.
+
+ Evidence status
+
+
Every recipe on this page maps to a checked-in FastVideo source. The FastMetal MLX releases include the recorded M4 Max system memory, documented unified-memory floor, and measured peak MLX memory. CUDA entries remain Source-backed where the examples record a GPU count but no exact GPU model or VRAM. Unlisted hardware is unknown, not unsupported.
Use Configuration for supported Python and CLI settings, Optimizations for attention and memory tradeoffs, and the support matrix for the supported model and optimization surface.
+
+
-The generated commands expect a local clone:
+
+ Troubleshooting
+
+
+
Output defaults to outputs/zimage/zimage_turbo.png; pass --output to redirect.
+
Gated or missing checkpoints: run huggingface-cli login and confirm you accepted the model's license on Hugging Face.
+
+
+
- git clone https://github.com/hao-ai-lab/FastVideo.git
- cd FastVideo
-
-Use [Configuration](../inference/configuration.md) for supported Python and
-CLI settings, [Optimizations](../inference/optimizations.md) for attention and
-memory tradeoffs, and the [support matrix](../inference/support_matrix.md) for
-the supported model and optimization surface.
-
-## Troubleshooting
-
-- Output defaults to `outputs/zimage/zimage_turbo.png`; pass `--output` to redirect.
-- Gated or missing checkpoints: run `huggingface-cli login` and confirm you accepted the model's license on Hugging Face.
-
-## Evidence status
-
-All recipes on this page are **Source-backed**: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are **Unknown** and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+ Evidence status
+
+
All recipes on this page are Source-backed: their commands, model IDs, and flags were validated against the checked-in FastVideo sources listed above (static validation). No runtime GPU validation is recorded for these recipes, so GPU model fit, memory use, throughput, and runtime duration are Unknown and deliberately not claimed. Runtime buttons show only the GPU counts configured in checked-in sources.
+
+
diff --git a/docs/generate_examples.py b/docs/generate_examples.py
index 3e5724757..7f2fc26b9 100644
--- a/docs/generate_examples.py
+++ b/docs/generate_examples.py
@@ -163,6 +163,31 @@ def validate_cookbook() -> None:
or any(not isinstance(item, str) or not item.strip() for item in modes)):
raise ValueError(f"Cookbook recipe modes must be a non-empty list of strings: {recipe['id']}")
+ knobs = recipe.get("knobs", [])
+ if not isinstance(knobs, list):
+ raise ValueError(f"Cookbook recipe knobs must be a list: {recipe['id']}")
+ knob_keys: set[str] = set()
+ for knob in knobs:
+ if not isinstance(knob, dict):
+ raise ValueError(f"Cookbook recipe knob must be an object: {recipe['id']}")
+ required_knob = ("key", "label", "flag", "options", "default")
+ missing_knob = {key for key in required_knob if key not in knob}
+ if missing_knob:
+ raise ValueError(f"Cookbook recipe knob is missing: {recipe['id']}: {', '.join(sorted(missing_knob))}")
+ if knob["key"] in knob_keys:
+ raise ValueError(f"Duplicate cookbook recipe knob key: {recipe['id']}: {knob['key']}")
+ knob_keys.add(knob["key"])
+ if not isinstance(knob["flag"], str) or not knob["flag"].startswith("--"):
+ raise ValueError(f"Cookbook recipe knob flag must start with --: {recipe['id']}: {knob['key']}")
+ options = knob["options"]
+ if not isinstance(options, list) or not options:
+ raise ValueError(
+ f"Cookbook recipe knob options must be a non-empty list: {recipe['id']}: {knob['key']}")
+ option_values = [option["value"] if isinstance(option, dict) else option for option in options]
+ if knob["default"] not in option_values:
+ raise ValueError(
+ f"Cookbook recipe knob default must be one of its options: {recipe['id']}: {knob['key']}")
+
source = (ROOT_DIR / recipe["source"]).resolve()
if not any(source.is_relative_to(root.resolve()) for root in COOKBOOK_SOURCE_ROOTS):
raise ValueError(f"Cookbook source is outside an approved directory: {recipe['source']}")
@@ -170,6 +195,19 @@ def validate_cookbook() -> None:
raise ValueError(f"Cookbook source does not exist: {recipe['source']}")
source_text = source.read_text(encoding="utf-8")
+ if knobs:
+ # A script that shares its argument parser with a sibling module
+ # (e.g. `from . import basic_fasth3`) inherits that module's
+ # flags without the flag text appearing in its own source.
+ knob_source_text = source_text
+ for match in re.finditer(r'(?:from\s+\.\s+import|^\s*import)\s+(\w+)', source_text, flags=re.MULTILINE):
+ sibling = source.parent / f"{match.group(1)}.py"
+ if sibling.is_file() and sibling != source:
+ knob_source_text += "\n" + sibling.read_text(encoding="utf-8")
+ for knob in knobs:
+ if knob["flag"] not in knob_source_text:
+ raise ValueError(f"Cookbook recipe knob flag is not in its source: {recipe['id']}: {knob['flag']}")
+
# The model must be traceable to the checked-in source itself, or be
# passed explicitly on the command line (e.g. --model-path or
# MODEL_PATH=) when the source reads it from arguments/env.