Memecahkan masalah Gemini Live API

Dokumen ini memberikan langkah-langkah pemecahan masalah untuk masalah yang mungkin Anda temui saat menggunakan Gemini Live API.

Koneksi terputus secara tiba-tiba

Jika koneksi sesi Anda terputus secara tiba-tiba, hal ini mungkin disebabkan oleh batas token, waktu tunggu koneksi sesi, atau masalah jaringan.

Perilaku

Sesi terputus dengan kode error 1000 atau 1006.

Kemungkinan penyebab

  • Kompresi jendela konteks tidak diaktifkan dan token konteks melebihi batas token konteks sesi (hingga 128 ribu).
  • Tidak ada logika kelanjutan sesi yang diterapkan atau logika kelanjutan tidak diterapkan dengan benar.
  • Koneksi internet tidak stabil.

Penyebab dan solusi

  • Token melebihi batas token konteks sesi: Untuk mencegah token melebihi batas token konteks sesi, aktifkan kompresi konteks. Hal ini dapat memengaruhi kualitas percakapan, karena model akan sesekali menghapus bagian awal histori chat.

  • Koneksi sesi berakhir setelah 10 menit: Kelola kelanjutan sesi untuk memungkinkan interaksi yang lebih lama. Untuk mengetahui detail selengkapnya, lihat praktik terbaik untuk kelanjutan sesi.

  • Koneksi internet tidak stabil: Verifikasi kondisi koneksi internet Anda, karena fluktuasi stabilitas dapat menyebabkan masalah konektivitas.

Model gagal memahami pengguna

Jika model tampaknya tidak memahami input Anda, pastikan audio Anda diformat dengan benar dan pertimbangkan kualitas mikrofon serta suara bising di latar belakang.

Perilaku

Model merespons dengan informasi yang tidak relevan, merespons dengan informasi yang salah, atau meminta pengguna untuk mengulang.

Kemungkinan penyebab

  • Format audio input tidak benar.
  • Kualitas mikrofon tidak bagus.
  • Suara bising di latar belakang terlalu tinggi.

Penyebab dan solusi

  • Format audio input tidak benar: Pastikan audio input menggunakan format PCM 16-bit little-endian dengan frekuensi sampling 16 kHz dan satu saluran mono.

  • Kualitas mikrofon tidak bagus: Uji kualitas mikrofon dengan merekam audio singkat dan memutarnya kembali. Jika kualitas mikrofon tidak bagus, coba gunakan mikrofon dengan kualitas yang lebih baik.

  • Suara bising di latar belakang terlalu tinggi: Uji tingkat suara bising di latar belakang dengan merekam audio singkat dan memutarnya kembali. Jika tingkat suara bising di latar belakang terlalu tinggi, coba pindahkan mikrofon lebih dekat ke pengguna atau gunakan mikrofon dengan peredam bising yang lebih baik.

Model tidak merespons

Jika Anda tidak menerima respons dari model, periksa opsi deteksi aktivitas suara dan koneksi WebSocket.

Perilaku

Tidak ada respons dari model.

Kemungkinan penyebab

  • Setelan VAD tidak disetel dengan benar.
  • Koneksi WebSocket terganggu.

Penyebab dan solusi

  • VAD disetel dengan salah: VAD dinonaktifkan oleh pengguna. Dalam hal ini, model akan terus menunggu ucapan pengguna dan tidak akan merespons pengguna. Pastikan untuk mengirim peristiwa ActivityStart dan ActivityEnd ke model jika VAD dinonaktifkan.

  • Koneksi WebSocket terganggu: Jika koneksi WebSocket terganggu, tidak akan ada komunikasi antara klien dan server. Periksa status koneksi WebSocket dan pastikan koneksi tersebut dibuat dengan benar.

Tidak dapat mengganggu model

Jika Anda tidak dapat mengganggu model saat model sedang berbicara, pastikan Anda menangani buffer pemutaran dan streaming audio dengan benar.

Perilaku

Model terus berbicara tanpa gangguan dari pengguna.

Kemungkinan penyebab

  • Gagal mengosongkan buffer pemutaran.
  • Gagal melakukan streaming audio ke Gemini Live API.
  • VAD yang disesuaikan tidak diterapkan dengan benar.

Penyebab dan solusi

  • Gagal mengosongkan buffer pemutaran: Klien harus segera mengosongkan buffer pemutaran saat menerima sinyal gangguan dari model. Jika tidak, model akan terus berbicara.

  • Gagal melakukan streaming audio ke Gemini Live API: Klien harus melakukan streaming audio ke Gemini Live API dalam potongan antara 20 md dan 40 md untuk meminimalkan latensi. Jika klien gagal melakukan streaming audio ke Gemini Live API, model tidak akan mengirim sinyal gangguan ke klien.

  • VAD yang disesuaikan tidak diterapkan dengan benar: Jika VAD yang disesuaikan gagal mengenali awal ucapan atau klien gagal mengirim sinyal ActivityStart ke model, model tidak akan mengirim sinyal gangguan ke klien.