h3check¶
h3check is a single-file, dependency-free Python program that reads a MiniMax H3
(Hailuo 3) render request and tells you what is wrong with it before you send it
to a paid endpoint. It ships alongside h3_spec.json, a machine-readable spec sheet
in which every constraint carries the source it came from.
$ h3check validate request.json
FAIL
ERROR 13 reference files exceeds the total cap of 12 - the per-type caps add up to 15, but the total is 12
note duration 10s renders as 243 frames = 10.125s (n=14). The only whole second in range is 8.000s (192 frames).
note hosted cost at 2K: $1.3163 for 10.125 rendered seconds
Nothing in that request is obviously wrong. Nine reference images is exactly the image cap. One clip is well under the clip cap. Three audio files is exactly the audio cap. Each field passes on its own and the combination is rejected, because the per-type caps add up to fifteen and the total cap is twelve.
Why a validator and not a schema¶
Most of what h3check checks could be expressed as JSON Schema. Three classes of
problem could not:
Constraints that only exist as a relationship between fields. The twelve-file total above is one. Reference clip budgets are another: three clips of six seconds each are individually legal and collectively over budget.
Values that are accepted and then silently changed. duration takes any whole number
from 4 to 15, and the renderer snaps it to a frame grid — so a request for 10 seconds is
valid, is accepted, and produces 10.125 seconds of video. A schema validates the request.
It cannot tell you that the file you get back will not be the length you asked for.
See Validation rules for the arithmetic.
Fields that are ignored rather than rejected. generate_audio: false does not
disable audio, because there is no separate audio step to disable. The request succeeds,
you are billed the same, and the flag did nothing. h3check raises this as a warning
rather than an error, for the reason described in
Errors, warnings and notes.
What it covers¶
| Area | Checks |
|---|---|
| Duration | presence, integer type, 4–15 range, frame-grid snap |
| Resolution | presence, membership in 768P / 2K, explicit 1080p and 4K diagnosis |
| Aspect ratio | membership in the six supported ratios |
| Prompt | character ceiling |
| Reference inputs | per-type counts, twelve-file total, per-clip and total second budgets |
| Mode | ref2va with an empty reference set |
| Audio | attempts to switch audio off |
| Cost | hosted price for the duration that actually renders |
Where the numbers come from¶
Every entry in h3_spec.json carries a source field pointing at MiniMax's own API
reference, its pricing page, the Hugging Face model card, or the ComfyUI release notes.
Several of them contradict what the highest-ranking write-ups about this model say, and
where that happens the spec file records the discrepancy in a commonError field so you
can see what you are disagreeing with. The full tables, with each row linked to its
primary source and dated, are published at
minimax-h3ai.video.
If a number here is wrong, open an issue with the source. Corrections are the point of the repository.
Requirements¶
pip install h3check
Python 3.9 or newer. No third-party packages, at runtime or for the tests. The whole tool
is two files — src/h3check/__init__.py and src/h3check/h3_spec.json — so if you would
rather vendor it than depend on it, copy those two side by side into your own project and
run h3check against them.
Disclosure: this project is maintained by the author of minimax-h3ai.video, an independent third-party interface for MiniMax H3. It is not affiliated with, endorsed by, or sponsored by MiniMax.