MiniMax's Hailuo 02 is a cinematic AI video model engineered for high-fidelity content creation and ranked #2 globally on the Artificial Analysis benchmark. Building on a diffusion-transformer architecture, it delivers photorealistic visuals, advanced physics simulation, and director-level controls for professional-grade video production.
Hailuo 02 is optimized for cinematic realism with advanced rendering and user control.
In formal evaluations, Hailuo 02 has achieved high rankings. It secured the #2 global position on the Artificial Analysis benchmark for image-to-video generation. This places it ahead of Google's Veo 3 and just behind Seedance 1.0 from ByteDance. User benchmarks and head-to-head comparisons also suggest Hailuo 02 is a strong contender, with some users claiming it is superior to Veo 3 in performance and realism. While Google's Veo is noted for its motion fluidity, users have reported that Hailuo 02 often produces more cinematic emotion.
Hailuo 02 delivers precise outputs for complex video workflows with a suite of professional tools.
Accessible via AI/ML API. Documentation: available here.
Measured on the AI/ML API gateway across live traffic. Figures are medians unless stated. Last updated 2026-10-12.
import requests, time headers = {"Authorization": "Bearer " + AIMLAPI_KEY} job = requests.post( "https://api.aimlapi.com/v2/video/generations", headers=headers, json={ "model": "minimax/hailuo-02", "prompt": "A serene timelapse of clouds over a mountain range" }, ).json() gid = job["id"] while True: res = requests.get(f"https://api.aimlapi.com/v2/video/generations?generation_id={gid}", headers=headers).json() if res.get("status") in ("completed", "error"): break time.sleep(5) print(res["video"]["url"])
const headers = { Authorization: `Bearer ${process.env.AIMLAPI_KEY}`, "Content-Type": "application/json", }; const job = await (await fetch("https://api.aimlapi.com/v2/video/generations", { method: "POST", headers, body: JSON.stringify({ "model": "minimax/hailuo-02", "prompt": "A serene timelapse of clouds over a mountain range" }), })).json(); let res; do { await new Promise((r) => setTimeout(r, 5000)); res = await (await fetch(`https://api.aimlapi.com/v2/video/generations?generation_id=${job.id}`, { headers })).json(); } while (!["completed", "error"].includes(res.status)); console.log(res.video.url);
# submit the generation — the response contains the job "id" curl -X POST https://api.aimlapi.com/v2/video/generations \ -H "Authorization: Bearer $AIMLAPI_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"minimax/hailuo-02","prompt":"A serene timelapse of clouds over a mountain range"}' # then poll until status is "completed" — video.url holds the result curl "https://api.aimlapi.com/v2/video/generations?generation_id={id}" -H "Authorization: Bearer $AIMLAPI_KEY"
OpenAI-compatible — swap the base URL and it works with your existing SDK.
| Type | Price |
|---|---|
| Output | |
| Model | Input | Output | Context | Best for |
|---|---|---|---|---|
Hailuo 02 This page | Video generation |
Hailuo 02 takes image, text as input and returns video.
Hailuo 02 is priced at $0.728 / 10 sec.
Hailuo 02 is billed per generation — a fixed charge per output rather than by prompt length.
Yes, Hailuo 02 accepts image input as well as a text prompt.
Hailuo 02 was built by Hailuo AI.
Send a request to v2/generate/video/minimax/generation with minimax/hailuo-02 as the model id.
Yes. Hailuo 02 is served through AI/ML API, so the same key and endpoint format used for other models applies.