Présentation du kit d'outils ADK Gemini Live API

1. Qu'est-ce que le streaming bidirectionnel ?

Le streaming bidirectionnel (bidi-streaming) permet une communication bidirectionnelle simultanée entre votre application et les modèles d'IA. Contrairement aux schémas de requête/réponse traditionnels, dans lesquels vous envoyez un message complet et attendez une réponse complète, le streaming bidirectionnel permet :

  • Entrée continue : diffusez de l'audio, de la vidéo ou du texte au fur et à mesure de leur capture.
  • Sortie en temps réel : recevez les réponses de l'IA au fur et à mesure de leur génération.
  • Interruption naturelle : les utilisateurs peuvent interrompre l'IA en cours de réponse, comme dans une conversation humaine.

6e82a81aa114e116.png

Pourquoi est-ce important ? Le streaming bidirectionnel rend les conversations avec l'IA plus naturelles. L'IA peut répondre pendant que vous fournissez encore du contexte, et vous pouvez l'interrompre quand vous en avez assez entendu, comme si vous parliez à un humain.

Qu'est-ce que le kit d'outils de l'API Gemini Live dans ADK ?

L'Agent Development Kit (ADK) fournit une abstraction de haut niveau sur l'API Gemini Live, en gérant la plomberie complexe du streaming en temps réel afin que vous puissiez vous concentrer sur la création de votre application.

b0066935f4c245d2.png

Le kit d'outils de l'API Gemini Live dans ADK gère les éléments suivants :

  • Cycle de vie de la connexion : établissement, maintenance et récupération des connexions WebSocket
  • Routage des messages : redirection des contenus audio, textuels et des images vers les gestionnaires appropriés
  • État de la session : persistance de l'historique des conversations lors des reconnexions
  • Exécution d'outils : appel et reprise automatiques à partir d'appels de fonction

Pourquoi utiliser l'ADK plutôt que l'API Live brute ?

Vous pouvez créer directement sur l'API Gemini Live, mais ADK gère l'infrastructure complexe pour que vous puissiez vous concentrer sur votre application :

61c685c2703e3aac.png

Capacité

API Live brute

Kit d'outils de l'API Gemini Live dans ADK

Framework de l'agent

Créer entièrement

Agent unique/multi-agent avec outils, évaluation, sécurité

Exécution d'outils

Manutention manuelle

Exécution parallèle automatique

Gestion des connexions

Reconnecter manuellement

Reprise de session transparente

Modèle d'événement

Structures personnalisées

Objets d'événement unifiés et typés

Framework asynchrone

Coordination manuelle

Générateur LiveRequestQueue + run_live()

Persistance de session

Implémentation manuelle

SQL, Vertex AI ou en mémoire intégrés

En résumé : l'ADK permet de réduire le développement de l'infrastructure de plusieurs mois à quelques jours. Vous vous concentrez sur ce que fait votre agent, et non sur le fonctionnement du streaming.

Cas d'utilisation concrets

  • Service client : un client montre sa machine à café défectueuse à l'aide de la caméra de son téléphone tout en expliquant le problème. L'IA identifie le modèle et le point de défaillance, et le client peut l'interrompre pour corriger des informations en cours de conversation.
  • E-commerce : un client tient un vêtement devant sa webcam et demande "Trouve des chaussures qui vont avec ce pantalon". L'agent analyse le style et engage une conversation fluide : "Montre-moi quelque chose de plus décontracté" → "Que penses-tu de ces baskets ?" → "Ajoute les bleues en taille 40."
  • Service sur le terrain : un technicien équipé de lunettes connectées diffuse sa vue en direct et demande : "J'entends un bruit étrange provenant de ce compresseur. Pouvez-vous l'identifier ?" L'agent fournit des instructions détaillées en mode mains libres.
  • Santé : un patient partage une vidéo en direct d'un problème de peau. L'IA effectue une analyse préliminaire, pose des questions pour obtenir des précisions et vous guide pour la suite.
  • Services financiers : un client examine son portefeuille tandis que l'agent affiche des graphiques et simule les impacts commerciaux. Le client peut partager son écran pour discuter d'articles d'actualité spécifiques.

Démonstration de Shopper's Concierge 2 : démonstration de RAG agentique en temps réel pour l'e-commerce, conçue avec ADK Gemini Live API Toolkit et les API Vertex AI Vector Search, Embeddings, Feature Store et Ranking :

Démo 2 de Shopper's Concierge

En savoir plus : Guide du développeur

Pour une présentation détaillée, consultez le Guide du développeur du kit d'outils de l'API Gemini Live dans ADK, une série en cinq parties qui couvre l'architecture et le déploiement en production :

Partie

Mise au point

Au programme

Partie 1

Fondation

Architecture, plates-formes d'API Live, cycle de vie en quatre phases

Partie 2

En amont

Envoyer du texte, de l'audio et des vidéos via LiveRequestQueue

Partie 3

En aval

Gestion des événements, exécution des outils, workflows multi-agents

Partie 4

Configuration

Gestion des sessions, quotas, contrôles de production

Partie 5

Multimodal

Spécifications audio, architectures de modèles, fonctionnalités avancées

2. Présentation de l'atelier

Objectifs de l'atelier

Dans cet atelier pratique, vous allez créer une application d'IA de streaming bidirectionnel complète de A à Z. À la fin de cet atelier, vous disposerez d'une IA vocale fonctionnelle capable de :

  • Accepter les entrées de texte, audio et d'image
  • Répondre avec du texte en streaming ou une voix naturelle
  • Gérer les interruptions de manière naturelle
  • Utiliser des outils comme la recherche Google

Contrairement à la lecture de la documentation, vous examinerez chaque composant étape par étape, en comprenant comment les éléments s'assemblent à mesure que vous développez de manière incrémentielle.

Démonstration du kit d'outils de l'API Gemini Live dans ADK

Approche d'apprentissage

Nous suivons une approche de compilation incrémentielle :

  • Étape 1 : Serveur WebSocket minimal → Réponse "Hello World"
  • Étape 2 : Ajouter l'agent → Définir le comportement et les outils de l'IA
  • Étape 3 : Initialisation de l'application → Service de session et d'exécution
  • Étape 4 : Initialisation de la session → RunConfig et LiveRequestQueue
  • Étape 5 : Tâche en amont → Communication entre le client et la file d'attente
  • Étape 6 : Tâche en aval → Diffusion d'événements au client
  • Étape 7 : Ajouter de l'audio → Saisie et sortie vocales
  • Étape 8 : Ajouter une entrée d'image → IA multimodale

Chaque étape s'appuie sur la précédente. Vous effectuerez un test après chaque étape pour vérifier votre progression.

Prérequis

  • Compte Google Cloud avec facturation activée
  • Connaissances de base en programmation Python et asynchrone (async/await)
  • Navigateur Web avec accès au micro et à la webcam (Chrome recommandé)

Durée approximative

  • Atelier complet : environ 90 minutes
  • Version rapide (étapes 1 à 4 uniquement) : environ 45 minutes

3. Atelier

Commencez l'atelier en suivant les instructions ici :

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

4. Récapitulatif et points à retenir

Ce que vous avez créé

Vous avez créé une application d'IA de streaming bidirectionnel complet à partir de zéro. L'application gère les entrées de texte, de voix et d'image avec des réponses en streaming en temps réel, ce qui constitue la base pour créer une IA conversationnelle prête pour la production.

Composant

Fonctionnement

Step

Agent

Définit la personnalité de l'IA, les instructions et les outils disponibles (par exemple, la recherche Google)

Étape 2

SessionService

Conserve l'historique des conversations lors des reconnexions

Étape 3

Exécuteur

Orchestre le cycle de vie du streaming et connecte l'agent à l'API Live

Étape 3

RunConfig

Configure la modalité de réponse (TEXT/AUDIO), la transcription et la reprise de session

Étape 4

LiveRequestQueue

Interface unifiée pour envoyer du texte, de l'audio et des images au modèle

Étape 5

run_live()

Générateur asynchrone qui génère des événements de streaming à partir du modèle

Étape 6

send_realtime()

Envoie des blobs audio/d'image pour les flux d'entrée en continu

Étapes 7 et 8

Ressources

Continuez à vous familiariser avec ces ressources officielles. Le guide du kit d'outils de l'API Gemini Live dans ADK fournit des informations plus détaillées sur tous les aspects abordés dans cet atelier.

Ressource

URL

Documentation ADK

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

Guide du kit d'outils de l'API Gemini Live dans ADK

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

API Gemini Live

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

API Vertex AI Live

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

Dépôt d'exemples ADK

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