Documentation Index
Fetch the complete documentation index at: https://docs-model.skyengine.com.cn/llms.txt
Use this file to discover all available pages before exploring further.
Veo-3 视频生成示例
以下示例展示如何使用 Veo-3模型生成高质量的视频内容。Veo-3是Google最新的视频生成模型,支持高分辨率、长时长的视频生成。
快速开始
# 1. 提交视频生成任务
curl -X POST "https://model-api.skyengine.com.cn/v1beta/models/veo-3.0-generate-001:predictLongRunning" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API-KEY>" \
-d '{
"instances": [
{
"prompt": "一个年轻的渔夫在海边举着一条大鱼,阳光明媚,背景是蔚蓝的大海和晴朗的天空"
}
],
"parameters": {
"aspectRatio": "16:9",
"durationSeconds": 4,
"enhancePrompt": true,
"resolution": "720p",
"sampleCount": 1,
"seed": 12345,
"compressionQuality": "OPTIMIZED"
}
}'
# 2. 查询任务状态(使用返回的 name 字段作为完整路径)
# name 格式: projects/{project}/locations/{location}/publishers/{publisher}/models/{model}/operations/{operation_id}
curl -X GET "https://model-api.skyengine.com.cn/v1beta/{name}" \
-H "Authorization: Bearer <API-KEY>"
支持的参数
Instance 参数
| 参数 | 说明 | 版本限制 |
|---|
prompt | 文本描述,支持音频提示词(对话、音效、环境音) | 所有版本 |
image | 首帧动画,将静态图片作为视频起点 | 所有版本 |
lastFrame | 结束帧插值,定义视频最后一帧 | Veo 3.1+ |
video | 源视频扩展,延长已有视频(最长20次) | Veo 3.1/Fast(Lite不支持) |
referenceImages | 参考图片数组,引导内容风格(最多3张) | Veo 3.1 only |
Configuration 参数
- aspectRatio: 视频宽高比(“16:9” 默认、“9:16”)
- durationSeconds: 视频时长(4、6、8秒)。使用1080p/4k、扩展或参考图片时必须为8秒
- resolution: 视频分辨率(“720p” 默认、“1080p”、“4k”)。4k不支持Lite版本;扩展功能仅支持720p
- sampleCount: 生成视频数量(1-4)
- seed: 随机种子(0-4,294,967,295),用于可重复生成
- enhancePrompt: 是否使用 Gemini 优化提示词(默认true,建议保持)
- generateAudio: 是否生成音频(true/false)。Veo 3 特色,支持同步对话和音效
- negativePrompt: 负向提示词,描述不希望出现的内容
- compressionQuality: 压缩质量(“optimized” 默认、“lossless”)
- personGeneration: 人物生成控制。文生视频和扩展支持”allow_all”,图生视频、插帧和参考图片仅支持”allow_adult”
音频提示词示例
Veo 3 支持在 prompt 中描述音频内容:
{
"prompt": "一位年轻女性在海边笑着说:'今天天气真好!',海浪声作为背景音"
}
各版本功能差异
| 功能 | Veo 3.1 | Veo 3.1 Fast | Veo 3.1 Lite | Veo 3 | Veo 2 |
|---|
| 视频扩展 | ✓ | ✓ | ❌ | ✓ | ✓ |
| 首尾帧插值 | ✓ | ✓ | ✓ | ✓ | ❌ |
| 多参考图片 | ✓ | ✓ | ❌ | ❌ | ❌ |
| 4K分辨率 | ✓ | ✓ | ❌ | ❌ | ❌ |
| 原生音频 | ✓ | ✓ | ✓ | ✓ | ❌ |
图片参考生成
Veo 支持多种图片参考方式来引导视频生成:
图片参数类型
| 参数 | 说明 | 限制 |
|---|
image | 首帧动画 - 将静态图片作为视频起点 | 支持各种时长 |
lastFrame | 结束帧插值 - 定义视频最后一帧 | 必须配合 image 使用,时长必须为8秒 |
referenceImages | 参考图数组 - 引导视频内容和风格 | 最多3张,时长必须为8秒,仅支持16:9和720p |
referenceType 可选值:
ASSET - 提供资产(场景、物体、角色等),视频会参考图片中的内容
STYLE - 提供风格(颜色、光照、纹理等),视频会参考图片的视觉风格
重要限制:ASSET 和 STYLE 不能在同一请求中同时使用,只能选择一种类型。
多参考图片示例
使用 referenceImages 参数可以传入最多 3 张参考图片来引导视频生成的风格和内容:
# 多参考图片功能建议使用 veo-3.1-generate-001
curl -X POST "https://model-api.skyengine.com.cn/v1beta/models/veo-3.1-generate-001:predictLongRunning" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API-KEY>" \
-d '{
"instances": [
{
"prompt": "一只小猫在花园里玩耍,保持参考图片的风格和氛围",
"referenceImages": [
{
"image": {
"bytesBase64Encoded": "<BASE64_IMAGE_1>",
"mimeType": "image/jpeg"
},
"referenceType": "ASSET"
},
{
"image": {
"bytesBase64Encoded": "<BASE64_IMAGE_2>",
"mimeType": "image/jpeg"
},
"referenceType": "ASSET"
}
]
}
],
"parameters": {
"aspectRatio": "16:9",
"durationSeconds": 8,
"resolution": "720p",
"enhancePrompt": true
}
}'
首尾帧插值示例
使用 image(首帧)和 lastFrame(尾帧)参数可以精确控制视频的开始和结束画面:
# 步骤1: 提交首尾帧插值任务
curl -X POST "https://model-api.skyengine.com.cn/v1beta/models/veo-3.1-generate-001:predictLongRunning" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API-KEY>" \
-d '{
"instances": [
{
"prompt": "镜头从海边日出缓缓过渡到日落,描绘一天的时间流逝",
"image": {
"bytesBase64Encoded": "<BASE64_FIRST_FRAME>",
"mimeType": "image/png"
},
"lastFrame": {
"bytesBase64Encoded": "<BASE64_LAST_FRAME>",
"mimeType": "image/png"
}
}
],
"parameters": {
"aspectRatio": "16:9",
"durationSeconds": 8,
"resolution": "720p",
"enhancePrompt": true
}
}'
# 步骤2: 轮询任务状态(使用返回的 name 字段)
# 返回示例: {"name": "projects/xxx/locations/global/publishers/google/models/veo-3.1-generate-001/operations/abc123"}
curl -X GET "https://model-api.skyengine.com.cn/v1beta/{name}" \
-H "Authorization: Bearer <API-KEY>"
# 返回示例: {"name": "projects/xxx/locations/us-central1/operations/abc123"}
curl -X GET "https://model-api.skyengine.com.cn/v1beta/projects/xxx/locations/us-central1/operations/abc123" \
-H "Authorization: Bearer <API-KEY>"
# 步骤3: 当 done=true 时,从 response.generatedVideos[0].video 中获取视频数据
轮询接口说明
路径格式:
GET /v1beta/projects/{project}/locations/{location}/publishers/{publisher}/models/{model}/operations/{operation_id}
注意:提交任务返回的 name 字段即为完整的轮询路径,可直接使用。
| 步骤 | 接口 | 说明 |
|---|
| 提交任务 | POST /v1beta/models/{model}:predictLongRunning | 需要 Content-Type: application/json |
| 查询状态 | GET /v1beta/{name} | 不需要 Content-Type 头,仅需 Authorization |
| 获取视频 | 从状态响应的 response.generatedVideos 中提取 | 支持 uri 或 videoBytes (base64) |
重要提示:GET 查询请求不要带 Content-Type: application/json 头,否则会导致错误 2005 “parse request param fail”。
# 正确的请求头配置
headers_post = {
'Authorization': 'Bearer <API-KEY>',
'Content-Type': 'application/json' # POST 提交任务需要
}
headers_get = {
'Authorization': 'Bearer <API-KEY>' # GET 查询状态不需要 Content-Type
}
建议轮询间隔: 15秒,视频生成通常需要 30秒-5分钟。
图片参考使用限制
| 功能 | durationSeconds | aspectRatio | resolution |
|---|
| 文本生成视频 | 4, 6, 8 | 16:9, 9:16 | 720p, 1080p |
| 首帧动画 (image) | 4, 6, 8 | 16:9, 9:16 | 720p, 1080p |
| 首尾帧插值 (image + lastFrame) | 仅 8 | 16:9, 9:16 | 720p, 1080p |
| 多参考图片 (referenceImages) | 仅 8 | 仅 16:9 | 仅 720p |
视频生成流程
- 提交任务: 发送predictLongRunning请求,获得操作名称
- 等待处理: 轮询操作状态直到完成
- 下载视频: 从响应中提取视频数据并保存
响应示例
任务提交响应
{
"name": "projects/gcp-quwan-gemini/locations/us-central1/publishers/google/models/veo-3.0-generate-001/operations/2cd6428a-24c4-4a35-be15-65b62861c2ba"
}
状态查询响应(进行中)
{
"name": "projects/gcp-quwan-gemini/locations/us-central1/publishers/google/models/veo-3.0-generate-001/operations/2cd6428a-24c4-4a35-be15-65b62861c2ba",
"done": false
}
状态查询响应(完成)
{
"done": true,
"name": "projects/gcp-quwan-gemini/locations/us-central1/publishers/google/models/veo-3.0-generate-001/operations/2cd6428a-24c4-4a35-be15-65b62861c2ba",
"response": {
"generatedVideos": [
{
"video": {
"mimeType": "video/mp4",
"uri": "https://example.com/video.mp4",
"videoBytes": "<base64>"
}
}
]
}
}