Skip to main content
Pika H3 Flex makes a clip’s picture and sound together, from one prompt. Say who or what appears, what happens, how the camera moves, and what the viewer hears. Plain sentences work, and so does the labeled structure below. The model uses your prompt exactly as you send it, without adding text or rewriting it.
Pika publishes its own prompt guidance for H3 Flex, with complete examples. This guide follows it.

Start with text alone

A prompt with no references is a complete request. Write the scene in the order it plays. First set the look and say who is where. Then describe what happens and how it ends. Describe the camera and the sound, and say so if you want silence or no music.
Pika’s own structure for a text-only clip has three fields: integrated_multimodal_description for the picture, action, and synchronized sound, then overall_soundscape and non_diegetic_music. Plain text like the example above works too. state_update.clip_seconds_choices lists the allowed clip lengths, from 5 to 15.083 seconds. Set seconds on enqueue, or read the current default from state_update.clip_seconds. Choose a length that gives every shot time to play out.

Plan shots and cuts

A clip can be one continuous shot or several shots joined by hard cuts.
  • Begin with [Shot 1], with no time.
  • Start each later shot with its cut time, in order and within the clip length, for example [Shot 2] At 00:04.000, cut to ….
  • In each shot, say who appears, where they are, and what they do.
  • Use a cut for new information, such as a new place or angle. For a small change in distance or angle, move the camera instead.
  • For a single take, write one continuous shot. For a fixed view, write The camera remains fixed.
Describe camera moves as plain sentences, with their size and speed: push in, pull out, pan, truck, tilt, orbit, track, or hold. Give the start and end of the move:
A push in moves the camera; a zoom changes the lens.

Add guard lines

A few short lines fix common problems. Add the ones that apply near the end of the prompt: A short style line also helps keep the look steady: the light, the colour, the lens, and the film grain, for example Soft daylight, muted 1970s film tones, fine grain.

Write dialogue and sound

Give each speaker a stable ID such as (S1) or (S2), and put the spoken words in a dialogue tag with their language: <d>[English] It works again.</d>. Describe who speaks and how outside the tag, for example He says in a quiet, raspy voice (S1), <d>[English] It works again.</d>. If you want only the lines you wrote, say so: Only these two lines. Describe sounds where they happen in the shot. Then summarize the whole clip in two short lines:
  • Sound: the ambience, physical sounds, and non-verbal human sounds. Do not repeat the dialogue.
  • Music: the score only the viewer hears, with its instruments, speed, and changes in volume. Write none if there is no score. A radio or band that the characters can hear belongs in the shot description.

First and last frames

Send first_frame_image, last_frame_image, or both to set how a clip opens and ends. Frame images cannot share a clip with references. Describe the action that connects the two frames, and keep it to one continuous shot unless you need a cut. Pika’s prompt for this mode begins with an alignment line, then uses the three text-only fields. In the prompt, a single frame image is <Picture 1>. With both, the first frame is <Picture 1> and the last frame is <Picture 2>. Write the clip’s length with two decimals where the line asks for it. For a first frame only:
For a last frame only, <Picture 1> is the ending image:
For both frames:
The model rebuilds each frame image rather than pasting it, so the first or last frame comes close to the image but is not an exact copy. It center-crops each image to the canvas, so keep the important part of the picture near the middle.

Use the six-field structure

For prompts with references, Pika recommends six fields, in this order: subject_definitions, summary, retention_analysis, detailed_description, overall_soundscape, and non_diegetic_music. The field names are prompt text, not API parameters. Start summary with a task marker: [reference generation] for a new clip from references, or [video continuation] for a clip that continues an earlier one. This example uses two images, a character and a setting:
In retention_analysis, say how much of each subject to keep: These values apply only to the features you defined. If subject_definitions names only a face and hair, a new background does not change whether the subject is fully_preserved.

Name image references

Send up to 9 images in reference_images. In the prompt, <Picture 1> is the first image, <Picture 2> is the second, and so on. Give each image one clear role: a person, an object, a setting, or a style. Then name the details that matter, such as clothing or the layout of a room. State the role firmly:
A <Subject N> label lets later sentences refer back to the person or place from a picture. Use it in the action and camera lines so the model connects them to the right reference. Reference images guide appearance. They are not keyframes, so the clip does not start or end on an exact image; describe the opening and closing moments in the prompt instead. If you reorder the images, their labels change, so update the prompt to match. Use set_canvas to choose the shape of the output. A reference image’s shape does not set the video’s shape.

Use reference videos

Reference videos are experimental. Send up to 3 in reference_videos, each 2 to 15 seconds long and at most 15 seconds together. In the prompt, <Video 1> is the first video, <Video 2> is the second, and so on. Give each video one clear job, such as an action, a camera move, or a setting. Say what to take from it and what to leave out:
A video with sound also takes an audio label, just before its own place. With the default order, one image, one video with sound, and one audio clip are <Picture 1>, <Video 1>, <Audio 1> for the video’s sound, and <Audio 2> for the audio clip. If the video has no sound, the audio clip is <Audio 1>. Use a video without sound if you do not want its soundtrack to guide the clip.

Give audio references a role

Send up to 3 audio clips in reference_audios. Each clip is 2 to 15 seconds long, and together they last at most 15 seconds. The sound of a reference video does not count toward these limits. Without reference videos, <Audio 1> is the first clip, <Audio 2> is the second, and so on. Give each audio clip its own sentence that says whether it is a voice, a sound effect, or music. Tie a voice to the person who uses it:
Put the words you want spoken or sung in the prompt, because a voice reference guides how the voice sounds, not what it says. In the six-field structure, say in retention_analysis how to use each audio clip: These values say what you intend. The model treats audio as guidance, so even fully_copy is not an exact copy of the sample. Listen to each clip before you depend on an exact sound. A request with reference audio must also include a reference image, a reference video, or a latent continuation.

Continue a clip

There are two ways to continue a clip. By default, continue_from_clip_id makes a latent continuation: the last 2.33 seconds of the earlier clip, sound included, guide the start of the new one, so motion, camera, and sound carry across the boundary. Set continue_from_clip_id to a clip that has finished generating. Write a new action for the next clip, and say what stays the same:
A latent continuation still accepts 3 uploaded audio clips. The continued sound takes the next label after all your other audio labels, but it does not use an audio slot: <Audio 1> if you upload no audio, or <Audio 4> if you upload three and no reference video. You can name it in the prompt, for example <Audio 2> continues the piano. The end of the earlier clip counts as one of the 3 reference videos, so you can add at most 2 of your own. For a latent continuation, the model keeps the 8 most recently generated clips. Continue a clip before it expires. Continuation does not give the model long-term scene memory, and over many clips the appearance and story can drift. Restate the important details in each prompt, and add reference images to keep subjects steady.

Continue from the last frame

A frame continuation, continue_mode: "frame", opens the new clip on the last frame of the earlier one. It takes a prompt only, with no references and no frame images. Only the picture carries over, so the sound may restart at the boundary. You can queue it before the earlier clip has finished generating, and you can use any clip in either queue or in queue_update.history. Write it like a first-frame prompt: the earlier clip’s last frame is <Picture 1>.

Keep prompts within the budget

A prompt can have up to 2,048 text tokens, including the labels the model adds for each reference, each frame image, and a continued clip. If a request goes over the budget, enqueue fails with request_rejected, and the reason gives the count and the limit. The model never shortens a prompt for you. Shorten it or remove references, and try again.

Common fixes

See also