Configurare la lingua e la voce

Questo documento descrive come configurare le risposte di sintesi vocale e il rilevamento dell'attività vocale nell'API Gemini Live. Puoi configurare le risposte in una varietà di voci e lingue in HD e anche configurare le impostazioni di rilevamento dell'attività vocale per consentire agli utenti di interrompere il modello.

Impostare la lingua e la voce

I modelli audio nativi come gemini-live-2.5-flash-native-audio possono passare da una lingua all'altra in modo naturale durante la conversazione. Puoi anche limitare le lingue che parla specificandolo nelle istruzioni di sistema.

Per i modelli audio non nativi come gemini-live-2.5-flash, puoi configurare la lingua in speech_config.language_code.

La voce è configurata nel campo voice_name per tutti i modelli.

Il seguente esempio di codice mostra come configurare la lingua e la voce.

from google.genai.types import LiveConnectConfig, SpeechConfig, VoiceConfig, PrebuiltVoiceConfig

config = LiveConnectConfig(
  response_modalities=["AUDIO"],
  speech_config=SpeechConfig(
    voice_config=VoiceConfig(
        prebuilt_voice_config=PrebuiltVoiceConfig(
            voice_name=voice_name,
        )
    ),
    language_code="en-US",
  ),
)

Voci supportate

L'API Gemini Live supporta le seguenti 30 opzioni vocali nel campo voice_name:

Zephyr -- Brillante
Kore -- Fermo
Orus -- Fermo
Autonoe -- Brillante
Umbriel -- Tranquillo
Erinome -- Chiaro
Laomedeia -- Vivace
Schedar -- Uniforme
Achird -- Amichevole
Sadachbia -- Vivace
Puck -- Vivace
Fenrir -- Entusiasta
Aoede -- Spensierato
Enceladus -- Sussurrante
Algieba -- Morbido
Algenib -- Ruvido
Achernar -- Delicato
Gacrux -- Maturo
Zubenelgenubi -- Informale
Sadaltager -- Competente
Caronte -- Informativo
Leda -- Giovanile
Calliroe -- Tranquillo
Giapeto -- Chiaro
Despina -- Delicato
Rasalgethi -- Informativo
Alnilam -- Fermo
Pulcherrima -- Diretto
Vindemiatrix -- Delicato
Sulafat -- Caldo

Lingue supportate

L'API Gemini Live supporta le seguenti 24 lingue:

Lingua Codice BCP-47 Lingua Codice BCP-47
Arabo (egiziano) ar-EG Tedesco (Germania) de-DE
Inglese (USA) en-US Spagnolo (USA) es-US
Francese (Francia) fr-FR Hindi (India) hi-IN
Indonesiano (Indonesia) id-ID Italiano (Italia) it-IT
Giapponese (Giappone) ja-JP Coreano (Corea) ko-KR
Portoghese (Brasile) pt-BR Russo (Russia) ru-RU
Olandese (Paesi Bassi) nl-NL Polacco (Polonia) pl-PL
Thailandese (Thailandia) th-TH Turco (Turchia) tr-TR
Vietnamita (Vietnam) vi-VN Rumeno (Romania) ro-RO
Ucraino (Ucraina) uk_UA Bengalese (Bangladesh) bn-BD
Inglese (India) Bundle en-IN e hi-IN Marathi (India) mr-IN
Tamil (India) ta-IN Telugu (India) te-IN

Configurare il rilevamento dell'attività vocale

Il rilevamento dell'attività vocale (VAD) consente al modello di riconoscere quando una persona sta parlando. Questo è essenziale per creare conversazioni naturali, perché consente a un utente di interrompere il modello in qualsiasi momento.

Quando VAD rileva un'interruzione, la generazione in corso viene annullata e ignorata. Nella cronologia della sessione vengono conservate solo le informazioni già inviate al cliente. Il server invia quindi un messaggio BidiGenerateContentServerContent per segnalare l'interruzione. Il server elimina quindi tutte le chiamate di funzione in attesa e invia un messaggio BidiGenerateContentServerContent con gli ID delle chiamate annullate.

Python

config = {
    "response_modalities": ["audio"],
    "realtime_input_config": {
        "automatic_activity_detection": {
            "disabled": False, # default
            "start_of_speech_sensitivity": "low",
            "end_of_speech_sensitivity": "low",
            "prefix_padding_ms": 20,
            "silence_duration_ms": 100,
        }
    }
}
      

Passaggi successivi