Veo | AI 動画生成ツール

Vertex AI で Veo を使用すると、 Google Cloud コンソールで指定したテキスト プロンプトまたは画像プロンプトから新しい動画を生成したり、Vertex AI API にリクエストを送信したりできます。

Vertex AI Media Studio で Veo を試す

Colab で Veo を試す

アクセス権をリクエストする: 上級者向け機能と Veo の順番待ちリスト

モデル バージョン

使用できる動画生成モデルは複数あります。詳細については、Veo モデルをご覧ください。

ロケーション

ロケーションは、データの保存場所を制御するためにリクエストで指定できるリージョンです。使用可能なリージョンの一覧については、Vertex AI の生成 AI のロケーションをご覧ください。

責任ある AI

Veo は、あらゆる年齢の人物画像など、自然言語テキストや画像プロンプトからリアルで高品質な動画を生成します。Veo では、テキストまたは画像プロンプトのコンテキストに応じて、Google Cloud プロジェクトが人物または子供の生成について承認を受ける必要があることを示すエラーが表示されることがあります。

承認が必要な場合は、Google アカウント担当者にお問い合わせください。

始める前に

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Enable the Vertex AI API.

    Enable the API

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Enable the Vertex AI API.

    Enable the API

  6. 環境の認証を設定します。

    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 に指定した認証情報を使用します。

      After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。

    テキストから動画を生成

    記述テキストのみを入力として使用し、新しい動画を生成できます。次のサンプルは、動画を生成する基本的な手順を示しています。

    コンソール

    1. Google Cloud コンソールで、[Vertex AI Studio> Media Studio] ページに移動します。

      メディア スタジオ

    2. [動画] をクリックします。

    3. 省略可: [設定] ペインで、次の設定を構成します。

      • モデル: 使用可能なオプションからモデルを選択します。
      • アスペクト比: 16:9 または 9:16 を選択します。

      • 検索結果の数: スライダーを調整するか、14 の範囲の値を入力します。

      • 動画の長さ: 5 秒8 秒の長さを選択します。

      • 出力ディレクトリ: [参照] をクリックして、出力ファイルを保存する Cloud Storage バケットを作成または選択します。

    4. 省略可: [安全性] セクションで、次のいずれかの [人物の生成] 設定を選択します。

      • 許可(成人向けのみ): デフォルト値。成人の人物または顔のみを生成します。若者や子供の人物や顔を生成しないでください。

      • 許可しない: 人物や顔を生成しません。

    5. 省略可: [詳細オプション] セクションで、動画生成をランダム化するためのシード値を入力します。

    6. [Write your prompt] ボックスに、生成する動画の説明となるテキスト プロンプトを入力します。

    7. [ 生成] をクリックします。

    REST

    環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。

    Veo API の詳細については、Vertex AI の Veo API をご覧ください。

    1. 動画生成リクエストを送信するには、次のコマンドを使用します。このリクエストにより長時間実行オペレーションが開始され、指定した Cloud Storage バケットに出力が保存されます。

      リクエストのデータを使用する前に、次のように置き換えます。

      • PROJECT_ID: 実際の Google Cloud プロジェクト ID
      • MODEL_ID: 使用するモデル ID。使用可能な値:
        • veo-2.0-generate-001(GA)
        • 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: 整数、省略可。リクエストされた出力画像の数。値: 14
        • SEED_NUMBER: uint32。省略可。生成される動画を確定するための数値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。値: 04294967295

      HTTP メソッドと URL:

      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
      このリクエストは、一意のオペレーション ID を含む完全なオペレーション名を返します。この完全なオペレーション名を使用して、動画生成リクエストのステータスをポーリングします。
      {
        "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
      }
      

    2. 省略可: 動画生成の長時間実行オペレーションのステータスを確認します。

      リクエストのデータを使用する前に、次のように置き換えます。

      • PROJECT_ID: 実際の Google Cloud プロジェクト ID
      • MODEL_ID: 使用するモデル ID。使用可能な値:
        • veo-2.0-generate-001(GA)
        • veo-3.0-generate-preview(プレビュー)
      • 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
      このリクエストは、オペレーションがまだ実行中か完了しているかなど、オペレーションに関する情報を返します。

    Gen AI SDK for Python

    インストール

    pip install --upgrade google-genai

    詳しくは、 SDK リファレンス ドキュメントをご覧ください。

    Vertex AI で Gen AI SDK を使用するための環境変数を設定します。

    # Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
    # with appropriate values for your project.
    export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
    export GOOGLE_CLOUD_LOCATION=global
    export GOOGLE_GENAI_USE_VERTEXAI=True

    import time
    from google import genai
    from google.genai.types import GenerateVideosConfig
    
    client = genai.Client()
    
    # TODO(developer): Update and un-comment below line
    # output_gcs_uri = "gs://your-bucket/your-prefix"
    
    operation = client.models.generate_videos(
        model="veo-3.0-generate-preview",
        prompt="a cat reading a book",
        config=GenerateVideosConfig(
            aspect_ratio="16:9",
            output_gcs_uri=output_gcs_uri,
        ),
    )
    
    while not operation.done:
        time.sleep(15)
        operation = client.operations.get(operation)
        print(operation)
    
    if operation.response:
        print(operation.result.generated_videos[0].video.uri)
    
    # Example response:
    # gs://your-bucket/your-prefix

    画像から動画を生成する

    入力例 出力例
    1. 入力画像1
      かぎ針編みの象の PNG ファイルを入力する
    2. テキスト プロンプト: 象が自然に動き回っている

    かぎ針編みの象の出力動画

    1 Vertex AI の Imagen を使用して、プロンプト「サバンナを歩く、複雑な模様のかぎ針編みの象」から生成された画像

    画像のみを入力として使用するか、画像と記述テキストを入力として使用して、新しい動画を生成できます。次のサンプルは、画像とテキストから動画を生成する基本的な手順を示しています。

    コンソール

    1. Google Cloud コンソールで、[Vertex AI Studio> Media Studio] ページに移動します。

      メディア スタジオ

    2. [動画] をクリックします。

    3. 省略可: [設定] ペインで、次の設定を構成します。

      • モデル: 使用可能なオプションからモデルを選択します。
      • アスペクト比: 16:9 または 9:16 を選択します。

      • 検索結果の数: スライダーを調整するか、14 の範囲の値を入力します。

      • 動画の長さ: 5 秒8 秒の長さを選択します。

      • 出力ディレクトリ: [参照] をクリックして、出力ファイルを保存する Cloud Storage バケットを作成または選択します。

    4. 省略可: [安全性] セクションで、次のいずれかの [人物の生成] 設定を選択します。

      • 許可(成人向けのみ): デフォルト値。成人の人物または顔のみを生成します。若者や子供の人物や顔を生成しないでください。

      • 許可しない: 人物や顔を生成しません。

    5. 省略可: [詳細オプション] セクションで、動画生成をランダム化するためのシード値を入力します。

    6. [プロンプトを入力] ボックスで、 [アップロード] をクリックします。

    7. アップロードするローカル画像を選択し、[選択] をクリックします。

    8. [Write your prompt] ボックスに、生成する動画の説明となるテキスト プロンプトを入力します。

    9. [ 生成] をクリックします。

    REST

    環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。

    Veo API の詳細については、Vertex AI の Veo API をご覧ください。

    1. 動画生成リクエストを送信するには、次のコマンドを使用します。このリクエストにより長時間実行オペレーションが開始され、指定した Cloud Storage バケットに出力が保存されます。

      リクエストのデータを使用する前に、次のように置き換えます。

      • PROJECT_ID: 実際の Google Cloud プロジェクト ID
      • MODEL_ID: 使用するモデル ID。使用可能な値:
        • veo-2.0-generate-001(GA)
        • 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: 整数、省略可。リクエストされた出力画像の数。値: 14
        • SEED_NUMBER: uint32。省略可。生成される動画を確定するための数値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。値: 04294967295

      HTTP メソッドと URL:

      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
      このリクエストは、一意のオペレーション ID を含む完全なオペレーション名を返します。この完全なオペレーション名を使用して、動画生成リクエストのステータスをポーリングします。
      {
        "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
      }
      

    2. 省略可: 動画生成の長時間実行オペレーションのステータスを確認します。

      リクエストのデータを使用する前に、次のように置き換えます。

      • PROJECT_ID: 実際の Google Cloud プロジェクト ID
      • MODEL_ID: 使用するモデル ID。使用可能な値:
        • veo-2.0-generate-001
      • TEXT_PROMPT: 動画の生成をガイドするために使用されるテキスト プロンプト。
      • 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",
          "sampleCount": RESPONSE_COUNT,
          "seed": SEED_NUMBER
        }
        • ASPECT_RATIO: 文字列。省略可。生成される動画のアスペクト比を定義します。値: 16:9(デフォルト、横向き)または 9:16(縦向き)。
        • NEGATIVE_PROMPT: 文字列。省略可。モデルが生成しないようにする内容を記述したテキスト文字列。
        • PERSON_SAFETY_SETTING: 文字列。省略可。人物や顔の生成を許可するかどうかを制御する安全性設定。値:
          • allow_adult(デフォルト値): 成人のみの生成を許可します。
          • disallow: 画像に人物や顔が含まれないようにします。
        • RESPONSE_COUNT: 整数、省略可。リクエストされた出力画像の数。値: 14
        • SEED_NUMBER: uint32。省略可。生成される動画を確定するための数値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。値: 04294967295

      HTTP メソッドと URL:

      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
      このリクエストは、一意のオペレーション ID を含む完全なオペレーション名を返します。この完全なオペレーション名を使用して、動画生成リクエストのステータスをポーリングします。
      {
        "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
      }
      

    Gen AI SDK for Python

    インストール

    pip install --upgrade google-genai

    詳しくは、 SDK リファレンス ドキュメントをご覧ください。

    Vertex AI で Gen AI SDK を使用するための環境変数を設定します。

    # Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
    # with appropriate values for your project.
    export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
    export GOOGLE_CLOUD_LOCATION=global
    export GOOGLE_GENAI_USE_VERTEXAI=True

    import time
    from google import genai
    from google.genai.types import GenerateVideosConfig, Image
    
    client = genai.Client()
    
    # TODO(developer): Update and un-comment below line
    # output_gcs_uri = "gs://your-bucket/your-prefix"
    
    operation = client.models.generate_videos(
        model="veo-3.0-generate-preview",
        image=Image(
            gcs_uri="gs://cloud-samples-data/generative-ai/image/flowers.png",
            mime_type="image/png",
        ),
        config=GenerateVideosConfig(
            aspect_ratio="16:9",
            output_gcs_uri=output_gcs_uri,
        ),
    )
    
    while not operation.done:
        time.sleep(15)
        operation = client.operations.get(operation)
        print(operation)
    
    if operation.response:
        print(operation.result.generated_videos[0].video.uri)
    
    # Example response:
    # gs://your-bucket/your-prefix

    プロンプトの書き換え

    Veo には、プロンプト書き換えツールとも呼ばれる LLM ベースのプロンプト強化ツールが用意されています。プロンプトの書き換えツールでは、プロンプトを書き換えて、動画の説明、カメラの動き、文字起こし、効果音をプロンプトに追加できます。通常、より詳細なプロンプトを使用すると、より高品質の動画が生成されます。

    プロンプトの強化を無効にすると、動画の品質と、出力が指定したプロンプトにどれだけ似ているかに影響する可能性があります。この機能は、次のモデル バージョンでデフォルトで有効になっています。

    • veo-2.0-generate-001
    • veo-3.0-generate-previewプレビュー

    書き換えられたプロンプトは、元のプロンプトの長さが 30 語未満の場合にのみ、API レスポンスによって返されます。

    プロンプトの拡張機能をオフにする手順は次のとおりです。

    コンソール

    1. Google Cloud コンソールで、[Vertex AI Studio> Media Studio] ページに移動します。

      Media Studio に移動

    2. [Veo] をクリックします。

    3. [設定] で、[プロンプトの強化を有効にする] 切り替えボタンをクリックします。

    4. [プロンプトを入力] ボックスにプロンプトを入力し、 [生成] をクリックします。

    REST

    Veo API の詳細については、Vertex AI の Veo API をご覧ください。

    1. 動画生成リクエストを送信するには、次のコマンドを使用します。このリクエストにより長時間実行オペレーションが開始され、指定した Cloud Storage バケットに出力が保存されます。

      リクエストのデータを使用する前に、次のように置き換えます。

      • PROJECT_ID: 実際の Google Cloud プロジェクト ID
      • MODEL_ID: 使用するモデル ID。使用可能な値:
        • veo-2.0-generate-001(GA 許可リスト)
        • veo-3.0-generate-preview(プレビュー)
      • TEXT_PROMPT: 動画の生成をガイドするために使用されるテキスト プロンプト。
      • OUTPUT_STORAGE_URI: 省略可。出力動画を保存する Cloud Storage バケット。指定しない場合、動画のバイト数がレスポンスで返されます。例: gs://video-bucket/output/
      • RESPONSE_COUNT: 生成する動画ファイルの数。指定できるのは整数値(1 ~ 4)です。
      • DURATION: 生成する動画ファイルの長さ。指定できる整数値は 5 ~ 8 です。
      • ENHANCED_PROMPT: 拡張プロンプトを使用するかどうか。次のいずれかを使用できます。
        • True: (デフォルト)Gemini を使用してプロンプトを強化します。
        • False: Gemini を使用してプロンプトを強化しないでください。
      • その他のオプション パラメータ

        ユースケースに応じて、次のオプションの変数を使用します。"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: 整数、省略可。リクエストされた出力画像の数。値: 14
        • SEED_NUMBER: uint32。省略可。生成される動画を確定するための数値。他のパラメータを変更せずにリクエストにシード番号を指定すると、モデルは同じ動画を生成するように導かれます。値: 04294967295

      HTTP メソッドと URL:

      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",
          "durationSeconds": "DURATION",
          "enhancePrompt": ENHANCED_PROMPT
        }
      }
      

      リクエストを送信するには、次のいずれかのオプションを選択します。

      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
      このリクエストは、一意のオペレーション ID を含む完全なオペレーション名を返します。この完全なオペレーション名を使用して、動画生成リクエストのステータスをポーリングします。
      {
        "name": "projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8"
      }
      

    次のステップ