Questo documento fornisce passaggi per la risoluzione dei problemi che potresti riscontrare quando utilizzi l'API Gemini Live.
La connessione si interrompe in modo imprevisto
Se la connessione della sessione si interrompe inaspettatamente, il problema potrebbe essere dovuto a limiti dei token, timeout della connessione della sessione o problemi di rete.
Comportamento
Sessione disconnessa con codice di errore 1000 o 1006.
Possibili motivi
- La compressione della finestra contestuale non è attivata e il token contestuale supera il limite di token contestuali della sessione (fino a 128.000).
- Non è implementata alcuna logica di ripresa della sessione o la logica di ripresa non è implementata correttamente.
- Connessione a internet instabile.
Motivi e soluzioni
I token superano il limite di token di contesto della sessione: Per evitare di superare il limite di token di contesto della sessione, attiva la compressione del contesto. Ciò potrebbe influire sulla qualità della conversazione, in quanto il modello scarta a intermittenza le parti precedenti della cronologia chat.
La connessione della sessione scade dopo 10 minuti: Gestisci il ripristino della sessione per consentire interazioni più lunghe. Per ulteriori dettagli, consulta le best practice per la ripresa delle sessioni.
Connessione a internet instabile:verifica le condizioni della connessione a internet, poiché le fluttuazioni di stabilità possono causare problemi di connettività.
Il modello non è riuscito a comprendere l'utente
Se il modello non sembra comprendere il tuo input, assicurati che l'audio sia formattato correttamente e valuta la qualità del microfono e il rumore di fondo.
Comportamento
Il modello risponde con informazioni non pertinenti, con informazioni errate o chiede all'utente di ripetere.
Possibili motivi
- Il formato audio di input non è corretto.
- La qualità del microfono non è buona.
- Il rumore di fondo è troppo alto.
Motivi e soluzioni
Il formato audio di input non è corretto: verifica che l'audio di input utilizzi un formato PCM a 16 bit little-endian con una frequenza di campionamento di 16 kHz e un singolo canale mono.
La qualità del microfono non è buona: testa la qualità del microfono registrando un breve audio e riproducendolo. Se la qualità del microfono non è buona, prova a utilizzarne uno di qualità migliore.
Il rumore di fondo è troppo alto: Prova il livello di rumore di fondo registrando un breve audio e riproducendolo. Se il livello di rumore di fondo è troppo alto, prova ad avvicinare il microfono all'utente o a utilizzarne uno con una migliore cancellazione del rumore.
Il modello non risponde
Se non ricevi una risposta dal modello, controlla le opzioni di rilevamento dell'attività vocale e la connessione WebSocket.
Comportamento
Nessuna risposta dal modello.
Possibili motivi
- Le impostazioni VAD non sono impostate correttamente.
- La connessione WebSocket è stata interrotta.
Motivi e soluzioni
VAD impostato in modo errato: VAD è disattivato dall'utente. In questo caso, il modello continuerà ad aspettare il discorso dell'utente e non risponderà. Se il rilevamento dell'attività vocale è disattivato, assicurati di inviare gli eventi
ActivityStarteActivityEndal modello.La connessione WebSocket è stata interrotta: Se la connessione WebSocket viene interrotta, non ci sarà comunicazione tra il client e il server. Controlla lo stato della connessione WebSocket e assicurati che sia stabilita correttamente.
Impossibile interrompere il modello
Se non riesci a interrompere il modello mentre parla, assicurati di gestire correttamente il buffer di riproduzione e lo streaming audio.
Comportamento
Il modello continua a parlare senza interruzioni da parte dell'utente.
Possibili motivi
- Impossibile svuotare il buffer di riproduzione.
- Impossibile trasmettere in streaming l'audio all'API Gemini Live.
- Il VAD personalizzato non è implementato correttamente.
Motivi e soluzioni
Impossibile svuotare il buffer di riproduzione: il client deve svuotare immediatamente il buffer di riproduzione quando riceve un segnale di interruzione dal modello. In caso contrario, il modello continuerà a parlare.
Impossibile trasmettere in streaming l'audio all'API Gemini Live: il client deve trasmettere in streaming l'audio all'API Gemini Live in blocchi compresi tra 20 ms e 40 ms per ridurre al minimo la latenza. Se il client non riesce a trasmettere l'audio all'API Gemini Live, il modello non invierà un segnale di interruzione al client.
L'attivazione vocale personalizzata non è implementata correttamente: se l'attivazione vocale personalizzata non riconosce l'inizio del discorso o se il client non invia il segnale
ActivityStartal modello, quest'ultimo non invierà un segnale di interruzione al client.