Configurar idioma e voz

Este documento descreve como configurar respostas de fala sintetizada e detecção de atividade de voz na API Gemini Live. É possível configurar respostas em vários idiomas e vozes em HD, além de definir as configurações de detecção de atividade de voz para permitir que os usuários interrompam o modelo.

Definir o idioma e a voz

Os modelos de áudio nativo, como gemini-live-2.5-flash-native-audio, podem alternar entre idiomas naturalmente durante a conversa. Também é possível restringir os idiomas falados especificando-os nas instruções do sistema.

Para modelos de áudio não nativo, como gemini-live-2.5-flash, é possível configurar o idioma em speech_config.language_code.

A voz é configurada no campo voice_name para todos os modelos.

O exemplo de código a seguir mostra como configurar o idioma e a 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",
  ),
)

Vozes compatíveis

A API Gemini Live oferece suporte às seguintes 30 opções de voz no campo voice_name:

Zephyr -- Brilhante
Kore -- Firme
Orus -- Firme
Autonoe -- Brilhante
Umbriel -- Descontraída
Erinome -- Clara
Laomedeia -- Animada
Schedar -- Equilibrada
Achird -- Amigável
Sadachbia -- Animada
Puck -- Animada
Fenrir -- Excitável
Aoede -- Leve
Enceladus -- Suave
Algieba -- Suave
Algenib -- Grave
Achernar -- Suave
Gacrux -- Madura
Zubenelgenubi -- Casual
Sadaltager -- Conhecedora
Charon -- Informativa
Leda -- Jovem
Callirrhoe -- Descontraída
Iapetus -- Clara
Despina -- Suave
Rasalgethi -- Informativa
Alnilam -- Firme
Pulcherrima -- Direta
Vindemiatrix -- Gentil
Sulafat -- Acolhedora

Idiomas compatíveis

A API Gemini Live oferece suporte aos seguintes idiomas:

Idioma Código BCP-47
Árabe (egípcio) ar-EG
Bengali (Bangladesh) bn-BD
Holandês (Holanda) nl-NL
Inglês (Índia) Pacote en-IN e hi-IN
English (US) en-US
Francês (França) fr-FR
Alemão (Alemanha) de-DE
Híndi (Índia) hi-IN
Indonésio (Indonésia) id-ID
Italiano (Itália) it-IT
Japonês (Japão) ja-JP
Coreano (Coreia) ko-KR
Marati (Índia) mr-IN
Polonês (Polônia) pl-PL
Português (Brasil) pt-BR
Romeno (Romênia) ro-RO
Russo (Rússia) ru-RU
Espanhol (EUA) es-US
Tâmil (Índia) ta-IN
Telugu (Índia) te-IN
Tailandês (Tailândia) th-TH
Turco (Turquia) tr-TR
Ucraniano (Ucrânia) uk-UA
Vietnamita (Vietnã) vi-VN

Configurar a detecção de atividade de voz

A detecção de atividade de voz (VAD, na sigla em inglês) permite que o modelo reconheça quando uma pessoa está falando. Isso é essencial para criar conversas naturais, porque permite que um usuário interrompa o modelo a qualquer momento.

Quando a VAD detecta uma interrupção, a geração em andamento é cancelada e descartada. Apenas as informações já enviadas ao cliente são mantidas no histórico da sessão. Em seguida, o servidor envia uma mensagem BidiGenerateContentServerContent para informar a interrupção. O servidor descarta todas as chamadas de função pendentes e envia uma mensagem BidiGenerateContentServerContent com os IDs das chamadas 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,
        }
    }
}
      

A seguir