Gemini を使用して動画から画像を生成できます。これは、動画のサムネイル用の画像を作成する際に便利です。インターフェースとして Google Cloud コンソールと Agent Platform API がサポートされています。
次の Gemini モデルは、動画からの画像生成をサポートしています。
クリックしてサポートされているモデルを開く
動画から画像を生成する
以下では、Agent Studio または API を使用して動画から画像を生成する方法について説明します。
プロンプトのベスト プラクティスの詳細については、マルチモーダル プロンプトを設計するをご覧ください。
コンソール
Gemini を使用して動画から画像を生成する手順は次のとおりです。
Google Cloud コンソールの [Agent Platform] セクションで、[Agent Studio] > [画像] に移動します。
[モデル設定] で、表示されたモデルのいずれかを選択します。
[プロンプト] テキスト領域で、追加 追加ボタンをクリックし、動画ファイルのソースを選択します。
アップロード
アップロードするファイルを選択して [開く] をクリックします。
URL
使用するファイルの URL を入力し、[挿入] をクリックします。
YouTube
使用する YouTube 動画の URL を入力し、[挿入] をクリックします。
公開されている動画や、 Google Cloud コンソールのログインに使用したアカウントが所有する動画を使用できます。
Cloud Storage
バケットを選択してから、バケット内のインポートするファイルを選択し、[選択] をクリックします。
Google ドライブ
- このオプションを初めて選択するときに、アカウントを選択して Vertex AI Studio がアカウントにアクセスできるように同意します。合計サイズが最大 10 MB の複数のファイルをアップロードできます。1 つのファイルのサイズが 7 MB を超えないようにしてください。
- 追加するファイルをクリックします。
[選択] をクリックします。
ファイルのサムネイルが [プロンプト] ペインに表示されます。トークンの合計数も表示されます。プロンプト データがトークンの上限を超えると、トークンは切り捨てられ、データの処理には含まれません。
[プロンプト] テキスト領域に、生成する画像の説明を入力します。
[プロンプト]()ボタンをクリックします。
Gemini は、説明に基づいて画像を生成します。このプロセスには数秒かかりますが、容量によっては比較的遅くなることがあります。
Python
インストール
pip install --upgrade google-genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google 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_ENTERPRISE=True
REST
環境をセットアップしたら、REST を使用してテキスト プロンプトをテストできます。次のサンプルは、パブリッシャー モデルのエンドポイントにリクエストを送信します。
リクエストのデータを使用する前に、次のように置き換えます。
-
PROJECT_ID: 実際の プロジェクト ID。 -
FILE_URI: プロンプトに含めるファイルの URI または URL。有効な値は次のとおりです。- Cloud Storage バケット URI: オブジェクトは一般公開されているか、リクエストを送信するプロジェクトと同じ Google Cloud プロジェクトに存在している必要があります。
- HTTP URL: ファイルの URL は一般公開されている必要があります。リクエストごとに 1 つの動画ファイル、1 つの音声ファイル、最大 10 個の画像ファイルを指定できます。音声ファイル、動画ファイル、ドキュメントのサイズは 15 MB 以下にする必要があります。
- YouTube 動画の URL: YouTube 動画は、 Google Cloud コンソールのログインに使用したアカウントが所有しているか、公開されている必要があります。リクエストごとにサポートされる YouTube 動画の URL は 1 つだけです。
fileURIを指定する場合は、ファイルのメディアタイプ(mimeType)も指定する必要があります。VPC Service Controls が有効になっている場合、fileURIのメディア ファイル URL の指定はサポートされていません。Cloud Storage に動画ファイルがない場合は、次の一般公開ファイル(MIME タイプが
video/mp4のgs://cloud-samples-data/video/animals.mp4)を使用できます。この動画を表示するには、 サンプルの MP4 ファイルを開きます。 -
MIME_TYPE:dataフィールドまたはfileUriフィールドで指定されたファイルのメディアタイプ。指定できる値は以下のとおりです。クリックして MIME タイプを開く
application/pdfaudio/mpegaudio/mp3audio/wavimage/pngimage/jpegimage/webptext/plainvideo/movvideo/mpegvideo/mp4video/mpgvideo/avivideo/wmvvideo/mpegpsvideo/flv
-
TEXT: プロンプトに含める指示のテキスト。 例:What is in the video?
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存します。ターミナルで次のコマンドを実行して、このファイルを現在のディレクトリに作成または上書きします。
cat > request.json << 'EOF'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
EOFその後、次のコマンドを実行して REST リクエストを送信します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.1-flash-image:generateContent"
PowerShell
リクエスト本文を request.json という名前のファイルに保存します。ターミナルで次のコマンドを実行して、このファイルを現在のディレクトリに作成または上書きします。
@'
{
"contents": {
"role": "USER",
"parts": [
{
"fileData": {
"fileUri": "FILE_URI",
"mimeType": "MIME_TYPE"
}
},
{
"text": "TEXT"
}
]
}
}
'@ | Out-File -FilePath request.json -Encoding utf8その後、次のコマンドを実行して REST リクエストを送信します。
$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://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-3.1-flash-image:generateContent" | Select-Object -Expand Content
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "IMAGE_BASE64_BYTES"
}
}
]
},
"finishReason": "STOP"
}
],
"usageMetadata": {
"promptTokenCount": 350,
"candidatesTokenCount": 258,
"totalTokenCount": 608
}
}
generateContentメソッドを使用して、レスポンスが完全に生成された後に返されるようにリクエストします。ユーザーが認識するレイテンシを短縮するには、streamGenerateContentメソッドを使用して、生成時にレスポンスをストリーミングします。- マルチモーダル モデル ID は、URL の末尾のメソッドの前に配置されます(例:
gemini-3.5-flash)。このサンプルでは、他のモデルもサポートされている場合があります。 - リージョン API エンドポイント(
us-central1など)を使用すると、エンドポイント URL のリージョンによってリクエストの処理場所が決まります。リソースパス内の競合するロケーションは無視されます。
次のステップ
Gemini の画像生成の詳細については、次のリンクをご覧ください。