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 parlate specificandole 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 -- Spensierata
Enceladus -- Sussurrata
Algieba -- Morbida
Algenib -- Ruvida
Achernar -- Delicata
Gacrux -- Matura
Zubenelgenubi -- Informale
Sadaltager -- Competente
Caronte -- Informativo
Leda -- Giovanile
Calliroe -- Tranquillo
Giapeto -- Chiaro
Despina -- Delicato
Rasalgethi -- Informativo
Alnilam -- Fermo
Pulcherrima -- Avanti
Vindemiatrix -- Delicato
Sulafat -- Caldo

Lingue supportate

L'API Gemini Live supporta le seguenti lingue:

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

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. Solo le informazioni già inviate al cliente vengono conservate nella cronologia della sessione. Il server invia quindi un messaggio BidiGenerateContentServerContent per segnalare l'interruzione. Il server quindi elimina 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