Prompt com arquivos de mídia


Ver em ai.google.dev Executar no Google Colab Veja o código-fonte no GitHub

A API Gemini oferece suporte a comandos com texto, imagem, áudio e dados de vídeo, também conhecidos como comandos multimodais, o que significa que você pode incluir esses tipos de arquivos de mídia nos seus comandos. No caso de arquivos pequenos, aponte o modelo Gemini diretamente para um arquivo local ao fornecer um comando. Faça upload de arquivos maiores com a API File antes de incluí-los nas solicitações.

A API File permite armazenar até 20 GB de arquivos por projeto, sendo que cada um deles não excede 2 GB. Os arquivos são armazenados por 48 horas e podem ser acessados com sua chave de API para geração dentro desse período. Não é possível fazer o download da API. A API Files está disponível sem custos financeiros em todas as regiões em que a API Gemini está disponível.

A API File processa entradas que podem ser usadas para gerar conteúdo com model.generateContent ou model.streamGenerateContent. Para mais informações sobre formatos de arquivo válidos (tipos MIME) e modelos compatíveis, consulte Formatos de arquivo compatíveis.

Este guia mostra como usar a API File para fazer upload de arquivos de mídia e incluí-los em uma chamada GenerateContent para a API Gemini. Para saber mais, consulte os exemplos de código (link em inglês).

Formatos de arquivo compatíveis

Os modelos do Gemini oferecem suporte a comandos com vários formatos de arquivo. Nesta seção, explicamos considerações sobre o uso de formatos de mídia gerais para solicitações, especificamente arquivos de imagem, áudio, vídeo e texto simples. É possível usar arquivos de mídia para comandos apenas com versões de modelo específicas, conforme mostrado na tabela a seguir.

Modelo Imagens Áudio Vídeo Texto simples
Gemini 1.5 Pro (versão 008 e mais recentes) ✔ (máximo de 3.600 arquivos de imagem)

Formatos de imagem

Você pode usar dados de imagem para comandos nos modelos Gemini 1.5. Ao usar imagens para comandos, elas estão sujeitas às seguintes limitações e requisitos:

  • As imagens precisam estar em um dos seguintes tipos MIME de dados de imagem:
    • PNG - image/png
    • JPEG - image/jpeg
    • WEBP - image/webp
    • HEIC - image/heic
    • HEIF - image/heif
  • Máximo de 3.600 imagens para os modelos Gemini 1.5.
  • Não há limites específicos para o número de pixels em uma imagem. No entanto, imagens maiores são reduzidas para caber em uma resolução máxima de 3.072 x 3.072, sem preservar a proporção original.

Formatos de áudio

Você pode usar dados de áudio para comandos nos modelos Gemini 1.5. Ao usar áudio para comandos, eles estão sujeitos a estas limitações e requisitos:

  • Os dados de áudio são compatíveis com os seguintes tipos MIME de formato de áudio comuns:
    • WAV: áudio/wav
    • MP3: áudio/mp3
    • AIFF: áudio/aiff
    • AAC: áudio/aac
    • OGG Vorbis - áudio/ogg
    • FLAC: áudio/flac
  • A duração máxima aceita de dados de áudio em um único comando é de 9,5 horas.
  • Os arquivos de áudio são redimensionados para uma resolução de dados de 16 Kbps, e vários canais de áudio são combinados em um único canal.
  • Não há um limite específico para o número de arquivos de áudio em um comando.No entanto, a duração total combinada de todos os arquivos de áudio em um comando não pode exceder 9,5 horas.

Formatos de vídeo

Você pode usar dados de vídeo para comandos nos modelos Gemini 1.5.

  • Os dados de vídeo são compatíveis com os seguintes tipos MIME de formato de vídeo comuns:

    • video/mp4
    • video/mpeg
    • vídeo/mover
    • vídeo/avi
    • video/x-flv
    • vídeo/mpg
    • vídeo/webm
    • vídeo/wmv
    • vídeo/3gpp
  • O serviço da API File fornece amostras de vídeos em imagens a 1 quadro por segundo (QPS) e pode estar sujeito a alterações para oferecer a melhor qualidade de inferência. Imagens individuais ocupam 258 tokens, independentemente da resolução e da qualidade.

Formatos de texto simples

A API File é compatível com o upload de arquivos de texto simples com os seguintes tipos MIME:

  • text/plain
  • text/html
  • text/css
  • text/javascript
  • application/x-javascript
  • texto/x-typescript
  • aplicativo/x-typescript
  • text/csv
  • texto/marcação
  • texto/x-python
  • application/x-python-code
  • application/json
  • text/xml
  • aplicativo/rtf
  • texto/rtf

Para arquivos de texto simples com um tipo MIME que não esteja na lista, tente especificar manualmente um dos tipos MIME acima.