Firebase Genkit Monitoring: Monitorea el rendimiento de tu IA Generativa

4 min readApr 30, 2025

Hace unos días probando una aplicación que hice con Genkit, me percaté que demoraba al momento de generar una imagen con Imagen3, tenía la duda si era una caída del LLM, el tiempo de respuesta del modelo estaba demorando más de lo normal o mi petición se había caído antes de llegar a generar la imagen. Si bien durante el desarrollo local podemos depurar fácilmente nuestros proyectos, ¿Qué pasa cuando los llevamos a producción? ¿Cómo podemos monitorear su comportamiento y detectar problemas inesperados?

Por suerte, al desarrollar mi aplicación, agregué Firebase Genkit Monitoring y pude encontrar el problema. En este artículo les explicaré que es y como configurarlo en tus proyectos.

Firebase Genkit Monitoring

Es una función de Firebase que proporciona herramientas para observar y monitorear tus funciones de Genkit directamente desde la consola de Firebase. Te ayuda a ver el uso, comprender el estado, el rendimiento y el comportamiento de tus aplicaciones basadas en IA en un entorno real.

Al momento de escribir este artículo, Firebase Genkit Monitoring se encuentra en una fase de vista preliminar pública. La disponibilidad general y las funcionalidades podrían variar en el futuro.

Panel de Monitoring AI en la consola de Firebase.

Genkit está completamente instrumentado con OpenTelemetry y proporciona enlaces para exportar datos.

El complemento de Google Cloud exporta la telemetría al conjunto de operaciones de Cloud (Logging, Metrics y Trace).

¿Por qué es importante el monitoreo para IA Generativa?

Imagínate tener una aplicación en producción y necesitas calcular el uso de tokens para optimizar costos o comprender su escalabilidad. O quizás te enfrentas a llamadas fallidas a los modelos de lenguaje (LLM) y necesitas identificar las razones, como problemas de conexión o errores en la formulación de las consultas.

Esto es crucial cuando la IA generativa es un componente central de tu propuesta de valor, ya que incluso retrasos mínimos pueden deteriorar la experiencia del usuario y, a largo plazo, impactar negativamente en el éxito de tu proyecto. Aquí es donde la capacidad de observar y analizar el rendimiento de tus funciones de IA se vuelve indispensable.

¿Qué métricas y datos proporciona Firebase AI Monitoring?

Desde la consola de Firebase se puede ver el menú donde está la opción de Genkit, al hacer clic podremos ver panel de Genkit AI Monitoring donde nos muestran gráficos acerca de métricas de uso, índice de éxito y la latencia (p95).

  • Métricas de Uso: Permite entender el consumo de recursos y optimizar costos.
  • Índice de éxito: Indica la fiabilidad de tus funciones y ayuda a identificar problemas.
  • Latencia (p95): Muestra el tiempo de respuesta en el 95% de las solicitudes, crucial para la experiencia del usuario.

Además, si queremos ver los detalles de cada función, en el panel podremos esa información. Por ejemplo, si queremos ver la cantidad de tokens usados, podremos verlo en la columna de Entrada y salida.

Lista de funciones de mi proyecto FoodFit.

Ahora, si queremos ver los detalles de una función, podremos verlo haciendo clic en una de ellas.

Detalles de la función foodSuggestionFlow desde la consola de Firebase.

En la sección de Métricas de estabilidad, podemos ver gráficos que muestras detalladamente cuantos tokens usamos, a que hora nuestra función se disparó más e información adicional que nos puede ayudar con nuestro proyecto.

Métricas de estabilidad de la función foodSuggestionFlow.

Si queremos ver la traza de nuestra petición al modelo, podemos hacer clic en un registro y veremos los detalles.

Registro de una petición a la función foodSuggestionFlow.

Con toda esta información podremos ir analizando nuestras funciones.

Guía para usar Firebase Genkit Monitoring

Para habilitar la monitorización de IA en su aplicación Genkit, importe el complemento Firebase en tu proyecto y configure la telemetría de la siguiente manera:

import { enableFirebaseTelemetry } from '@genkit-ai/firebase';

enableFirebaseTelemetry();

Desde la consola de tu proyecto de Google Cloud, se deben tener estas APIs habilitadas:

Además, deber agregar unos permisos adicionales a tu cuenta de servicio predeterminada de Firebase:

  • Escritor de métricas de supervisión: Esta función proporciona los permisos para enviar métricas.
  • Agente de Cloud Trace: Puede escribir datos de seguimiento.
  • Escritor de métricas de telemetría de Cloud: Acceso para escribir registros.
Detalles de la cuenta de servicio predeterminada.

Y con esto, volver a desplegar tu proyecto a producción.

En resumen, Firebase Genkit Monitoring se presenta como una herramienta invaluable para cualquier desarrollador que trabaje con IA generativa en Genkit y Firebase. Proporciona la visibilidad necesaria para entender el rendimiento, optimizar costos y solucionar problemas en entornos de producción.

--

--

Luis Eduardo
Luis Eduardo

Written by Luis Eduardo

Community organizer. I love creating unique experiences on the web through code.

No responses yet