設定語言和語音

本文說明如何在 Live API 中設定合成語音回應和語音活動偵測功能。你可以設定以各種 HD 語音和語言回覆,也可以設定語音活動偵測設定,允許使用者中斷模型。

設定語言和聲音

如要設定回覆語言和語音,請按照下列步驟操作:

控制台

  1. 開啟 Vertex AI Studio > Stream realtime
  2. 在「輸出」展開器中,從「語音」下拉式選單選取語音。
  3. 在同一個展開器中,從「語言」下拉式選單選取語言。
  4. 按一下「 開始工作階段」即可開始工作階段。

Python

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

支援的語音

Live API 在 voice_name 欄位中支援下列 30 種語音選項:

Zephyr - 明亮
Kore - 堅定
Orus - 堅定
Autonoe - 明亮
Umbriel - 輕鬆
Erinome - 清晰
Laomedeia - 歡快
Schedar - 平穩
Achird - 友善
Sadachbia - 活潑
Puck:活潑
Fenrir:興奮
Aoede:輕快
Enceladus:輕柔
Algieba:柔和
Algenib:沙啞
Achernar:溫柔
Gacrux:成熟
Zubenelgenubi:隨和
Sadaltager:博學
Charon - 資訊豐富
Leda - 年輕
Callirrhoe - 輕鬆
Iapetus - 清晰
Despina - 柔和
Rasalgethi - 資訊豐富
Alnilam - 堅定
Pulcherrima - 積極
Vindemiatrix - 溫柔
Sulafat - 溫暖

支援的語言

Live API 支援下列 24 種語言:

語言 BCP-47 代碼 語言 BCP-47 代碼
阿拉伯文 (埃及) ar-EG 德文 (德國) de-DE
英文 (美國) en-US 西班牙文 (美國) es-US
法文 (法國) fr-FR 北印度文 (印度) hi-IN
印尼文 (印尼) id-ID 義大利文 (義大利) it-IT
日文 (日本) ja-JP 韓文 (韓國) ko-KR
葡萄牙文 (巴西) pt-BR 俄文 (俄羅斯) ru-RU
荷蘭文 (荷蘭) nl-NL 波蘭文 (波蘭) pl-PL
泰文 (泰國) th-TH 土耳其文 (土耳其) tr-TR
越南文 (越南) vi-VN 羅馬尼亞文 (羅馬尼亞) ro-RO
烏克蘭文 (烏克蘭) uk-UA 孟加拉文 (孟加拉) bn-BD
英文 (印度) en-IN 和 hi-IN 套裝組合 馬拉地文 (印度) mr-IN
泰米爾文 (印度) ta-IN 泰盧固文 (印度) te-IN

設定語音活動偵測功能

語音活動偵測 (VAD) 可讓模型辨識使用者何時說話。這是建立自然對話的必要條件,因為使用者隨時可以中斷模型。

當 VAD 偵測到中斷時,系統會取消並捨棄正在進行的生成作業。只有已傳送給用戶端的資訊會保留在工作階段記錄中。接著,伺服器會傳送訊息來回報中斷情形。BidiGenerateContentServerContent接著,伺服器會捨棄所有待處理的函式呼叫,並傳送 BidiGenerateContentServerContent 訊息,其中包含已取消呼叫的 ID。

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

後續步驟