1. Che cos'è lo streaming bidirezionale?
Lo streaming bidirezionale (bidi-streaming) consente la comunicazione simultanea a due vie tra l'applicazione e i modelli di AI. A differenza dei pattern di richiesta-risposta tradizionali in cui invii un messaggio completo e aspetti una risposta completa, il bidi-streaming consente di:
- Input continuo: trasmetti in streaming audio, video o testo man mano che vengono acquisiti
- Output in tempo reale: ricevi le risposte dell'AI man mano che vengono generate
- Interruzione naturale: gli utenti possono interrompere l'AI a metà della risposta, proprio come in una conversazione umana

Perché è importante: il bidi-streaming rende le conversazioni con l'AI naturali. L'AI può rispondere mentre stai ancora fornendo il contesto e puoi interromperla quando hai sentito abbastanza, proprio come se stessi parlando con una persona.
Che cos'è il toolkit API ADK in Gemini Live?
L' Agent Development Kit (ADK) fornisce un'astrazione di alto livello sull' API Gemini Live, gestendo la complessa infrastruttura dello streaming in tempo reale in modo che tu possa concentrarti sulla creazione dell'applicazione.

Il toolkit API ADK in Gemini Live gestisce:
- Ciclo di vita della connessione: stabilisce, mantiene e ripristina le connessioni WebSocket
- Routing dei messaggi: indirizza audio, testo e immagini ai gestori corretti
- Stato della sessione: mantiene la cronologia delle conversazioni tra le riconnessioni
- Esecuzione dello strumento: chiama e riprende automaticamente le chiamate di funzione
Perché ADK anziché l'API Live non elaborata?
Potresti creare direttamente l'API Gemini Live, ma ADK gestisce l'infrastruttura complessa in modo che tu possa concentrarti sulla tua applicazione:

Capacità | API Live non elaborata | Toolkit API ADK in Gemini Live |
Framework dell'agente | Crea da zero | Agente singolo/multiplo con strumenti, valutazione, sicurezza |
Esecuzione dello strumento | Gestione manuale | Esecuzione parallela automatica |
Gestione delle connessioni | Riconnessione manuale | Ripresa della sessione trasparente |
Modello evento | Strutture personalizzate | Oggetti Event unificati e tipizzati |
Framework asincrono | Coordinamento manuale | Generatore LiveRequestQueue + run_live() |
Persistenza della sessione | Implementazione manuale | SQL, Vertex AI o in memoria integrati |
In sintesi: ADK riduce i mesi di sviluppo dell'infrastruttura a giorni di sviluppo dell'applicazione. Ti concentri su ciò che fa il tuo agente, non su come funziona lo streaming.
Casi d'uso del mondo reale
- Assistenza clienti: un cliente mostra la sua macchina da caffè difettosa tramite la fotocamera dello smartphone mentre spiega il problema. L'AI identifica il modello e il punto di guasto e il cliente può interrompere la conversazione per correggere i dettagli.
- E-commerce: un acquirente mostra un capo di abbigliamento alla webcam chiedendo "Trova scarpe che si abbinino a questi pantaloni". L'agente analizza lo stile e si impegna in un flusso di conversazione: "Mostrami qualcosa di più casual" → "Che ne dici di queste sneakers?" → "Aggiungi quelle blu nella taglia 43".
- Assistenza sul campo: un tecnico che indossa occhiali smart trasmette in streaming la sua visualizzazione mentre chiede "Sento uno strano rumore provenire da questo compressore. Puoi identificarlo?" L'agente fornisce indicazioni dettagliate passo passo senza l'uso delle mani.
- Sanità: un paziente condivide un video in diretta di una condizione della pelle. L'AI esegue un'analisi preliminare, pone domande chiarificatrici e guida i passaggi successivi.
- Servizi finanziari: un cliente esamina il suo portafoglio mentre l'agente mostra grafici e simula gli impatti commerciali. Il cliente può condividere lo schermo per discutere di articoli di notizie specifici.
Shopper's Concierge 2 Demo: demo RAG agentica in tempo reale per l'e-commerce, creata con il toolkit API ADK in Gemini Live e le API Vertex AI Vector Search, Embeddings, Feature Store e Ranking:

Scopri di più: Guida per gli sviluppatori
Per un approfondimento completo, consulta la Guida per gli sviluppatori del toolkit API ADK in Gemini Live, una serie in 5 parti che copre l'architettura e il deployment di produzione:
Parte | Messa a fuoco | Obiettivi didattici |
Fondazione | Architettura, piattaforme API Live, ciclo di vita in 4 fasi | |
Upstream | Invio di testo, audio, video tramite LiveRequestQueue | |
Downstream | Gestione degli eventi, esecuzione degli strumenti, workflow multi-agente | |
Configurazione | Gestione delle sessioni, quote, controlli di produzione | |
Multimodale | Specifiche audio, architetture dei modelli, funzionalità avanzate |
2. Panoramica del workshop
Cosa creerai
In questo workshop pratico, creerai da zero un'applicazione AI completa per lo streaming bidirezionale. Alla fine, avrai un'AI vocale funzionante in grado di:
- Accettare input di testo, audio e immagini
- Rispondere con testo in streaming o voce naturale
- Gestire le interruzioni in modo naturale
- Utilizzare strumenti come la Ricerca Google
A differenza della lettura della documentazione, esaminerai ogni componente passo dopo passo, comprendendo come i pezzi si incastrano man mano che crei in modo incrementale.

Approccio di apprendimento
Seguiamo un approccio di creazione incrementale:
- Passaggio 1: server WebSocket minimo → "Hello World" risposta
- Passaggio 2: aggiungi l'agente → definisci il comportamento e gli strumenti dell'AI
- Passaggio 3: inizializzazione dell'applicazione → runner e servizio di sessione
- Passaggio 4: inizializzazione della sessione → RunConfig e LiveRequestQueue
- Passaggio 5: attività upstream → comunicazione dal client alla coda
- Passaggio 6: attività downstream → eventi per lo streaming client
- Passaggio 7: aggiungi audio → input e output vocale
- Passaggio 8: aggiungi input di immagini → AI multimodale
Ogni passaggio si basa sul precedente. Eseguirai un test dopo ogni passaggio per verificare i tuoi progressi.
Prerequisiti
- Account Google Cloud con fatturazione abilitata
- Conoscenza di base della programmazione in Python e asincrona (async/await)
- Browser web con accesso a microfono e webcam (Chrome consigliato)
Stima del tempo
- Workshop completo: circa 90 minuti
- Versione rapida (solo passaggi 1-4): circa 45 minuti
3. Officina
Inizia il workshop seguendo le istruzioni riportate qui:
https://github.com/kazunori279/adk-streaming-guide/blob/main/workshops/workshop.md
4. Tempo di wrap up e concetti fondamentali
Cosa hai creato
Hai creato da zero un'applicazione AI completa per lo streaming bidirezionale. L'applicazione gestisce l'input di testo, voce e immagini con risposte di streaming in tempo reale, la base per la creazione di AI conversazionale pronta per la produzione.
Componente | Cosa fa | Passaggio |
Agente | Definisce la personalità, le istruzioni e gli strumenti disponibili dell'AI (ad es. Ricerca Google) | Passaggio 2 |
SessionService | Mantiene la cronologia delle conversazioni tra le riconnessioni | Passaggio 3 |
Runner | Orchestra il ciclo di vita dello streaming, collega l'agente all'API Live | Passaggio 3 |
RunConfig | Configura la modalità di risposta (TEXT/AUDIO), la trascrizione, la ripresa della sessione | Passaggio 4 |
LiveRequestQueue | Interfaccia unificata per l'invio di testo, audio e immagini al modello | Passaggio 5 |
run_live() | Generatore asincrono che genera eventi di streaming dal modello | Passaggio 6 |
send_realtime() | Invia blob audio/immagine per l'input di streaming continuo | Passaggio 7-8 |
Risorse
Continua a imparare con queste risorse ufficiali. La Guida al toolkit API ADK in Gemini Live fornisce una copertura più approfondita di tutto ciò che è incluso in questo workshop.
Risorsa | URL |
Documentazione ADK | |
Guida al toolkit API ADK in Gemini Live | |
API Gemini Live | |
API Vertex AI Live | https://cloud.google.com/vertex-ai/generative-ai/docs/live-api |
Repository di esempi ADK |