Vertex AI の Veo では、veo-2.0-generate-exp
で参照画像を使用して、生成された動画のコンテンツと芸術的なスタイルをガイドできます。Veo で参照画像を使用する場合は、次のいずれかを選択できます。
アセット画像: 1 人の人物、キャラクター、商品の画像を 3 枚まで指定します。Veo は、出力動画で被写体の外観を保持します。
スタイル画像: スタイル画像を 1 つ指定します。Veo が出力動画に、アップロードした画像のスタイルを適用します。
動画生成用の効果的なテキスト プロンプトの作成方法については、Veo プロンプト ガイドをご覧ください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Vertex AI API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Vertex AI API.
-
環境の認証を設定します。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init
外部 ID プロバイダ(IdP)を使用している場合は、まずフェデレーション ID を使用して gcloud CLI にログインする必要があります。
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
被写体の画像を使用して動画を生成する
手順は次のとおりです。
コンソール
Google Cloud コンソールで、[Vertex AI Studio] > [Media Studio] ページに移動します。
[Veo] をクリックします。
[設定] ペインで、次の設定を選択します。
モデル:
veo-2.0-generate-exp
を選択します。検索結果の表示件数: スライダーを調整するか、1~4 の値を入力します。
[Reference] セクションで、[Subject] > [Add] をクリックします。
パソコンで 1 ~ 3 枚の画像を選択してアップロードします。
省略可: [安全性] セクションで、次のいずれかの人物生成の設定を選択します。
Allow (Adults only): デフォルト値。成人の人物または顔のみを生成します。若者や子供の人物や顔を生成しません。
Don't allow: 人物や顔を生成しません。
省略可: [詳細オプション] セクションで、動画生成をランダム化するためのシード値を入力します。
[プロンプトを記述] ボックスに、生成する動画の説明となるテキスト プロンプトを入力します。
[
生成] をクリックします。
REST
環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。
Veo API の詳細については、Vertex AI の Veo API をご覧ください。
動画生成リクエストを送信するには、次のコマンドを使用します。このリクエストにより長時間実行オペレーションが開始され、指定した Cloud Storage バケットに出力が保存されます。
リクエストのデータを使用する前に、次のように置き換えます。
-
PROJECT_ID
: 実際の Google Cloud プロジェクト ID。 -
TEXT_PROMPT
: 動画の生成をガイドするために使用されるテキスト プロンプト。 -
BASE64_ENCODED_IMAGE
: Base64 バイトでエンコードされた被写体の画像。このフィールドとmimeType
を繰り返して、最大 3 つの被写体画像を指定できます。 -
IMAGE_MIME_TYPE
: 入力画像の MIME タイプ。次のいずれか 1 つのみ:image/jpeg
image/png
このフィールドと
bytesBase64Encoded
を繰り返して、最大 3 つの被写体画像を指定できます。 -
OUTPUT_STORAGE_URI
: 省略可。出力動画を保存する Cloud Storage バケット。指定しない場合、Base64 バイトでエンコードされた動画がレスポンスで返されます。例:gs://video-bucket/output/
。 -
RESPONSE_COUNT
: 生成する動画ファイルの数。指定できるのは整数値(1~4)です。 -
その他のオプション パラメータ
ユースケースに応じて、次のオプションの変数を使用します。
"parameters": {}
オブジェクトに次のパラメータの一部またはすべてを追加します。"parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", // "resolution": RESOLUTION, // Veo 3 models only "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
-
ASPECT_RATIO
: 省略可。生成された動画のアスペクト比を説明する文字列値。次の値を使用できます。- 横向きの
"16:9"
"9:16"
(縦向き)
デフォルト値は
"16:9"
です。 - 横向きの
-
NEGATIVE_PROMPT
: 省略可。モデルが生成しないようにするコンテンツを記述した文字列値。 -
PERSON_SAFETY_SETTING
: 省略可。人物や顔の生成の安全性設定を制御する文字列値。次の値を使用できます。-
"allow_adult"
: 成人の人物とその顔のみが生成されるようにします。 -
"disallow"
: 人物や顔を生成しません。
デフォルト値は
"allow_adult"
です。 -
-
RESOLUTION
: 省略可: 生成された動画の解像度を制御する文字列値。Veo 3 モデルのみでサポートされています。次の値を使用できます。"720p"
"1080p"
デフォルト値は
"720p"
です。 -
RESPONSE_COUNT
: 省略可。生成する動画の数を表す整数値。指定できる値の範囲は1
~4
です。 -
SEED_NUMBER
: 省略可。モデルが確定的な動画を生成するために使用する uint32 値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。指定できる値の範囲は0
~4294967295
です。
-
HTTP メソッドと URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/veo-2.0-generate-001:predictLongRunning
リクエストの本文(JSON):
{ "instances": [ { "prompt": "TEXT_PROMPT", // The following fields can be repeated for up to three total // images. "referenceImages": [ { "image": { "bytesBase64Encoded": "BASE64_ENCODED_IMAGE", "mimeType": "IMAGE_MIME_TYPE" }, "referenceType": "asset" } ] } ], "parameters": { "durationSeconds": 8, "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/veo-2.0-generate-001: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/veo-2.0-generate-001:predictLongRunning" | Select-Object -Expand Content{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/veo-2.0-generate-001/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }
-
省略可: 動画生成の長時間実行オペレーションのステータスを確認します。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- MODEL_ID: 使用するモデル ID。
- OPERATION_ID: 元の動画生成リクエストで返された一意のオペレーション ID。
HTTP メソッドと URL:
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
スタイル画像を使用して動画を生成する
手順は次のとおりです。
コンソール
Google Cloud コンソールで、[Vertex AI Studio] > [Media Studio] ページに移動します。
[Veo] をクリックします。
[設定] ペインで、次の設定を選択します。
モデル:
veo-2.0-generate-exp
を選択します。検索結果の表示件数: スライダーを調整するか、1~4 の値を入力します。
[Reference] セクションで、[Style] > [Add] をクリックします。
パソコンでアップロードする画像を選択します。
省略可: [安全性] セクションで、次のいずれかの人物生成の設定を選択します。
Allow (Adults only): デフォルト値。成人の人物または顔のみを生成します。若者や子供の人物や顔を生成しません。
Don't allow: 人物や顔を生成しません。
省略可: [詳細オプション] セクションで、動画生成をランダム化するためのシード値を入力します。
[プロンプトを記述] ボックスに、生成する動画の説明となるテキスト プロンプトを入力します。
[
生成] をクリックします。
REST
環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。
Veo API の詳細については、Vertex AI の Veo API をご覧ください。
動画生成リクエストを送信するには、次のコマンドを使用します。このリクエストにより長時間実行オペレーションが開始され、指定した Cloud Storage バケットに出力が保存されます。
リクエストのデータを使用する前に、次のように置き換えます。
-
PROJECT_ID
: 実際の Google Cloud プロジェクト ID。 -
TEXT_PROMPT
: 動画の生成をガイドするために使用されるテキスト プロンプト。 -
BASE64_ENCODED_IMAGE
: base64 バイトでエンコードされたスタイル画像。 -
IMAGE_MIME_TYPE
: 入力画像の MIME タイプ。次のいずれか 1 つのみ。image/jpeg
image/png
-
OUTPUT_STORAGE_URI
: 省略可。出力動画を保存する Cloud Storage バケット。指定しない場合、動画のバイト数がレスポンスで返されます。たとえばgs://video-bucket/output/
。 -
RESPONSE_COUNT
: 生成する動画ファイルの数。指定できるのは整数値(1~4)です。 -
その他のオプション パラメータ
ユースケースに応じて、次のオプションの変数を使用します。
"parameters": {}
オブジェクトに次のパラメータの一部またはすべてを追加します。"parameters": { "aspectRatio": "ASPECT_RATIO", "negativePrompt": "NEGATIVE_PROMPT", "personGeneration": "PERSON_SAFETY_SETTING", // "resolution": RESOLUTION, // Veo 3 models only "sampleCount": RESPONSE_COUNT, "seed": SEED_NUMBER }
-
ASPECT_RATIO
: 省略可。生成された動画のアスペクト比を説明する文字列値。次の値を使用できます。- 横向きの
"16:9"
"9:16"
(縦向き)
デフォルト値は
"16:9"
です。 - 横向きの
-
NEGATIVE_PROMPT
: 省略可。モデルが生成しないようにするコンテンツを記述した文字列値。 -
PERSON_SAFETY_SETTING
: 省略可。人物や顔の生成の安全性設定を制御する文字列値。次の値を使用できます。-
"allow_adult"
: 成人の人物とその顔のみが生成されるようにします。 -
"disallow"
: 人物や顔を生成しません。
デフォルト値は
"allow_adult"
です。 -
-
RESOLUTION
: 省略可: 生成された動画の解像度を制御する文字列値。Veo 3 モデルのみでサポートされています。次の値を使用できます。"720p"
"1080p"
デフォルト値は
"720p"
です。 -
RESPONSE_COUNT
: 省略可。生成する動画の数を表す整数値。指定できる値の範囲は1
~4
です。 -
SEED_NUMBER
: 省略可。モデルが確定的な動画を生成するために使用する uint32 値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。指定できる値の範囲は0
~4294967295
です。
-
HTTP メソッドと URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/veo-2.0-generate-001:predictLongRunning
リクエストの本文(JSON):
{ "instances": [ { "prompt": "TEXT_PROMPT", "referenceImages": [ { "image": { "bytesBase64Encoded": "BASE64_ENCODED_IMAGE", "mimeType": "IMAGE_MIME_TYPE" }, "referenceType": "style" } ] } ], "parameters": { "durationSeconds": 8, "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/veo-2.0-generate-001: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/veo-2.0-generate-001:predictLongRunning" | Select-Object -Expand Content{ "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/veo-2.0-generate-001/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8" }
-
省略可: 動画生成の長時間実行オペレーションのステータスを確認します。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- MODEL_ID: 使用するモデル ID。
- OPERATION_ID: 元の動画生成リクエストで返された一意のオペレーション ID。
HTTP メソッドと URL:
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
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-09-04 UTC。