FastH3 8-Step V2, int8 β radiance container
FastVideo's FastVideo-FastH3-8-Step-V2 β
MiniMax-H3 distilled to eight steps with video sparse attention: video with a synchronized stereo
soundtrack from text β as a single .rad container for the
radiance inference engine (AMD RDNA4, ROCm). It replaces
StillDeadcode/fasth3-8-step-v2-fp8, with the same
eight bits a weight and no E4M3 weight left.
The MiniMax H3 Community License does not cover the European Union, the United Kingdom, the Republic of Korea or the United States of America; see License.
| File | fasth3-8-step-v2-i8.rad β 64.58 GiB |
| Weights | int8 throughout: the text encoder's linears (the 50 layers of Qwen3-VL-32B the model reads) and the token refiner's IQ8R (codes β127..127, each 128 of K rotated by the unnormalised Hadamard, a u8 scale per row and 256 of K under a bf16 scale a row); the modulation projections the same rotation with a bf16 scale per row and 128; the DiT's 50 blocks' linears unrotated int8 with a bf16 scale per row and 128; the video decoder bf16; the audio decoder f32 |
| Activations | int8 (W8A8), rotated where the weight is |
| Steps | 8, the schedule the model was trained on |
| Output | MP4: H.264 at 24 fps, up to 1344x768, 5.17 to 14.4 s; AAC at 32 kHz stereo |
| Latent upscaler | LBH-123-AI/Minimax_h3_latent_Upscaler v1 (3D conv, 345M parameters, bf16; Apache-2.0) |
| Needs | radiance built from main after 1.17.0 (the text encoder's, the refiner's and the modulation projections' int8 forms are not in 1.17.0 and come with the next release); two 32 GB cards and about 39 GiB of pinned host memory |
Serve
radiance --model fasth3-8-step-v2-i8.rad --tp 2 --vision-tower-placement ram --host 0.0.0.0 --port 8000
curl -s http://localhost:8000/v1/videos -H 'Content-Type: application/json' -d '{
"prompt": "A red fox trotting through a snowy pine forest, snow crunching underfoot",
"seconds": "5", "size": "1344x768", "seed": 7}' # -> {"id": "video_...", "status": "queued", ...}
curl -s http://localhost:8000/v1/videos/video_... # poll until "status": "completed"
curl -s http://localhost:8000/v1/videos/video_.../content -o fox.mp4
The model is served as fastvideo-fasth3-8-step-v2 on OpenAI's video jobs API (POST /v1/videos,
GET /v1/videos/{id}, GET /v1/videos/{id}/content, list and delete), with SGLang's target
field:
promptis read as written, up to 2048 tokens.secondsis rounded up to the model's length steps (17 frames): 5.17 to 14.4 s.sizeisWIDTHxHEIGHT, multiples of 32, at most 1344x768 pixels of area.seedmakes a video repeatable on the same deployment.- The model runs only the schedule it was trained on:
num_inference_stepsmay be left out or be 9 (grid points, as diffusers counts them); any other count is refused. - Text to video and audio only. FastVideo notes that difficult motion, fine detail and some audio may fall below the base model's.
On two Radeon AI PRO R9700s (gfx1201), from the request to the finished 5.17 s clip, one run a size:
100 s at 1344x768, 54 s at 1024x576 and 26 to 28 s at 672x384; an FP8 container of the same checkpoint,
timed the same way the same day, took 88 s, 62 s and 22 to 28 s. For the base model see
StillDeadcode/minimax-h3-i8. Attention
skips 80% of the 64-token video tiles, as the model was trained. The text encoder and the modulation
projections are read from pinned host memory, which --vision-tower-placement ram selects. At
256x256, frames match FastVideo's reference pipeline by eye.
Latent upscaling
The container carries LBH-123-AI's latent upscaler. A request with "latent_upscale": 2 runs its
first steps at half the size (672x384 for 1344x768), the upscaler enlarges the clean latent, and the
last upscale_refine_steps (3 of the 8 by default) run at the full size from a re-noised copy of it:
curl -s http://localhost:8000/v1/videos -H 'Content-Type: application/json' -d '{
"prompt": "...", "seconds": "5", "size": "1344x768", "seed": 7, "latent_upscale": 2}'
| 5.17 s at 1344x768, 2x R9700, the FP8 container's generation times | time |
|---|---|
| native, 8 steps | 68 s |
latent_upscale 2, 3 refine steps (the default) |
41 s |
latent_upscale 2, 4 refine steps |
46 s |
latent_upscale 4, 3 refine steps |
35 s |
The factor goes up to 4. At 1344x768 a factor of 4 starts from 352x192; FastH3 still lays the scene
out there, a little softer than at 2. The video object of an upscaled video reports latent_upscale,
upscale_refine_steps and upscale_from (the small size).
How this file was made
rad-convert FastVideo/FastVideo-FastH3-8-Step-V2 --recipe minimax-h3-i8.recipe -o fasth3-8-step-v2-i8.rad
FastVideo/FastVideo-FastH3-8-Step-V2 is the downloaded pipeline directory; its text encoder and
decoders are MiniMax-H3's own files. The recipe (minimax-h3-i8.recipe in this repository, the
same as MiniMax-H3's) names what is quantised; everything it does not name is the checkpoint's own
dtype:
te.blk.*.attn_qkv.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
te.blk.*.attn_output.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
te.blk.*.ffn_gate_up.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
te.blk.*.ffn_down.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
te.blk.*.attn_norm.weight cast dtype=f32
te.blk.*.ffn_norm.weight cast dtype=f32
ref.blk.*.attn_qkv.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
ref.blk.*.attn_output.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
ref.blk.*.ffn_gate_up.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
ref.blk.*.ffn_down.weight rtn codes=i8 group=256 scale=u8 scale2=bf16 block2=1x* transform=fwht128 clamp=sym rule=search
dit.blk.*.attn_qkv.weight rtn codes=i8 group=128 scale=bf16 clamp=sym
dit.blk.*.attn_output.weight rtn codes=i8 group=128 scale=bf16 clamp=sym
dit.blk.*.ffn_gate_up.weight rtn codes=i8 group=128 scale=bf16 clamp=sym
dit.blk.*.ffn_down.weight rtn codes=i8 group=128 scale=bf16 clamp=sym
dit.blk.*.ada*.weight rtn codes=i8 group=128 scale=bf16 transform=fwht128 clamp=sym rule=search
vae.blk.*.attn_qkv.weight cast dtype=bf16
vae.blk.*.attn_out.weight cast dtype=bf16
vae.blk.*.ffn_up.weight cast dtype=bf16
vae.blk.*.ffn_down.weight cast dtype=bf16
vae.proj_out.* cast dtype=bf16
aud.*.weight cast dtype=f32
aenc.d*.w cast dtype=bf16
aenc.d*.b cast dtype=bf16
aenc.pb.* cast dtype=bf16
aenc.b*.u*.c1.weight cast dtype=f32
aenc.b*.u*.c2.weight cast dtype=f32
aenc.cin.weight cast dtype=f32
aenc.fin.weight cast dtype=f32
venc.l*.b*.c1w cast dtype=bf16
venc.l*.b*.c2w cast dtype=bf16
venc.l*.dnw cast dtype=bf16
venc.cout.weight cast dtype=bf16
ups.embed.* cast dtype=f32
ups.*.emb_layers.* cast dtype=f32
The upscaler is the companion folder latent_upscaler/ of the pipeline directory (its
minimax_h3_latent_upscaler_3d_conv_v1/config.json and bf16 weights, renamed
diffusion_pytorch_model.safetensors); it converts with the rest.
License
FastH3 8-Step V2 is a modified MiniMax H3 model from the FastVideo team, and MiniMax H3 is licensed
under the MiniMax H3 Community License Agreement, Copyright Β© 2026 MiniMax (LICENSE in this
repository; NOTICE carries its notice and FastVideo's). The agreement grants its rights only within
its Applicable Territory: worldwide except the European Union, the United Kingdom, the Republic of
Korea and the United States of America, where it does not license using, reproducing or
distributing the model or this file. Its use restrictions and Acceptable Use Policy (Exhibit A of
LICENSE) apply to everyone who downloads or uses this file, and to anyone it is passed on to.
This container is a modified copy of FastVideo-FastH3-8-Step-V2: the linears named above are
re-encoded as int8, the video decoder's linears cast from f32 to bf16, the audio decoder's weight
norms folded, the text encoder's last 14 layers (which the model does not read) left out, and
everything repacked into one .rad file. The text encoder is Qwen3-VL-32B, licensed under the
Apache License 2.0 (LICENSE-Qwen3-VL). The latent upscaler is LBH-123-AI's
Minimax_h3_latent_Upscaler v1, licensed under the Apache License 2.0 (LICENSE-latent-upscaler);
its weights are included as published, its embedding MLP cast from bf16 to f32.
Model tree for StillDeadcode/fasth3-8-step-v2-i8
Base model
MiniMaxAI/MiniMax-H3