Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/flux.md b/docs/cookbook/flux.md
new file mode 100644
index 00000000..a442694c
--- /dev/null
+++ b/docs/cookbook/flux.md
@@ -0,0 +1,131 @@
+---
+hide:
+- toc
+---
+
+# FLUX recipes
+
+
Black Forest Labs' FLUX family covers FLUX.1 dev and FLUX.2 (dev and distilled Klein) text-to-image. FLUX.1 registers no `model_family` in the registry and is grouped under FLUX for documentation only.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/glm-image.md b/docs/cookbook/glm-image.md
new file mode 100644
index 00000000..b0b8c3f6
--- /dev/null
+++ b/docs/cookbook/glm-image.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# GLM-Image recipes
+
+
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/hunyuan.md b/docs/cookbook/hunyuan.md
new file mode 100644
index 00000000..d9ec66da
--- /dev/null
+++ b/docs/cookbook/hunyuan.md
@@ -0,0 +1,131 @@
+---
+hide:
+- toc
+---
+
+# Hunyuan recipes
+
+
HunyuanVideo 1.5 is Tencent's video generation family. The maintained examples cover 480p text-to-video with CPU offload and a full 480p-to-1080p upscale chain.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/index.md b/docs/cookbook/index.md
index b5d408f6..7359ac1a 100644
--- a/docs/cookbook/index.md
+++ b/docs/cookbook/index.md
@@ -1,44 +1,303 @@
+---
+hide:
+- toc
+---
+
# Inference Cookbook
-Choose a complete recipe maintained in the FastVideo repository. Each command
-runs its checked-in source directly, so coupled model, GPU, offload, and
-attention settings do not drift into unsupported combinations.
+
+
+
FastVideo inference cookbook
+
Choose a model family.
+
+ Open a family to pick a maintained recipe and a runtime FastVideo
+ actually supports. Every command runs a checked-in source, so the model,
+ platform, offload, and attention settings stay tied to that example. The catalog
+ is derived from the model families registered in
+ fastvideo/registry.py.
+
+ 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.
+
+
-## Customize a recipe
-
-Start from the checked-in source, then change only the settings your model
-supports:
-
-- [Configuration](../inference/configuration.md) covers the Python and CLI
- config surfaces.
-- [Optimizations](../inference/optimizations.md) covers attention backends,
- compilation, and memory tradeoffs.
-- [Support matrix](../inference/support_matrix.md) lists supported models and
- optimizations.
+
+Catalog marks come from the official model publishers' Hugging Face
+organizations; typographic tiles are placeholders, never invented logos. See
+docs/assets/logos/SOURCES.md.
+
diff --git a/docs/cookbook/kandinsky5.md b/docs/cookbook/kandinsky5.md
new file mode 100644
index 00000000..1227233c
--- /dev/null
+++ b/docs/cookbook/kandinsky5.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Kandinsky 5 recipes
+
+
Kandinsky 5.0 from the Kandinsky Lab covers text-to-video and image-to-video in Lite and Pro variants, including distilled checkpoints for faster sampling.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/longcat.md b/docs/cookbook/longcat.md
new file mode 100644
index 00000000..459931d8
--- /dev/null
+++ b/docs/cookbook/longcat.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# LongCat recipes
+
+
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/ltx.md b/docs/cookbook/ltx.md
new file mode 100644
index 00000000..0f66defb
--- /dev/null
+++ b/docs/cookbook/ltx.md
@@ -0,0 +1,131 @@
+---
+hide:
+- toc
+---
+
+# LTX recipes
+
+
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/matrix-game.md b/docs/cookbook/matrix-game.md
new file mode 100644
index 00000000..a33c6f55
--- /dev/null
+++ b/docs/cookbook/matrix-game.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Matrix Game recipes
+
+
Matrix Game generates playable interactive worlds from an input image and prompt. Maintained examples cover Matrix Game 2.0 variants and Matrix Game 3.0 at 720p.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/minimax-h3.md b/docs/cookbook/minimax-h3.md
new file mode 100644
index 00000000..9e836102
--- /dev/null
+++ b/docs/cookbook/minimax-h3.md
@@ -0,0 +1,143 @@
+---
+hide:
+- toc
+---
+
+# MiniMax H3 recipes
+
+
Generate synchronized video and audio with the full H3 checkpoint, the four-step FastH3 Preview, reference and frame-conditioned paths, or the native Apple Silicon MLX runtime.
Choose the result you want, then use a maintained CUDA or MLX path.
+ Device claims stay tied to checked-in sources and recorded runs.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Hardware
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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 is limited to T2VA. FL2VA, Ref2VA, VSA, spatial fast mode, and two-pass refinement are not wired on MLX.
+- 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.
diff --git a/docs/cookbook/mmaudio.md b/docs/cookbook/mmaudio.md
new file mode 100644
index 00000000..2e0e4ca7
--- /dev/null
+++ b/docs/cookbook/mmaudio.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# MMAudio recipes
+
+
MMAudio adds synchronized audio to video or generates audio from text. The checkpoint must be in Diffusers layout; the recipe loads the converted FastVideo repo through the `MMAUDIO_MODEL_PATH` environment variable the example reads.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/stable-audio.md b/docs/cookbook/stable-audio.md
new file mode 100644
index 00000000..47a848bd
--- /dev/null
+++ b/docs/cookbook/stable-audio.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Stable Audio recipes
+
+
Stable Audio Open generates audio from text. FastVideo requires the converted Diffusers-format repos published by the FastVideo organization; upstream monolithic checkpoints are not loader-compatible.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/stable-diffusion.md b/docs/cookbook/stable-diffusion.md
new file mode 100644
index 00000000..6185179b
--- /dev/null
+++ b/docs/cookbook/stable-diffusion.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Stable Diffusion recipes
+
+
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/turbodiffusion.md b/docs/cookbook/turbodiffusion.md
new file mode 100644
index 00000000..323f8df0
--- /dev/null
+++ b/docs/cookbook/turbodiffusion.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# TurboDiffusion recipes
+
+
TurboDiffusion profiles accelerate Wan checkpoints with step-distilled sampling and the SLA attention backend. These recipes follow the registry's `turbodiffusion` model family.
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/cookbook/wan.md b/docs/cookbook/wan.md
new file mode 100644
index 00000000..36df7964
--- /dev/null
+++ b/docs/cookbook/wan.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Wan recipes
+
+
Choose the result you want, then use a maintained CUDA or native MLX path.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Hardware
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
+- 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.
diff --git a/docs/cookbook/z-image.md b/docs/cookbook/z-image.md
new file mode 100644
index 00000000..6a608279
--- /dev/null
+++ b/docs/cookbook/z-image.md
@@ -0,0 +1,130 @@
+---
+hide:
+- toc
+---
+
+# Z-Image recipes
+
+
Choose a model, then pick a GPU count. Each selection maps to one
+ checked-in recipe. If that recipe does not use your chosen count, the
+ page says so instead of guessing.
+
+
+
+
+
+
+ Recipe
+ Task and checkpoint
+
+
+
+
+
+
+
+
+ Runtime
+ Maintained paths only
+
+
+
+
+
+
+
Loading recipe details...
+
Exact device and memory details appear only when a recorded run supports them.
+
+
+ Reading recipe evidence...
+
+
+
+
+
+
Loading...
+
+ Maintained
+ Source-backed
+ Source config
+
+
+
+
+
Model
Loading...
+
Workload
Loading...
+
Source configuration
Loading...
+
Expected output
Loading...
+
+
+
+
+ Terminal
+
+
Loading...
+
+
+
+
+
+
+
+
+
+
+
+## Before you run
+
+The generated commands expect a local clone:
+
+ 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.
diff --git a/docs/generate_examples.py b/docs/generate_examples.py
index 1e85d5d4..2b045cd2 100644
--- a/docs/generate_examples.py
+++ b/docs/generate_examples.py
@@ -25,17 +25,69 @@ COOKBOOK_SOURCE_ROOTS = (
ROOT_DIR / "examples/inference",
ROOT_DIR / "scripts/inference",
)
+# Cookbook families mirror the `model_family` values declared in
+# fastvideo/registry.py, plus "flux" for models that register no family
+# (e.g. black-forest-labs/FLUX.1-dev) and are grouped for documentation only.
+COOKBOOK_FAMILIES = {
+ "wan",
+ "turbodiffusion",
+ "ltx2",
+ "hunyuan",
+ "cosmos",
+ "kandinsky5",
+ "flux",
+ "glm_image",
+ "zimage",
+ "sd35",
+ "minimax_h3",
+ "longcat",
+ "stable_audio",
+ "mmaudio",
+ "matrixgame",
+}
+# Lifecycle stages a recipe can belong to. Only "inference" has recipes today;
+# the rest exist so the schema (and UI) can grow without another migration.
+COOKBOOK_STAGES = {
+ "inference",
+ "distillation",
+ "fine-tuning",
+ "training",
+ "lora-training",
+ "evaluation",
+ "optimization",
+ "deployment",
+}
+# Explicit evidence states; never conflate these in recipe entries.
+COOKBOOK_EVIDENCE_STATES = {
+ "Verified",
+ "Source-backed",
+ "Estimated",
+ "Community-reported",
+ "Unknown",
+ "Unsupported",
+}
+COOKBOOK_HARDWARE_EVIDENCE = {"validated", "source-configured", "estimated", "unknown"}
+COOKBOOK_HARDWARE_PLATFORMS = {"cuda", "mlx", "mps"}
+COOKBOOK_GPU_TYPES = {"NVIDIA", "Apple Silicon"}
+COOKBOOK_HARDWARE_TEXT_FIELDS = {
+ "accelerator",
+ "system_memory",
+ "minimum_memory",
+ "peak_memory",
+ "evidence_url",
+}
def validate_cookbook() -> None:
"""Keep cookbook entries tied to checked-in runnable sources."""
- recipes = json.loads(COOKBOOK_DATA.read_text(encoding="utf-8")).get("recipes")
+ data = json.loads(COOKBOOK_DATA.read_text(encoding="utf-8"))
+ recipes = data.get("recipes")
if not isinstance(recipes, list) or not recipes:
raise ValueError(f"{COOKBOOK_DATA}: recipes must be a non-empty list")
seen: set[str] = set()
for recipe in recipes:
- required = ("id", "task", "label", "model", "source", "command")
+ required = ("id", "family", "task", "label", "model", "source", "command")
missing = {key for key in required if not recipe.get(key)}
if missing:
raise ValueError(f"Cookbook recipe is missing: {', '.join(sorted(missing))}")
@@ -43,6 +95,58 @@ def validate_cookbook() -> None:
raise ValueError(f"Duplicate cookbook recipe id: {recipe['id']}")
seen.add(recipe["id"])
+ if recipe["family"] not in COOKBOOK_FAMILIES:
+ raise ValueError(f"Cookbook recipe has an unknown family: {recipe['id']}: {recipe['family']}")
+
+ stage = recipe.get("stage", "inference")
+ if stage not in COOKBOOK_STAGES:
+ raise ValueError(f"Cookbook recipe has an unknown stage: {recipe['id']}: {stage}")
+
+ evidence = recipe.get("evidence", "Source-backed")
+ if evidence not in COOKBOOK_EVIDENCE_STATES:
+ raise ValueError(f"Cookbook recipe has an unknown evidence state: {recipe['id']}: {evidence}")
+
+ hardware = recipe.get("hardware")
+ if not isinstance(hardware, dict):
+ raise ValueError(f"Cookbook recipe is missing hardware info: {recipe['id']}")
+ platform = hardware.get("platform", "cuda")
+ if platform not in COOKBOOK_HARDWARE_PLATFORMS:
+ raise ValueError(f"Cookbook recipe has an unknown hardware platform: {recipe['id']}: {platform}")
+ gpu_count = hardware.get("gpu_count")
+ if platform == "cuda" and (not isinstance(gpu_count, int) or gpu_count < 1):
+ raise ValueError(f"CUDA cookbook recipe needs an integer gpu_count >= 1: {recipe['id']}")
+ if platform != "cuda" and gpu_count is not None:
+ raise ValueError(f"Non-CUDA cookbook recipe must not use gpu_count: {recipe['id']}")
+ hardware_evidence = hardware.get("evidence")
+ if hardware_evidence not in COOKBOOK_HARDWARE_EVIDENCE:
+ raise ValueError(f"Cookbook recipe has unknown hardware evidence: {recipe['id']}: {hardware_evidence}\n"
+ f"Expected one of {sorted(COOKBOOK_HARDWARE_EVIDENCE)}. Never guess GPU compatibility.")
+ for field_name in COOKBOOK_HARDWARE_TEXT_FIELDS:
+ value = hardware.get(field_name)
+ if value is not None and not (isinstance(value, str) and value.strip()):
+ raise ValueError(f"Cookbook hardware field must be a non-empty string: {recipe['id']}: {field_name}")
+ if hardware_evidence == "validated" and not hardware.get("accelerator"):
+ raise ValueError(f"Validated cookbook hardware needs an exact accelerator: {recipe['id']}")
+ if hardware_evidence == "source-configured":
+ recorded_fields = {"accelerator", "system_memory", "peak_memory"}.intersection(hardware)
+ if recorded_fields:
+ raise ValueError(f"Source-configured hardware cannot claim recorded run details: {recipe['id']}: "
+ f"{', '.join(sorted(recorded_fields))}")
+ evidence_url = hardware.get("evidence_url")
+ if evidence_url is not None and not evidence_url.startswith("https://github.com/hao-ai-lab/FastVideo/"):
+ raise ValueError(f"Cookbook hardware evidence must link to the FastVideo repository: {recipe['id']}")
+ gpu_types = recipe.get("gpu_types", [])
+ if not isinstance(gpu_types, list) or any(gpu not in COOKBOOK_GPU_TYPES for gpu in gpu_types):
+ raise ValueError(f"Cookbook recipe has an unknown gpu_types entry: {recipe['id']}: {gpu_types}")
+
+ revision = recipe.get("revision")
+ if revision is not None and not (isinstance(revision, str) and revision.strip()):
+ raise ValueError(f"Cookbook recipe revision must be a non-empty string when present: {recipe['id']}")
+
+ related = recipe.get("related", [])
+ if not isinstance(related, list):
+ raise ValueError(f"Cookbook recipe related must be a list of recipe ids: {recipe['id']}")
+
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']}")
@@ -50,11 +154,21 @@ def validate_cookbook() -> None:
raise ValueError(f"Cookbook source does not exist: {recipe['source']}")
source_text = source.read_text(encoding="utf-8")
- if recipe["model"] not in source_text:
- raise ValueError(f"Cookbook model is not present in {recipe['source']}: {recipe['model']}")
+ # 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.
+ if recipe["model"] not in source_text and recipe["model"] not in recipe["command"]:
+ raise ValueError(f"Cookbook model is not present in {recipe['source']} or its command: {recipe['id']}")
if recipe["source"] not in recipe["command"]:
raise ValueError(f"Cookbook command does not invoke its source: {recipe['id']}")
+ # Second pass so `related` may point forward at recipes defined later.
+ ids = {recipe["id"] for recipe in recipes}
+ for recipe in recipes:
+ for related_id in recipe.get("related", []):
+ if related_id not in ids:
+ raise ValueError(f"Cookbook recipe references unknown related id: {recipe['id']}: {related_id}")
+
def fix_case(text: str) -> str:
subs = {
diff --git a/mkdocs.yml b/mkdocs.yml
index e2180d61..9956e749 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -154,7 +154,23 @@ nav:
- Apple Silicon FastWan: getting_started/installation/mps.md
- Quick Start: getting_started/quick_start.md
- V1 API: getting_started/v1_api.md
- - Cookbook: cookbook/index.md
+ - Cookbook:
+ - Model Families: cookbook/index.md
+ - Wan: cookbook/wan.md
+ - LTX: cookbook/ltx.md
+ - Hunyuan: cookbook/hunyuan.md
+ - Cosmos: cookbook/cosmos.md
+ - Kandinsky 5: cookbook/kandinsky5.md
+ - FLUX: cookbook/flux.md
+ - GLM-Image: cookbook/glm-image.md
+ - Z-Image: cookbook/z-image.md
+ - Stable Diffusion: cookbook/stable-diffusion.md
+ - MiniMax H3: cookbook/minimax-h3.md
+ - LongCat: cookbook/longcat.md
+ - Stable Audio: cookbook/stable-audio.md
+ - MMAudio: cookbook/mmaudio.md
+ - Matrix Game: cookbook/matrix-game.md
+ - TurboDiffusion: cookbook/turbodiffusion.md
- Inference:
- Quick Start: inference/inference_quick_start.md
- Configuration: inference/configuration.md