H3 prompt format
How to write a prompt H3 Max reads the way you meant it. H3 Max is a fine-tune of
MiniMax H3 and reads the same grammar, so this is H3's prompt format as it is; plain H3
is never the model to run (always Max). The grammar has two shapes: image-to-video (a
first frame, no references) and reference-to-video (a first frame plus reference
pictures, optionally a dialogue track). Lip sync uses the image-to-video shape; recast
is its own endpoint and takes free text (h3-max-recast). The request for each mode is
in its own leaf: h3-max-image-to-video, h3-max-dialogue, h3-max-lipsync-a-still,
h3-max-recast. Worked examples, one per mode, are in references/.
How to handle @ names, entrances, subjects not in the frame and reference style is
shared by every video model: guide-animate-a-shot. Never put a person's name or a
handle in the prompt outside a <d> block: H3 renders it as on-screen text.
Image-to-video shape
No reference pictures. The first frame is <Picture 1>. Four parts, joined by blank
lines, the first and last fixed:
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] <the description>
overall_soundscape: <the soundscape>
non_diegetic_music: N/A
Reference-to-video shape
Reference pictures of up to 9 subjects, 9 pictures in all. The first frame has no
label: call it "the provided first frame". Number subjects <Subject 1>, <Subject 2>,
… in list order, and their pictures <Picture 1>, <Picture 2>, … continuously across
subjects (a subject with two pictures takes <Picture 1> and <Picture 2>, the next
starts at <Picture 3>). Never invent, renumber or reuse a label. Six sections, each a
header line then its text:
subject_definitions:
<Subject 1> is the woman in <Picture 1>, rendered in the live-action style of the provided first frame, who appears in it <where and how the frame shows her>.
<Subject 2> is the dog in <Picture 2>, rendered in the live-action style of the provided first frame, who is not in it and enters during the shot.
summary:
[keyframe completion + reference generation] The target video opens exactly on the provided first frame <…one or two sentences, with the labels>.
retention_analysis:
<Subject 1> (appears in [Shot 1]): fully_preserved - the identity and design of <Subject 1> follow <Picture 1>, rendered in the visual style of the provided first frame.
detailed_description:
[Shot 1] <the description>
overall_soundscape:
<the soundscape>
non_diegetic_music:
N/A
subject_definitions: one line per subject, citing every one of its pictures, naming the style in the same words that open[Shot 1], and saying where the frame shows them (from the frame's own content only) or that they enter during the shot.retention_analysis: one line per subject, exactly the pattern above, all its pictures joined with "and".- Cite each subject by its label at every mention in the description. At first appearance follow it with a few plain words ("<Subject 1>, the woman,"); later the label or a pronoun.
- With a dialogue track attached, append to the summary:
Audio 1 is the target video's dialogue track: every <d> line is spoken with the voice, words and timing of Audio 1.
The description
- One shot, opening
[Shot 1], then the visual style ("Live-action, cinematic", "2D-animated", "3D CG", "claymation"), taken from the first frame. Never[Shot 2], a cut or a timestamp. Under 250 words; every detail visible or audible. - Develop forward: the first frame (setting, light, where each subject is) → the action starting → its development → the result. Carry the clothing, colours, props and positions the frame shows the whole way through.
- Camera as a plain action inside a sentence, from: Zoom In/Out, Push In/Pull Out, Pan Left/Right, Truck Left/Right, Tilt Up/Down, Pedestal Up/Down, Arc Shot, Tracking Shot, Static Shot, Shake Slightly/Strongly, POV, Roll Clockwise/Counterclockwise. Add "with small/large amplitude" and "at slow/fast speed" only where it matters: "The camera pushes in with small amplitude at slow speed toward the letter in her hands."
- Big, clear, realistic motion. Text actually visible on screen goes in double quotes, verbatim.
Speakers and <d> blocks
Only for words the person actually wrote.
- Give each speaker an ID
(S1),(S2), … in the order they first speak, kept the same all prompt. Describe the voice outside the block (on- or off-screen, pitch, timbre, pace, accent); inside, only the language tag and the exact words:<Subject 2> (S1), speaking in a warm, easy voice, asks: <d>[English] Got a minute?</d>. A subject who speaks keeps both labels side by side, subject label first. - Every
<d>block has its speaker's(Sn)in the same sentence, right before it. - One block per line, in spoken order, never two speakers merged;
(S1,S2)only when they say the same words at the same time. - Keep every word and punctuation mark. Never translate or reword.
- A delivery verb in the direction carries through: a whisper stays a whisper.
- No exact words: no
(Sn), no<d>, and no speaking verb for anyone (says,talks,explains,chats,asks,mouths, "mid-conversation"). Write the visible gesture instead (pointing, nodding, turning a screen) and state that every person in frame keeps their lips closed. Smiles and laughs stay closed-mouthed and silent.
The soundscape
1 to 4 sentences of real sounds: ambience, the action's sounds, breathing, footsteps, fabric. A quiet scene gets one short sentence. Never a label, never a mood or something only visible, never "no X".
No human voice, ever, even when the description has a <d> block. H3 turns this field
into audio, so these words are banned even as metaphors: voice, vocal, speech,
words, talking, chatter, murmur, conversation, muttering, whisper. Use
hum, hiss, rustle, babble, shuffle, tick: fabric rustles, a fan hums, a
crowd shuffles.
Lip sync and recast
- Lip sync (image-to-video plus
target_audio_url): the image-to-video shape, with the clip's words in a<d>block. The prompt never hears the audio; without the words it says "lips remain closed" and H3 renders a silent face. - Recast (
h3-max-recast): free text, at most 2,000 characters, no labels. Pictures are "reference image 1", "reference image 2" in the order sent. Say who is recast into whom, who is not, and what else stays.
Check it
Before sending, read the assembled prompt for:
- every
<Subject N>in the description, every<Picture N>insubject_definitions; - no label that isn't in your subject list;
- no
@handle or name outside a<d>block; - a
(Sn)before every<d>, and no<d>or speaking verb when no words were given; - no banned word in the soundscape;
- the fixed lines exactly as above.


