Introducción al kit de herramientas de la API de Gemini Live del ADK

1. ¿Qué es la transmisión bidireccional?

La transmisión bidireccional (bidi-streaming) permite la comunicación bidireccional simultánea entre tu aplicación y los modelos de IA. A diferencia de los patrones tradicionales de solicitud-respuesta en los que envías un mensaje completo y esperas una respuesta completa, la transmisión bidireccional permite lo siguiente:

  • Entrada continua: Transmite audio, video o texto a medida que se captura.
  • Salida en tiempo real: Recibe respuestas de IA a medida que se generan.
  • Interrupción natural: Los usuarios pueden interrumpir la IA en medio de la respuesta, al igual que en una conversación humana.

6e82a81aa114e116.png

Por qué es importante: La transmisión bidireccional hace que las conversaciones de IA se sientan naturales. La IA puede responder mientras sigues proporcionando contexto, y puedes interrumpirla cuando hayas escuchado lo suficiente, al igual que cuando hablas con un humano.

¿Qué es el kit de herramientas de la API de Gemini Live del ADK?

El kit de desarrollo de agentes (ADK) proporciona una abstracción de alto nivel sobre la API de Gemini Live, que controla la compleja infraestructura de la transmisión en tiempo real para que puedas enfocarte en compilar tu aplicación.

b0066935f4c245d2.png

El kit de herramientas de la API de Gemini Live del ADK administra lo siguiente:

  • Ciclo de vida de la conexión: Establecimiento, mantenimiento y recuperación de conexiones de WebSocket
  • Enrutamiento de mensajes: Dirige el audio, el texto y las imágenes a los controladores correctos.
  • Estado de la sesión: Conserva el historial de conversaciones en las reconexiones.
  • Ejecución de herramientas: Llama y reanuda automáticamente las llamadas a funciones.

¿Por qué usar el ADK en lugar de la API de Live sin procesar?

Podrías compilar directamente en la API de Gemini Live, pero el ADK controla la infraestructura compleja para que puedas enfocarte en tu aplicación:

61c685c2703e3aac.png

Capacidad

API de Live sin procesar

Kit de herramientas de la API de Gemini Live del ADK

Framework del agente

Compilación desde cero

Agente único o múltiple con herramientas, evaluación y seguridad

Ejecución de herramientas

Manejo manual

Ejecución paralela automática

Administración de conexiones

Reconexión manual

Reanudación transparente de la sesión

Modelo de evento

Estructuras personalizadas

Objetos de evento unificados y con tipo

Framework asíncrono

Coordinación manual

LiveRequestQueue + generador run_live()

Persistencia de la sesión

Implementación manual

SQL, Vertex AI o en memoria integrados

En resumen: El ADK reduce meses de desarrollo de infraestructura a días de desarrollo de aplicaciones. Te enfocas en lo que hace tu agente, no en cómo funciona la transmisión.

Casos de uso reales

  • Atención al cliente: Un cliente muestra su cafetera defectuosa a través de la cámara del teléfono mientras explica el problema. La IA identifica el modelo y el punto de falla, y el cliente puede interrumpir para corregir los detalles en medio de la conversación.
  • Comercio electrónico: Un comprador sostiene una prenda de vestir frente a su cámara web y pregunta: "Busca zapatos que combinen con estos pantalones". El agente analiza el estilo y participa en un intercambio fluido: "Muéstrame algo más informal" → "¿Qué te parecen estas zapatillas?" → "Agrega las azules en la talla 10".
  • Servicio de campo: Un técnico que usa anteojos inteligentes transmite su vista mientras pregunta: "Escucho un ruido extraño de este compresor. ¿Puedes identificarlo?" El agente proporciona orientación paso a paso sin usar las manos.
  • Atención médica: Un paciente comparte un video en vivo de una afección de la piel. La IA realiza un análisis preliminar, hace preguntas aclaratorias y guía los próximos pasos.
  • Servicios financieros: Un cliente revisa su cartera mientras el agente muestra gráficos y simula los impactos comerciales. El cliente puede compartir su pantalla para analizar artículos de noticias específicos.

Demostración de Shopper's Concierge 2: Demostración de RAG agentic en tiempo real para comercio electrónico, compilada con el kit de herramientas de la API de Gemini Live del ADK y Vertex AI Vector Search, Embeddings, Feature Store y Ranking API:

Demostración de Shopper's Concierge 2

Más información: Guía para desarrolladores

Para obtener información detallada, consulta la Guía para desarrolladores del kit de herramientas de la API de Gemini Live del ADK, una serie de 5 partes que abarca la arquitectura hasta la implementación de producción:

Parte

Enfoque

Qué aprenderá

Parte 1

Base

Arquitectura, plataformas de la API de Live, ciclo de vida de 4 fases

Parte 2

Upstream

Envío de texto, audio y video a través de LiveRequestQueue

Parte 3

Downstream

Manejo de eventos, ejecución de herramientas, flujos de trabajo multiagente

Parte 4

Configuración

Administración de sesiones, cuotas, controles de producción

Parte 5

Multimodal

Especificaciones de audio, arquitecturas de modelos, funciones avanzadas

2. Descripción general del taller

Qué compilará

En este taller práctico, compilarás desde cero una aplicación de IA de transmisión bidireccional completa. Al final, tendrás una IA de voz funcional que puede hacer lo siguiente:

  • Aceptar entradas de texto, audio y de imagen
  • Responder con texto de transmisión o voz natural
  • Manejar interrupciones de forma natural
  • Usar herramientas como la Búsqueda de Google

A diferencia de la lectura de documentación, examinarás cada componente paso a paso y comprenderás cómo encajan las piezas a medida que compilas de forma incremental.

Demostración del kit de herramientas de la API de Gemini Live del ADK

Enfoque de aprendizaje

Seguimos un enfoque de compilación incremental:

  • Paso 1: Servidor WebSocket mínimo → Respuesta "Hola, mundo"
  • Paso 2: Agrega el agente → Define el comportamiento y las herramientas de la IA
  • Paso 3: Inicialización de la aplicación → Ejecutor y servicio de sesión
  • Paso 4: Inicialización de la sesión → RunConfig y LiveRequestQueue
  • Paso 5: Tarea upstream → Comunicación del cliente a la cola
  • Paso 6: Tarea downstream → Eventos para la transmisión del cliente
  • Paso 7: Agrega audio → Entrada y salida de voz
  • Paso 8: Agrega entrada de imagen → IA multimodal

Cada paso se basa en el anterior. Realizarás pruebas después de cada paso para ver tu progreso.

Requisitos previos

  • Cuenta de Google Cloud con facturación habilitada
  • Conocimientos básicos de Python y programación asíncrona (async/await)
  • Navegador web con acceso al micrófono y a la cámara web (se recomienda Chrome)

Tiempo estimado

  • Taller completo: ~90 minutos
  • Versión rápida (solo pasos 1 a 4): ~45 minutos

3. Taller

Para comenzar el taller, sigue las instrucciones que se indican aquí:

https://github.com/kazunori279/adk-streaming-guide/blob/main/workshops/workshop.md

4. Resumen y conclusiones clave

Qué compilaste

Compilaste desde cero una aplicación de IA de transmisión bidireccional completa. La aplicación controla la entrada de texto, voz y de imagen con respuestas de transmisión en tiempo real, la base para compilar IA conversacional lista para producción.

Componente

Qué hace

Step

Agente

Define la personalidad, las instrucciones y las herramientas disponibles de la IA (p. ej., la Búsqueda de Google).

Paso 2

SessionService

Conserva el historial de conversaciones en las reconexiones.

Paso 3

Ejecutor

Organiza el ciclo de vida de la transmisión y conecta el agente a la API de Live.

Paso 3

RunConfig

Configura la modalidad de respuesta (TEXT/AUDIO), la transcripción y la reanudación de la sesión.

Paso 4

LiveRequestQueue

Interfaz unificada para enviar texto, audio y de imagen al modelo

Paso 5

run_live()

Generador asíncrono que produce eventos de transmisión del modelo

Paso 6

send_realtime()

Envía objetos binarios de audio o de imagen para la entrada de transmisión continua.

Pasos 7 y 8

Recursos

Sigue aprendiendo con estos recursos oficiales. La Guía del kit de herramientas de la API de Gemini Live del ADK proporciona una cobertura más detallada de todo lo que se incluye en este taller.

Recurso

URL

Documentación de ADK

https://google.github.io/adk-docs/

Guía del kit de herramientas de la API de Gemini Live del ADK

https://google.github.io/adk-docs/streaming/dev-guide/

API de Gemini Live

https://ai.google.dev/gemini-api/docs/live

API de Vertex AI Live

https://cloud.google.com/vertex-ai/generative-ai/docs/live-api

Repositorio de muestras de ADK

https://github.com/google/adk-samples