这项功能能做什么

把场景描述生成一段带音频的视频。例如,描述雨后屋顶上的猫、跟随镜头和环境雨声。Veo 3.1 标准版与 Fast 的输入格式一致;Fast 要填写完整模型名 veo-3.1-fast-generate-preview。

第一步:鉴权

请求头使用 Authorization: Bearer YOUR_API_KEY。将占位符替换为青云 API Key,保留 Bearer 后的空格。鉴权随创建、查询和下载请求发送,无需先登录 API。

第二步:调用模型生成

POST https://top.qingyuntop.ai/v1/responses

请求头还需 Content-Type: application/json。后台创建返回顶层 id(resp_…),随后按查询结果与下载视频等待完成并保存视频。

请求参数

参数类型必填详细说明
modelstring是完整 Veo 模型 ID;示例使用 veo-3.1-generate-preview
inputstring 或 array文生视频需要建议使用字符串。描述主体、动作、环境、镜头和声音;数组写法见图生视频页
backgroundboolean否默认 false;设为 true 且 stream 为 false 时,提交后返回任务快照
streamboolean否默认 false;true 返回 SSE,详见模式页
secondsinteger建议填写Veo 3.1 使用 4、6 或 8;高清 1080p、4k 必须为 8
metadataobject否Veo 生成选项。用于控制生成效果,不用于存放任意业务标签
metadata.resolutionstring建议填写720p、1080p、4k;首次接入建议 720p
metadata.aspectRatiostring建议填写16:9 横屏或 9:16 竖屏
metadata.personGenerationstring否人物生成规则;Veo 3.1 文生通常为 allow_all,部分地区限制为 allow_adult,以上游模型和服务地区为准
metadata.seedinteger否随机种子,有助于相似结果,不保证完全可复现
sizestring否例如 1280x720;仅在 metadata 对应字段缺省时推断清晰度和比例,建议直接填写 metadata

省略清晰度和比例时由上游默认值决定,Google 3.1 通常为 720p、16:9。不要同时传入冲突的参数。本入口还接受 duration 作为 seconds 的别名(seconds 优先),接受 prompt 作为 input 文本为空时的备用值。Responses 的顶层 resolution 会覆盖 metadata.resolution;统一视频接口没有相同的转发行为,因此本目录统一把它放在 metadata 中。

本入口不使用 tools、previous_response_id、instructions、temperature、max_output_tokens 来控制视频。请直接使用 input 和上述视频字段;metadata 也不能用于放置 referenceImages、lastFrame 或视频延长输入。

代码示例

点击标签切换语言。cURL 为 Bash 写法;Python 需安装 requests;Node.js 使用 22+,保存为 .mjs。示例会创建一个真实视频任务。

curl --fail-with-body https://top.qingyuntop.ai/v1/responses \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "veo-3.1-generate-preview",
    "input": "An orange cat walks across a wet rooftop after rain. Slow tracking shot, soft evening light, gentle rain sounds.",
    "seconds": 8,
    "metadata": {"resolution": "720p", "aspectRatio": "16:9"},
    "background": true,
    "stream": false
  }'

创建响应

以下为关键字段示意,实际响应还会包含其他字段。初次状态也可能已进入 in_progress。

{
  "id": "resp_veo_example",
  "object": "response",
  "model": "veo-3.1-generate-preview",
  "status": "queued",
  "background": true,
  "output": [],
  "error": null,
  "metadata": {
    "task_id": "task_veo_example",
    "task_status": "queued",
    "retrieval_path": "/v1/responses/resp_veo_example"
  }
}

保存 id 和 metadata.task_id。HTTP 200 不是视频完成的标志;继续查询结果与下载视频。创建超时且未收到 ID 时,先检查控制台任务日志,避免重复提交。