Skip to content

图生视频任务 ​

使用本接口输入图片及文本内容,创建视频生成任务。

接口地址 ​

http
POST /minimax/v1/video_generation

认证 ​

方式说明
Bearer Token在请求头中携带 Authorization: Bearer <API_key> 用于验证账户信息。

请求头 ​

参数名类型必填说明
Content-Typestring是请求体的媒介类型,请设置为 application/json
Authorizationstring是Bearer API_key,用于验证账户信息

请求体 ​

参数名类型必填默认值说明
modelstring是-模型名称。可用值:MiniMax-Hailuo-2.3, MiniMax-Hailuo-2.3-Fast, MiniMax-Hailuo-02, I2V-01-Director, I2V-01-live, I2V-01
first_frame_imagestring是-将指定图片作为视频的起始帧。支持公网 URL 或 Base64 编码的 Data URL (data:image/jpeg;base64,...)
promptstring否-视频的文本描述,最大 2000 字符。支持使用 [指令] 语法进行运镜控制
prompt_optimizerboolean否true是否自动优化 prompt。设为 false 可进行更精确的控制
fast_pretreatmentboolean否false是否缩短 prompt_optimizer 的优化耗时。仅对 MiniMax-Hailuo-2.3 模型生效
durationinteger否6视频时长(秒),可用值与模型和分辨率相关(详见下方说明)
resolutionstring否768P视频分辨率,可选 768P、1080P(详见下方说明)
callback_urlstring否-接收任务状态更新通知的回调 URL(详见下方说明)
aigc_watermarkboolean否false是否在生成的视频中添加水印

图片要求 ​

first_frame_image 参数需满足以下条件:

  • 格式:JPG, JPEG, PNG, WebP
  • 体积:小于 20MB
  • 尺寸:短边像素大于 300px,长宽比在 2:5 和 5:2 之间

运镜指令 ​

在 prompt 中可通过 [指令] 格式添加运镜指令,实现精确的镜头控制。

支持 15 种运镜指令:

类别指令
左右移[左移], [右移]
左右摇[左摇], [右摇]
推拉[推进], [拉远]
升降[上升], [下降]
上下摇[上摇], [下摇]
变焦[变焦推近], [变焦拉远]
其他[晃动], [跟随], [固定]

使用规则:

  • 组合运镜:同一组 [] 内的多个指令会同时生效,如 [左摇,上升],建议组合不超过 3 个
  • 顺序运镜:prompt 中前后出现的指令会依次生效,如 ...[推进], 然后...[拉远]
  • 自然语言:也支持通过自然语言描述运镜,但使用标准指令能获得更准确的响应

时长可用值 ​

模型720P768P1080P
MiniMax-Hailuo-2.3-6 或 106

分辨率可用值 ​

模型6s10s
MiniMax-Hailuo-2.3768P(默认), 1080P768P(默认)

callback_url 说明 ​

支持通过 callback_url 参数配置回调,以接收任务状态的异步通知。

地址验证:配置后,服务器会向 callback_url 发送一个 POST 请求,请求体中包含 challenge 字段。服务端需在 3 秒内原样返回该 challenge 值以完成验证。

状态更新:验证成功后,每当任务状态变更时,会向该 URL 推送最新的任务状态。

回调返回的 status 包括以下状态:

  • processing — 生成中
  • success — 成功
  • failed — 失败
回调验证示例(Python)
python
from fastapi import FastAPI, HTTPException, Request
import json

app = FastAPI()

@app.post("/get_callback")
async def get_callback(request: Request):
    try:
        json_data = await request.json()
        challenge = json_data.get("challenge")
        if challenge is not None:
            # 验证请求,原样返回 challenge
            return {"challenge": challenge}
        else:
            # 状态更新请求,进行相应处理
            return {"status": "success"}
    except Exception as e:
        raise HTTPException(status_code=500, detail=str(e))

if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)

请求示例 ​

bash
curl -X POST "https://neolink.com/api/minimax/v1/video_generation" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <API_key>" \
  -d '{
    "model": "MiniMax-Hailuo-2.3",
    "first_frame_image": "https://cdn.hailuoai.com/prod/2024-09-18-16/user/multi_chat_file/9c0b5c14-ee88-4a5b-b503-4f626f018639.jpeg",
    "prompt": "A mouse runs toward the camera, smiling and blinking.",
    "duration": 6,
    "resolution": "1080P"
  }'

响应体 ​

参数名类型说明
task_idstring视频生成任务的 ID,用于后续查询任务状态
base_resp.status_codeinteger状态码,0 表示请求成功
base_resp.status_msgstring具体错误详情

响应示例 ​

json
{
  "task_id": "106916112212032",
  "base_resp": {
    "status_code": 0,
    "status_msg": "success"
  }
}

错误码 ​

状态码含义
0请求成功
1002触发限流,请稍后再试
1004账号鉴权失败,请检查 API-Key 是否填写正确
1008账号余额不足
1026视频描述涉及敏感内容,请调整
2013传入参数异常,请检查入参是否按要求填写
2049无效的 API Key,请检查 API Key