vidu/参考图生视频

viduq2 Reference2Video 参考生视频模型 API 调用文档(Hugo版)

本文介绍 viduq2 模型 Reference2Video(参考生视频)模式的核心 API(异步提交任务、查询任务状态),详细说明接口的请求地址、两种输入方式(正常输入、兼容旧接口输入)的参数、调用示例、注意事项及响应说明,供接口调用时查阅参考。

1. 认证方式

所有接口均采用 API Key 认证,统一使用 Authorization 请求头,格式如下:

Authorization: \<YOUR\_API\_KEY\>

说明:将 \<YOUR\_API\_KEY\> 替换为您实际的 API Key 即可完成认证,确保接口调用权限。

2. 异步提交任务接口

该接口用于提交 viduq2 模型 Reference2Video 模式异步任务,支持两种输入方式(正常输入、兼容旧接口输入),需传入模型名称、接口类型、核心输入参数等,可配置视频时长、分辨率等辅助参数,提交成功后返回任务唯一标识及请求唯一标识,后续可通过任务标识查询任务状态及视频生成结果。

2.1 接口地址

https://api.modelverse.cn/v1/tasks/submit

2.2 输入参数(正常输入)

参数 类型 是否必选 描述
model string 模型名称,可选值:viduq2
input.prompt string 文本提示词,用于指导视频生成,最长支持 2000 字符
input.subjects []object 图片主体信息,支持 1-7 个主体
input.subjects.id string 主体id,后续生成视频时可通过 @主体id 的方式使用该主体
input.subjects.images []string 该主体对应的图片url,每个主体最多支持3张图片;支持传入图片 Base64 编码或图片URL(确保可访问)
input.subjects.voice_id string 音色id,用来决定视频中的声音音色,为空时系统会自动推荐,可选枚举值参考新音色列表
parameters.vidu_type string Vidu 接口类型,此处固定为 reference2video
parameters.duration int 视频时长参数,默认值依据模型而定:viduq2 模型默认5秒,可选范围:1-10秒
parameters.seed int 随机种子,默认值为 0,0 表示使用随机数
parameters.aspect_ratio string 长宽比,可选值:16:9、9:16、4:3、3:4、1:1,默认值为 16:9;注:4:3、3:4 仅支持 q2 模型
parameters.resolution string 分辨率参数,默认值依据模型和视频时长而定:viduq2 模型(1-8秒)默认 720p,可选值:540p、720p、1080p
parameters.movement_amplitude string 运动幅度,可选值:auto、small、medium、large,默认值为 auto;注:q2 模型不支持该参数
parameters.bgm bool 是否添加背景音乐,默认值为 false
parameters.audio bool 是否使用音视频直出能力,默认值为 false,可选值:true、false;- true:使用音视频直出能力- false:不使用音视频直出能力

2.3 正常输入请求示例(curl)

如果您使用 Windows 系统,建议使用 Postman 或其他 API 调用工具,避免命令行调用出现兼容问题。

curl --location --globoff 'https://api.modelverse.cn/v1/tasks/submit' \
--header 'Authorization: <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
    "model": "viduq2",
    "input": {
      "prompt": "让@1与@2一起跑步,一起喊加油",
      "subjects": [
      {
        "id": "1",
        "images" : ["https://umodelverse-inference.cn-wlcb.ufileos.com/ucloud-maxcot.jpg"],
        "voice_id":""
      },
      {
        "id": "2",
        "images" : ["https://umodelverse-inference.cn-wlcb.ufileos.com/ucloud-maxcot.jpg"],
        "voice_id":""
      }
      ]
    },
    "parameters": {
      "vidu_type": "reference2video",
      "duration": 5,
      "aspect_ratio": "16:9",
      "resolution": "720p",
      "movement_amplitude": "auto",
      "bgm": false,
      "audio": true
    }
  }'

2.4 输入参数(兼容旧接口输入)

参数 类型 是否必选 描述
model string 模型名称,可选值:viduq2
input.images []string 参考图像数组,viduq2 模型支持 1-7 张,支持图片 URL 或 Base64 编码
input.prompt string 文本提示词,用于指导视频生成,最长支持 2000 字符
parameters.vidu_type string Vidu 接口类型,此处固定为 reference2video
parameters.duration int 视频时长参数,默认值依据模型而定:viduq2 模型默认5秒,可选范围:1-10秒
parameters.seed int 随机种子,默认值为 0,0 表示使用随机数
parameters.aspect_ratio string 长宽比,可选值:16:9、9:16、4:3、3:4、1:1,默认值为 16:9;注:4:3、3:4 仅支持 q2 模型
parameters.resolution string 分辨率参数,默认值依据模型和视频时长而定:viduq2 模型(1-8秒)默认 720p,可选值:540p、720p、1080p
parameters.movement_amplitude string 运动幅度,可选值:auto、small、medium、large,默认值为 auto;注:q2 模型不支持该参数
parameters.bgm bool 是否添加背景音乐,默认值为 false

2.5 兼容旧接口输入请求示例(curl)

如果您使用 Windows 系统,建议使用 Postman 或其他 API 调用工具,避免命令行调用出现兼容问题。

curl --location --globoff 'https://api.modelverse.cn/v1/tasks/submit' \
--header 'Authorization: <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
    "model": "viduq2",
    "input": {
      "images": [
        "https://umodelverse-inference.cn-wlcb.ufileos.com/ucloud-maxcot.jpg"
      ],
      "prompt": "make it dance."
    },
    "parameters": {
      "vidu_type": "reference2video",
      "duration": 5,
      "aspect_ratio": "16:9",
      "resolution": "720p",
      "movement_amplitude": "auto",
      "bgm": true
    }
  }'

2.6 调用注意事项

图片相关要求: 1. viduq2 模型支持 1-7 张参考图片 2. 模型将以参考图片中的主题为参考,生成具备主体一致的视频 3. 图片支持 png、jpeg、jpg、webp 格式 4. 图片像素不能小于 128×128 5. 图片比例需要小于 1:4 或者 4:1 6. 图片大小不超过 50 MB 7. Base64 编码格式示例:data:image/png;base64,{base64_encode}

2.7 输出参数

参数 类型 描述
output.task_id string 异步任务的唯一标识,用于后续查询任务状态及获取生成结果
request_id string 本次请求的唯一标识,用于问题排查时定位具体请求记录

2.8 响应示例

{
  "output": {
    "task_id": "task_id"
  },
  "request_id": "request_id"
}

3. 查询任务状态接口

该接口用于查询已提交异步任务的执行状态、视频生成结果、任务耗时及相关信息,需传入异步提交任务时返回的 task_id 作为查询标识,根据任务状态返回对应信息(成功返回视频URL,失败返回错误信息)。

3.1 接口地址

https://api.modelverse.cn/v1/tasks/status?task_id=<task_id>

说明:将 \&lt;task\_id\&gt; 替换为异步提交任务接口返回的实际 task_id,即可发起查询。

3.2 输入参数

输入参数通过 URL 路径参数传递,具体说明如下:

参数 类型 是否必选 描述
task_id string 异步任务的唯一标识,由异步提交任务接口返回,用于定位查询具体任务

3.3 请求示例(curl)

curl --location 'https://api.modelverse.cn/v1/tasks/status?task_id=<task_id>' \
--header 'Authorization: <YOUR_API_KEY>'

3.4 输出参数

参数 类型 描述
output.task_id string 异步任务的唯一标识,与查询时传入的 task_id 一致
output.task_status string 任务状态,可选值:Pending(待处理)、Running(执行中)、Success(成功)、Failure(失败)
output.urls array 视频结果的 URL 列表,仅当 task_status 为 Success 时返回,可通过该 URL 下载生成的视频
output.submit_time integer 任务提交时间戳(单位:秒)
output.finish_time integer 任务完成时间戳(单位:秒),仅当 task_status 为 Success 或 Failure 时返回
output.error_message string 任务失败时返回的错误信息,仅当 task_status 为 Failure 时返回,用于排查失败原因
usage.duration integer 视频时长(秒)
request_id string 本次查询请求的唯一标识,用于问题排查时定位具体查询记录

3.5 响应示例

3.5.1 成功响应示例

{
  "output": {
    "task_id": "task_id",
    "task_status": "Success",
    "urls": ["https://xxxxx/xxxx.mp4"],
    "submit_time": 1756959000,
    "finish_time": 1756959050
  },
  "usage": {
    "duration": 5
  },
  "request_id": ""
}

3.5.2 失败响应示例

{
  "output": {
    "task_id": "task_id",
    "task_status": "Failure",
    "submit_time": 1756959000,
    "finish_time": 1756959019,
    "error_message": "error_message"
  },
  "usage": {
    "duration": 5
  },
  "request_id": ""
}