Gerar texto de comandos multimodais usando a API Gemini


Ao chamar a API Gemini no seu app usando um SDK da Vertex AI para Firebase, é possível solicitar que o modelo do Gemini gere texto com base em uma entrada multimodal. Os comandos multimodais podem incluir várias modalidades (ou tipos de entrada), como texto com imagens, PDFs, vídeo e áudio.

Para testar e iterar comandos multimodais, recomendamos o uso do Vertex AI Studio.

Antes de começar

Siga as etapas do Guia explicativo para SDKs da Vertex AI para Firebase, caso ainda não tenha feito isso. Verifique se você fez o seguinte:

  • Configure um projeto novo ou atual do Firebase, incluindo o uso do plano de preços Blaze e a ativação das APIs necessárias.

  • Conecte seu app ao Firebase, incluindo o registro do app e a adição da configuração do Firebase ao app.

  • Adicione o SDK e inicialize o serviço da Vertex AI e o modelo generativo no seu app.

Depois de conectar seu app ao Firebase, adicionar o SDK e inicializar o serviço da Vertex AI e o modelo generativo, você pode chamar a API Gemini.

Gerar texto com base em um texto e uma única imagem

Verifique se você concluiu a seção Antes de começar deste guia antes de testar este exemplo.

Você pode chamar a API Gemini com comandos multimodais que incluem texto e um único arquivo (como uma imagem, como neste exemplo). Para essas chamadas, você precisa usar um modelo que ofereça suporte a comandos multimodais, como o Gemini 1.5 Pro.

Os arquivos compatíveis incluem imagens, PDFs, vídeo, áudio e muito mais. Revise os requisitos e recomendações para arquivos de entrada.

Escolha se você quer transmitir a resposta (generateContentStream) ou aguardar a resposta até que todo o resultado seja gerado (generateContent).

Streaming

Para ter interações mais rápidas, não espere o resultado completo da geração do modelo e, em vez disso, use o streaming para processar resultados parciais.

Este exemplo mostra como usar generateContentStream() para fazer streaming do texto gerado de uma solicitação de comando multimodal que inclui texto e uma única imagem:

Sem streaming

Como alternativa, aguarde o resultado inteiro em vez de fazer streaming. O resultado só será retornado depois que o modelo concluir todo o processo de geração.

Este exemplo mostra como usar generateContent() para gerar texto com base em uma solicitação de comando multimodal que inclui texto e uma única imagem:

Aprenda a escolher um modelo do Gemini e, opcionalmente, um local adequado para seu caso de uso e app.

Gerar texto com base em textos e várias imagens

Verifique se você concluiu a seção Antes de começar deste guia antes de testar este exemplo.

Você pode chamar a API Gemini com comandos multimodais que incluem texto e vários arquivos (como imagens, como neste exemplo). Para essas chamadas, você precisa usar um modelo que ofereça suporte a comandos multimodais, como o Gemini 1.5 Pro.

Os arquivos compatíveis incluem imagens, PDFs, vídeo, áudio e muito mais. Revise os requisitos e recomendações para arquivos de entrada.

Escolha se você quer transmitir a resposta (generateContentStream) ou aguardar a resposta até que todo o resultado seja gerado (generateContent).

Streaming

Para ter interações mais rápidas, não espere o resultado completo da geração do modelo e, em vez disso, use o streaming para processar resultados parciais.

Este exemplo mostra como usar generateContentStream() para fazer streaming do texto gerado por uma solicitação de comando multimodal que inclui texto e várias imagens:

Sem streaming

Como alternativa, é possível aguardar o resultado inteiro em vez de fazer streaming. O resultado só será retornado depois que o modelo concluir todo o processo de geração.

Este exemplo mostra como usar generateContent() para gerar texto com base em uma solicitação de comando multimodal que inclui texto e várias imagens:

Aprenda a escolher um modelo do Gemini e, opcionalmente, um local adequado para seu caso de uso e app.

Gerar texto com base em textos e vídeos

Verifique se você concluiu a seção Antes de começar deste guia antes de testar este exemplo.

Você pode chamar a API Gemini com comandos multimodais que incluem texto e um único vídeo, como neste exemplo. Para essas chamadas, você precisa usar um modelo que ofereça suporte a comandos multimodais, como o Gemini 1.5 Pro.

Revise os requisitos e recomendações para arquivos de entrada.

Escolha se você quer transmitir a resposta (generateContentStream) ou aguardar a resposta até que todo o resultado seja gerado (generateContent).

Streaming

Para ter interações mais rápidas, não espere o resultado completo da geração do modelo e, em vez disso, use o streaming para processar resultados parciais.

Este exemplo mostra como usar generateContentStream() para fazer streaming do texto gerado por uma solicitação de comando multimodal que inclui texto e um único vídeo:

Sem streaming

Como alternativa, aguarde o resultado inteiro em vez de fazer streaming. O resultado só será retornado depois que o modelo concluir todo o processo de geração.

Este exemplo mostra como usar generateContent() para gerar texto com base em uma solicitação de comando multimodal que inclui texto e um único vídeo:

Aprenda a escolher um modelo do Gemini e, opcionalmente, um local adequado para seu caso de uso e app.

Requisitos e recomendações para arquivos de entrada

Para saber mais sobre os tipos de arquivo com suporte, como especificar o tipo MIME e como garantir que seus arquivos e solicitações multimodais atendam aos requisitos e sigam as práticas recomendadas, consulte Arquivos de entrada compatíveis e requisitos para a API Gemini da Vertex AI.

O que mais você pode fazer?

Teste outros recursos da API Gemini

Saiba como controlar a geração de conteúdo

Também é possível testar comandos e configurações de modelos usando o Vertex AI Studio.

Saiba mais sobre os modelos do Gemini

Saiba mais sobre os modelos disponíveis para vários casos de uso e as cotas e preços deles.


Envie feedback sobre sua experiência com a Vertex AI para Firebase