Compila conversaciones de varios turnos (chat) con la API de Gemini


Con Gemini API, puedes crear conversaciones de formato libre en varios turnos. El SDK de Vertex AI in Firebase simplifica el proceso administrando el estado de la conversación, por lo que, a diferencia de generateContentStream() o generateContent(), no tienes que almacenar el historial de conversaciones por tu cuenta.

Antes de comenzar

Si aún no lo hiciste, completa la guía de introducción a los SDKs de Vertex AI in Firebase. Asegúrate de haber hecho lo siguiente:

  1. Configura un proyecto de Firebase nuevo o existente, incluido el uso del plan de precios Blaze y la habilitación de las APIs requeridas.

  2. Conecta tu app a Firebase, lo que incluye registrarla y agregar la configuración de Firebase a la app.

  3. Agrega el SDK y, luego, inicializa el servicio de Vertex AI y el modelo generativo en tu app.

Una vez que hayas conectado tu app a Firebase, agregado el SDK y inicializado el servicio Vertex AI y el modelo generativo, todo estará listo para llamar a Gemini API.

Envía una solicitud de instrucción de chat

Para crear una conversación de varios turnos (como un chat), primero inicializa el chat llamando a startChat(). Luego, usa sendMessageStream() (o sendMessage()) para enviar un nuevo mensaje del usuario, que también adjuntará el mensaje y la respuesta al historial de chat.

Hay dos opciones posibles para role asociadas con el contenido de una conversación:

  • user: Es el rol que proporciona las instrucciones. Este valor es el predeterminado para las llamadas a sendMessageStream() (o sendMessage()), y la función arroja una excepción si se pasa un rol diferente.

  • model: Es el rol que proporciona las respuestas. Este rol se puede usar cuando se llama a startChat() con history existente.

Elige si quieres transmitir la respuesta (sendMessageStream) o esperar a que se genere todo el resultado (sendMessage).

Transmisión

Puedes lograr interacciones más rápidas si no esperas a que se genere todo el resultado del modelo y, en su lugar, usas la transmisión para controlar los resultados parciales.

Sin transmisión

Como alternativa, puedes esperar a que se muestre todo el resultado en lugar de transmitirlo. El resultado solo se muestra después de que el modelo completa todo el proceso de generación.

Aprende a elegir un modelo de Gemini y, de manera opcional, una ubicación adecuada para tu caso de uso y app.

¿Qué más puedes hacer?

  • Aprende a contar tokens antes de enviar instrucciones largas al modelo.
  • Configura Cloud Storage for Firebase para que puedas incluir archivos grandes en tus solicitudes multimodales y tener una solución más administrada para proporcionar archivos en instrucciones. Los archivos pueden incluir imágenes, archivos PDF, videos y audio.
  • Comienza a pensar en prepararte para la producción, lo que incluye configurar Firebase App Check para proteger el Gemini API del abuso de clientes no autorizados.

Prueba otras funciones de Gemini API

Aprende a controlar la generación de contenido

También puedes experimentar con instrucciones y configuraciones de modelos con Vertex AI Studio.

Más información sobre los modelos de Gemini

Obtén información sobre los modelos disponibles para varios casos de uso y sus cuotas y precios.


Envía comentarios sobre tu experiencia con Vertex AI in Firebase