Cómo configurar el idioma y la voz

En este documento, se describe cómo configurar las respuestas de voz sintetizada y la detección de actividad de voz en la API de Gemini Live. Puedes configurar respuestas en una variedad de voces y lenguajes en HD, y también configurar los parámetros de configuración de detección de actividad de voz para permitir que los usuarios interrumpan el modelo.

Cómo configurar el idioma y la voz

Los modelos de audio nativos, como gemini-live-2.5-flash-native-audio, pueden cambiar de idioma de forma natural durante la conversación. También puedes restringir los idiomas en los que habla especificándolos en las instrucciones del sistema.

En el caso de los modelos que no son de audio nativo, como gemini-live-2.5-flash, puedes configurar el idioma en speech_config.language_code.

La voz se configura en el campo voice_name para todos los modelos.

En la siguiente muestra de código, se muestra cómo configurar el idioma y la voz.

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

Voces compatibles

La API de Gemini Live admite las siguientes 30 opciones de voz en el campo voice_name:

Zephyr: Brillante
Kore: Firme
Orus: Firme
Autonoe: Brillante
Umbriel: Tranquila
Erinome: Clara
Laomedeia: Optimista
Schedar: Uniforme
Achird: Amigable
Sadachbia: Animada
Puck: Alegre
Fenrir: Excitante
Aoede: Ligera
Enceladus: Suave
Algieba: Suave
Algenib: Grave
Achernar: Suave
Gacrux: Madura
Zubenelgenubi: Informal
Sadaltager: Informativa
Charon: Informativo
Leda: Juvenil
Callirrhoe: Tranquilo
Iapetus: Claro
Despina: Suave
Rasalgethi: Informativo
Alnilam: Firme
Pulcherrima: Directo
Vindemiatrix: Suave
Sulafat: Cálido

Lenguajes compatibles

La API de Gemini Live admite los siguientes 24 idiomas:

Idioma Código BCP-47 Idioma Código BCP-47
Árabe (Egipto) ar-EG Alemán (Alemania) de-DE
English (US) en-US Español (EE.UU.) es-US
Francés (Francia) fr-FR Hindi (India) hi-IN
Indonesio (Indonesia) id-ID Italiano (Italia) it-IT
Japonés (Japón) ja-JP Coreano (Corea) ko-KR
Portugués (Brasil) pt-BR Ruso (Rusia) ru-RU
Holandés (Países Bajos) nl-NL Polaco (Polonia) pl-PL
Tailandés (Tailandia) th-TH Turco (Türkiye) tr-TR
Vietnamita (Vietnam) vi-VN Rumano (Rumania) ro-RO
Ucraniano (Ucrania) uk-UA Bengalí (Bangladés) bn-BD
Inglés (India) Paquete de en-IN y hi-IN Maratí (India) mr-IN
Tamil (India) ta-IN Telugu (India) te-IN

Configura la detección de actividad de voz

La detección de actividad de voz (VAD) permite que el modelo reconozca cuando una persona está hablando. Esto es fundamental para crear conversaciones naturales, ya que permite que el usuario interrumpa al modelo en cualquier momento.

Cuando el VAD detecta una interrupción, se cancela y descarta la generación en curso. En el historial de la sesión, solo se conserva la información que ya se envió al cliente. Luego, el servidor envía un mensaje de BidiGenerateContentServerContent para informar la interrupción. Luego, el servidor descarta cualquier llamada a función pendiente y envía un mensaje BidiGenerateContentServerContent con los IDs de las llamadas canceladas.

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

¿Qué sigue?