Crie conversas de vários turnos (chat) com a API Gemini


Com a API Gemini, é possível criar conversas de formato livre em vários turnos. O SDK da Vertex AI para Firebase simplifica o processo gerenciando o estado da conversa. Portanto, ao contrário de generateContentStream() ou generateContent(), não é necessário armazenar o histórico de conversas por conta própria.

Antes de começar

Siga o guia para iniciantes dos SDKs da Vertex AI para Firebase, caso ainda não tenha feito isso. Verifique se você fez o seguinte:

  • Configurar 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 a ele.

  • Adicione o SDK e inicialize o serviço 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ê estará pronto para chamar a API Gemini.

Enviar uma solicitação de chat

Para criar uma conversa de várias interações (como um chat), inicialize o chat chamando startChat(). Em seguida, use sendMessageStream() (ou sendMessage()) para enviar uma mensagem de novo usuário, que também vai anexar a mensagem e a resposta ao histórico de chat.

Há duas opções possíveis de role associadas ao conteúdo em uma conversa:

  • user: o papel que fornece as solicitações. Esse valor é o padrão para chamadas para sendMessageStream() (ou sendMessage()), e a função gera uma exceção se um papel diferente for transmitido.

  • model: o papel que fornece as respostas. Esse papel pode ser usado ao chamar startChat() com history.

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

Streaming

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

Este exemplo mostra como usar sendMessageStream() para transmitir respostas do modelo:

Sem streaming

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

Este exemplo mostra como usar sendMessage() para enviar uma nova mensagem de usuário:

Saiba como escolher um modelo Genmini e, opcionalmente, um local adequado para seu caso de uso e app.

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