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 dados de texto, imagem, áudio e vídeo, também conhecidos como comandos multimodais, o que significa que você pode incluir esses tipos de mídia nos seus comandos. No caso de arquivos pequenos, aponte o modelo do Gemini diretamente para um arquivo local ao fornecer um comando. Faça upload de arquivos maiores com a opção File API antes de incluí-los no comandos

A API File permite que você armazene até 20 GB de arquivos por projeto, cada um sem com mais de 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 e não pode ser baixada da API. A API Files está disponível sem custos em todas as regiões onde A API Gemini está disponível.

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

Este guia mostra como usar a API File para fazer upload e incluir arquivos de mídia em uma chamada GenerateContent para a API Gemini. Para mais informações, consulte a código de amostra.

Formatos de arquivo compatíveis

Os modelos do Gemini oferecem suporte a comandos com vários formatos de arquivo. Esta seção explica as considerações sobre o uso de formatos de mídia gerais para comandos, especificamente arquivos de imagem, áudio, vídeo e texto simples. Você pode usar arquivos de mídia para comandos apenas com versões de modelo específicas, conforme mostrado tabela.

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. Quando você usa imagens para comandos, eles estão sujeitos às seguintes limitações e requisitos:

  • As imagens precisam estar em um dos seguintes dados de imagem MIME tipos:
    • 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, maiores imagens são reduzidas para se ajustarem a uma resolução máxima de 3072 x 3072, enquanto preservando a proporção original.

Formatos de áudio

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

  • Os dados de áudio são compatíveis com o seguinte formato de áudio comum: MIME tipos:
    • 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 reamostrados para uma resolução de dados de 16 Kbps e vários os 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 único 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 o seguinte formato de vídeo comum: MIME tipos:

    • video/mp4
    • video/mpeg
    • vídeo/mover
    • vídeo/avi
    • vídeo/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 podem estar sujeitos a mudanças para oferecer a melhor qualidade de inferência. Imagens individuais ocupam 258 tokens, independentemente da resolução e de 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
  • texto/javascript
  • application/x-javascript
  • text/x-typescript
  • application/x-typescript
  • text/csv
  • texto/marcação
  • text/x-python
  • application/x-python-code
  • aplicativo/json
  • texto/xml
  • application/rtf
  • texto/rtf

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