Configurer la langue et la voix

Ce document explique comment configurer les réponses vocales synthétisées et la détection d'activité vocale dans l'API Gemini Live. Vous pouvez configurer des réponses dans différentes voix et langues HD, et également configurer les paramètres de détection de l'activité vocale pour permettre aux utilisateurs d'interrompre le modèle.

Définir la langue et la voix

Les modèles audio natifs tels que gemini-live-2.5-flash-native-audio peuvent passer d'une langue à l'autre de manière naturelle au cours d'une conversation. Vous pouvez également limiter les langues qu'il utilise en les spécifiant dans les instructions système.

Pour les modèles non audio natifs tels que gemini-live-2.5-flash, vous pouvez configurer la langue dans speech_config.language_code.

La voix est configurée dans le champ voice_name pour tous les modèles.

L'exemple de code suivant vous montre comment configurer la langue et la voix.

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",
  ),
)

Voix compatibles

L'API Gemini Live est compatible avec les 30 options vocales suivantes dans le champ voice_name :

Zephyr : Lumineux
Kore : Ferme
Orus : Ferme
Autonoe : Lumineux
Umbriel : Détendu
Erinome : Clair
Laomedeia : Joyeux
Schedar : Équilibré
Achird : Amical
Sadachbia : Vif
Puck : Entraînant
Fenrir : Enthousiaste
Aoede : Détendu
Enceladus : Soufflé
Algieba : Doux
Algenib : Graveleux
Achernar : Doux
Gacrux : Mature
Zubenelgenubi : Décontracté
Sadaltager : Informé
Charon : Informatif
Leda : Jeune
Callirrhoé : Détendu
Japet : Clair
Despina : Doux
Rasalgethi : Informatif
Alnilam : Ferme
Pulcherrima : Direct
Vindemiatrix : Doux
Sulafat : Chaleureux

Langues acceptées

L'API Gemini Live est compatible avec les 24 langues suivantes :

Langue Code BCP-47 Langue Code BCP-47
Arabe (Égypte) ar-EG Allemand (Allemagne) de-DE
Anglais (États-Unis) en-US Espagnol (États-Unis) es-US
Français (France) fr-FR Hindi (Inde) hi-IN
Indonésien (Indonésie) id-ID Italien (Italie) it-IT
Japonais (Japon) ja-JP Coréen (Corée) ko-KR
Portugais (Brésil) pt-BR Russe (Russie) ru-RU
Néerlandais (Pays-Bas) nl-NL Polonais (Pologne) pl-PL
Thaï (Thaïlande) th-TH Turc (Turquie) tr-TR
Vietnamien (Viêt Nam) vi-VN Roumain (Roumanie) ro-RO
Ukrainien (Ukraine) uk-UA Bengali (Bangladesh) bn-BD
Anglais (Inde) Pack en-IN et hi-IN Marathi (Inde) mr-IN
Tamoul (Inde) ta-IN Télougou (Inde) te-IN

Configurer la détection de l'activité vocale

La détection de l'activité vocale (VAD, Voice Activity Detection) permet au modèle de reconnaître quand une personne parle. C'est essentiel pour créer des conversations naturelles, car cela permet à un utilisateur d'interrompre le modèle à tout moment.

Lorsque la VAD détecte une interruption, la génération en cours est annulée et supprimée. Seules les informations déjà envoyées au client sont conservées dans l'historique de la session. Le serveur envoie ensuite un message BidiGenerateContentServerContent pour signaler l'interruption. Le serveur supprime ensuite tous les appels de fonction en attente et envoie un message BidiGenerateContentServerContent avec les ID des appels annulés.

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,
        }
    }
}
      

Étapes suivantes