Gerar imagens de vídeos com o Gemini

Você pode usar o Gemini para gerar imagens de um vídeo, o que pode ser útil para criar uma imagem para uma miniatura de vídeo. As interfaces compatíveis incluem o Cloud de Confiance console e a API Agent Platform.

Os modelos do Gemini a seguir oferecem suporte à geração de imagens de um vídeo:

Clique para expandir os modelos compatíveis

Gerar imagens de vídeo

A seguir, mostramos como gerar imagens de vídeo usando o Agent Studio ou a API.

Para mais informações sobre as práticas recomendadas para comandos, consulte Criar comandos multimodais.

Console

Para gerar imagens de vídeo com o Gemini, faça o seguinte:

  1. Na seção Agent Platform do Cloud de Confiance console, acesse Agent Studio > Image.

    Acesse o Vertex AI Studio

  2. Em Configurações do modelo, selecione um dos modelos mostrados.

  3. Na área de texto Comando, clique no botão Adicionar Adicionar e selecione a origem do arquivo de vídeo:

    Fazer upload

    Selecione o arquivo que você quer enviar e clique em Abrir.

    Por URL

    Insira o URL do arquivo que você quer usar e clique em Inserir.

    YouTube

    Insira o URL do vídeo do YouTube que você quer usar e clique em Inserir.

    Você pode usar qualquer vídeo público ou um vídeo que seja de propriedade da conta que você usou para fazer login no Cloud de Confiance console.

    Cloud Storage

    Selecione o bucket e o arquivo que você quer importar e clique em Selecionar.

    Google Drive

    1. Escolha uma conta e conceda consentimento ao Vertex AI Studio para acessar sua conta na primeira vez que você selecionar essa opção. É possível fazer upload vários arquivos que tenham um tamanho total de até 10 MB. Um único arquivo não pode exceder 7 MB.
    2. Clique no arquivo que você quer adicionar.
    3. Clique em Selecionar.

      A miniatura do arquivo é mostrada no painel Comando. O número total de tokens também é mostrado. Se os dados do comando excederem o limite de tokens, os tokens serão truncados e não serão incluídos no processamento dos dados.

  4. Escreva uma descrição da imagem que você quer gerar na área de texto Comando.

  5. Clique no botão Comando ().

O Gemini gera uma imagem com base na sua descrição. Esse processo leva alguns segundos, mas pode ser comparativamente mais lento, dependendo da capacidade.

Python

Instalar

pip install --upgrade google-genai

Para saber mais, consulte a documentação de referência do SDK.

Defina variáveis de ambiente para usar o SDK de IA Generativa do Google com a Vertex AI:

# 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

from google import genai
from google.genai.types import GenerateContentConfig, Modality, Part
from PIL import Image
from io import BytesIO

client = genai.Client()

# A video on 'The ABCs of agent building'
video = "https://www.youtube.com/watch?v=rjoMZyxncUI"

response = client.models.generate_content(
    model="gemini-3.1-flash-image",
    contents=[
        Part.from_uri(
            file_uri=video,
            mime_type="video/mp4"
        ), 
        "Generate an infographic of the topics covered in this video."
    ],
    config=GenerateContentConfig(response_modalities=[Modality.TEXT, Modality.IMAGE]),
)
for part in response.candidates[0].content.parts:
    if part.text:
        print(part.text)
    elif part.inline_data:
        image = Image.open(BytesIO((part.inline_data.data)))
        image.save("output_folder/video-image.png")

REST

Depois de configurar seu ambiente, use REST para testar um comando de texto. O exemplo a seguir envia uma solicitação ao publisher endpoint do modelo.

Antes de usar os dados da solicitação abaixo, faça estas substituições:

  • PROJECT_ID: seu ID do projeto.
  • FILE_URI: o URI ou URL do arquivo a ser incluído no comando. Os valores aceitáveis são os seguintes:

    • URI do bucket do Cloud Storage:o objeto precisa ser publicamente legível ou residir no mesmo Cloud de Confiance projeto que está enviando a solicitação.
    • URL HTTP:o URL do arquivo precisa ser legível publicamente. É possível especificar um arquivo de vídeo, um arquivo de áudio e até 10 arquivos de imagem por solicitação. Os arquivos de áudio, vídeo e documentos não podem exceder 15 MB.
    • URL do vídeo do YouTube:o vídeo do YouTube precisa ser de propriedade da conta que você usou para fazer login no Cloud de Confiance console ou ser público. Somente um URL de vídeo do YouTube é aceito por solicitação.

    Ao especificar um fileURI, você também precisa especificar o tipo de mídia (mimeType) do arquivo. Se o VPC Service Controls estiver ativado, não será possível especificar um URL de arquivo de mídia para fileURI não é compatível.

    Se você não tiver um arquivo de vídeo no Cloud Storage, use o seguinte arquivo disponível publicamente: gs://cloud-samples-data/video/animals.mp4 com um tipo MIME de video/mp4. Para assistir a esse vídeo, abra o arquivo MP4 de amostra.

  • MIME_TYPE: O tipo de mídia do arquivo especificado nos campos data ou fileUri. Os valores aceitáveis são os seguintes:

    Clique para expandir os tipos MIME.

    • application/pdf
    • audio/mpeg
    • audio/mp3
    • audio/wav
    • image/png
    • image/jpeg
    • image/webp
    • text/plain
    • video/mov
    • video/mpeg
    • video/mp4
    • video/mpg
    • video/avi
    • video/wmv
    • video/mpegps
    • video/flv
  • TEXT: as instruções de texto a serem incluídas no comando. Por exemplo, What is in the video?

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

cat > request.json << 'EOF'
{
  "contents": {
    "role": "USER",
    "parts": [
      {
        "fileData": {
          "fileUri": "FILE_URI",
          "mimeType": "MIME_TYPE"
        }
      },
      {
        "text": "TEXT"
      }
    ]
  }
}
EOF

Depois execute o comando a seguir para enviar a solicitação 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

Salve o corpo da solicitação em um arquivo chamado request.json. Execute o comando a seguir no terminal para criar ou substituir esse arquivo no diretório atual:

@'
{
  "contents": {
    "role": "USER",
    "parts": [
      {
        "fileData": {
          "fileUri": "FILE_URI",
          "mimeType": "MIME_TYPE"
        }
      },
      {
        "text": "TEXT"
      }
    ]
  }
}
'@  | Out-File -FilePath request.json -Encoding utf8

Depois execute o comando a seguir para enviar a solicitação 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
 
Observe o seguinte no URL deste exemplo:
  • Use o generateContent para solicitar que a resposta seja retornada depois de ser totalmente gerada. Para reduzir a percepção de latência ao público humano, transmita a resposta à medida que geradas usando o streamGenerateContent método.
  • O ID do modelo multimodal está localizado no final do URL, antes do método (por exemplo, gemini-3.5-flash). Este exemplo também pode oferecer suporte a outros modelos.
  • Quando você usa um endpoint regional da API (por exemplo, us-central1), a região do URL do endpoint determina onde a solicitação é processada. Qualquer local conflitante no caminho do recurso é ignorado.

A seguir

Consulte os links a seguir para mais informações sobre a geração de imagens do Gemini: