Veo 是支援影片產生的模型名稱。Veo 會根據您提供的文字提示或圖片提示生成影片。
如要在控制台中探索這個模型,請參閱 Model Garden 中的 Video Generation
模型資訊卡。
在 Vertex AI (Vertex AI Studio) 上試用 Veo
支援的型號
Veo API 支援下列型號:
HTTP 要求
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION}-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:predictLongRunning \
-d '{
"instances": [
{
"prompt": string,
// Optional. An image to guide video generation.
"image": {
// Union field can be only one of the following:
"bytesBase64Encoded": string,
"gcsUri": string,
// End of list of possible types for union field.
"mimeType": string
}
}
],
"parameters": {
"aspectRatio": string,
"negativePrompt": string,
"personGeneration": string,
"sampleCount": integer,
"seed": uint32,
"storageUri": string,
"durationSeconds": integer,
"enhancePrompt": boolean
}
}'
請為 Veo 型號使用下列參數。詳情請參閱「使用 Veo 以文字和圖片提示生成影片」。
參數 | |
---|---|
|
文字轉換成影片功能需要使用這項參數。 用於引導影片前八秒的文字字串。例如:
|
|
這是圖片轉換成影片的必要權限。 用於引導影片生成作業的輸入圖片。建議使用 1280 x 720 像素或 720 x 1280 像素的圖片。 可以是下列其中一項:
如果圖片的顯示比例不同,系統會使用中心裁剪工具裁剪圖片。 如果圖片的顯示比例相同,但解析度較大,系統會調整圖片大小。 |
durationSeconds |
這是必要旗標,要產生的影片檔長度。
可接受的整數值為 |
negativePrompt |
(非必要) 文字字串,描述您希望模型避免產生的任何內容。例如:
|
enhancePrompt |
(非必要) 使用 Gemini 提升提示功能。可接受的值為 |
seed |
(非必要) 請求的數字,用於產生確定性的影片。如果在要求中加入種子編號,但不變更其他參數,模型就會產生相同的影片。
可接受的範圍為 |
storageURI |
(非必要) 儲存輸出影片的 Cloud Storage 值區 URI,格式為 |
sampleCount |
(非必要) 要求的輸出圖片數量。可接受的值為 |
aspectRatio |
(非必要) 定義產生影片的顯示比例。下列任一項:
|
personGeneration |
(非必要) 安全性設定,用於控制是否允許產生人物或臉孔。下列任一項:
|
generateAudio |
|
要求範例
請使用下列要求,傳送文字轉影片要求或圖片轉影片要求:
文字轉影片生成要求
REST
如要使用 Vertex AI Veo API 測試文字提示,請將 POST 要求傳送至發布者模型端點。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID。
- MODEL_ID:要使用的模型 ID。可用值:
veo-2.0-generate-001
(Google Analytics 許可清單)veo-3.0-generate-preview
(預先發布版)
- TEXT_PROMPT:用於引導影片產生的文字提示。
- OUTPUT_STORAGE_URI:選用:用於儲存輸出影片的 Cloud Storage 值區。如果未提供,系統會在回應中傳回影片位元組。例如:
gs://video-bucket/output/
。 - RESPONSE_COUNT:您要產生的影片檔案數量。可接受的整數值:1 到 4。
- DURATION:您要產生的影片檔案長度。可接受的整數值為 5 到 8。
-
其他選用參數
請根據用途使用下列選用變數。在
"parameters": {}
物件中新增下列部分或所有參數。"parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
- ASPECT_RATIO:字串。(非必要) 定義產生的影片顯示比例。值:
16:9
(預設值,橫向) 或9:16
(直向)。 - NEGATIVE_PROMPT:字串。(非必要) 文字字串,說明您希望模型避免產生哪些內容。
- PERSON_SAFETY_SETTING:字串。(非必要) 安全性設定,用於控制是否允許人物或臉孔生成功能。值:
allow_adult
(預設值):只允許產生成人內容。disallow
:禁止圖片中出現人物或臉孔。
- RESPONSE_COUNT:int。選填。要求的輸出圖片數量。值:
1
-4
。 - SEED_NUMBER:uint32。(非必要) 用於讓系統產生的影片具備確定性的數字。在要求中指定種子數字,而不變更其他參數,可引導模型產生相同的影片。值:
0
-4294967295
。
- ASPECT_RATIO:字串。(非必要) 定義產生的影片顯示比例。值:
HTTP 方法和網址:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning
JSON 要求主體:
{ "instances": [ { "prompt": "TEXT_PROMPT" } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": "RESPONSE_COUNT" } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning" | Select-Object -Expand Content
{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }
圖片轉影片生成要求
REST
如要使用 Vertex AI Veo API 測試文字提示,請將 POST 要求傳送至發布者模型端點。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID。
- MODEL_ID:要使用的模型 ID。可用值:
veo-2.0-generate-001
(Google Analytics 許可清單)veo-3.0-generate-preview
(預先發布版)
- TEXT_PROMPT:用於引導影片產生的文字提示。
- INPUT_IMAGE:代表輸入圖片的 Base64 編碼位元組字串。為確保品質,輸入圖片應為 720p 以上 (1280 x 720 像素),且顯示比例為 16:9 或 9:16。上傳過程中,其他顯示比例或大小的圖片可能會調整大小或以中心裁剪。
- MIME_TYPE:輸入圖片的 MIME 類型。系統僅支援下列 MIME 類型的圖片:
image/jpeg
或image/png
。 - OUTPUT_STORAGE_URI:選用:用於儲存輸出影片的 Cloud Storage 值區。如果未提供,系統會在回應中傳回影片位元組。例如:
gs://video-bucket/output/
。 - RESPONSE_COUNT:您要產生的影片檔案數量。可接受的整數值:1 到 4。
- DURATION:您要產生的影片檔案長度。可接受的整數值為 5 到 8。
-
其他選用參數
請根據用途使用下列選用變數。在
"parameters": {}
物件中新增下列部分或所有參數。"parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
- ASPECT_RATIO:字串。(非必要) 定義產生的影片顯示比例。值:
16:9
(預設值,橫向) 或9:16
(直向)。 - NEGATIVE_PROMPT:字串。(非必要) 文字字串,說明您希望模型避免產生哪些內容。
- PERSON_SAFETY_SETTING:字串。(非必要) 安全性設定,用於控制是否允許人物或臉孔生成功能。值:
allow_adult
(預設值):只允許產生成人內容。disallow
:禁止圖片中出現人物或臉孔。
- RESPONSE_COUNT:int。選填。要求的輸出圖片數量。值:
1
-4
。 - SEED_NUMBER:uint32。(非必要) 用於讓系統產生的影片具備確定性的數字。在要求中指定種子數字,而不變更其他參數,可引導模型產生相同的影片。值:
0
-4294967295
。
- ASPECT_RATIO:字串。(非必要) 定義產生的影片顯示比例。值:
HTTP 方法和網址:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning
JSON 要求主體:
{ "instances": [ { "prompt": "TEXT_PROMPT", "image": { "bytesBase64Encoded": "INPUT_IMAGE", "mimeType": "MIME_TYPE" } } ], "parameters": { "storageUri": "OUTPUT_STORAGE_URI", "sampleCount": RESPONSE_COUNT } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:predictLongRunning" | Select-Object -Expand Content
{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }
輪詢影片產生長時間執行作業的狀態
檢查影片產生長時間執行作業的狀態。
REST
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID:您的 Google Cloud 專案 ID。
- MODEL_ID:要使用的模型 ID。可用值:
veo-2.0-generate-001
(Google Analytics 許可清單)veo-3.0-generate-preview
(預先發布版)
- OPERATION_ID:原始產生影片要求中傳回的專屬作業 ID。
HTTP 方法和網址:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation
JSON 要求主體:
{ "operationName": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID" }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation"
PowerShell
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID:fetchPredictOperation" | Select-Object -Expand Content
回應主體 (產生影片要求)
傳送文字轉影片或圖片轉影片要求時,系統會傳回以下回應:
{
"name": string
}
回應元素 | 說明 |
---|---|
name |
在傳送影片產生要求後開始的長期執行作業的全名。 |
回應範例 (產生影片要求)
{
"name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID"
}
回應主體 (輪詢長時間執行的作業)
輪詢原始影片產生長時間執行作業的狀態時,會傳回以下回應:
{
"name": string,
"done": boolean,
"response":{
"@type":"type.googleapis.com/cloud.ai.large_models.vision.GenerateVideoResponse",
"generatedSamples":[
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
{
"video":
{
"uri": string,
"encoding": string
}
},
]
}
}
回應元素 | 說明 |
---|---|
name |
在傳送影片產生要求後開始的長期執行作業的完整作業名稱。 |
done |
表示作業是否完成的布林值。 |
response |
長時間執行作業的回應主體。 |
generatedSamples |
產生的影片樣本物件陣列。 |
video |
生成的影片。 |
uri |
產生影片的 Cloud Storage URI。 |
encoding |
影片編碼類型。 |
回應範例 (輪詢長時間執行作業)
{
"name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_ID",
"done":true,
"response":{
"@type":"type.googleapis.com/cloud.ai.large_models.vision.GenerateVideoResponse",
"generatedSamples":[
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_0.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_1.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_2.mp4",
"encoding":"video/mp4"
}
},
{
"video":{
"uri":"gs://STORAGE_BUCKET/TIMESTAMPED_SUBDIRECTORY/sample_3.mp4",
"encoding":"video/mp4"
}
}
]
}
}
更多資訊
- 如要進一步瞭解如何在 Vertex AI 上使用 Veo,請參閱「使用 Veo 搭配文字和圖片提示產生影片」。
後續步驟
- 請參閱 Google DeepMind 提供的 Veo 模型相關資訊。
- 請參閱網誌文章「Veo 和 Imagen 3:Vertex AI 推出新的影片和圖片生成模型」。
- 請參閱網誌文章「新推出的生成式媒體模型和工具,由創作者與創作者合作開發」。