Gemini 3.5 Live Translate

Gemini 3.5 Live Translate 採用 gemini-3.5-live-translate-preview 模型,支援超過 70 種語言的低延遲即時語音轉語音翻譯,可透過 Agent Platform 使用。只要在 Live API 中設定翻譯功能,就能以某種語言串流音訊,並接收另一種語言的翻譯音訊輸出,實現流暢的即時語音翻譯。

如要開始使用,請參閱 Gemini 3.5 Live Translate 簡介筆記本

直播翻譯

BidiGenerateContent (Live) API 會維護永久的雙向 WebSocket 連線。您將原始音訊區塊串流至工作階段,並即時接收翻譯後的音訊區塊和選用的轉錄稿。

import asyncio
from google import genai
from google.genai import types

# Initialize the client for Vertex AI / Agent Platform
client = genai.Client(enterprise=True, project=PROJECT_ID, location=LOCATION)

model = "gemini-3.5-live-translate-preview"
config = types.LiveConnectConfig(
    response_modalities=["AUDIO"],
    input_audio_transcription=types.AudioTranscriptionConfig(),
    output_audio_transcription=types.AudioTranscriptionConfig(),
    translation_config=types.TranslationConfig(
        target_language_code="pl",
        echo_target_language=True,
    ),
)

async def streaming_translation(audio_stream_generator):
    async with client.aio.live.connect(model=model, config=config) as session:
        # In a complete implementation, stream audio chunks concurrently:
        # async for chunk in audio_stream_generator:
        #     await session.send_realtime_input(
        #         audio=types.Blob(data=chunk, mime_type="audio/pcm;rate=16000")
        #     )

        async for response in session.receive():
            if response.server_content:
                server_content = response.server_content

                if server_content.input_transcription:
                    print(f"Input transcript: {server_content.input_transcription.text}")

                if server_content.output_transcription:
                    print(f"Output transcript: {server_content.output_transcription.text}")

                if server_content.model_turn:
                    for part in server_content.model_turn.parts:
                        if part.inline_data:
                            translated_audio_chunk = part.inline_data.data
                            # Process or stream translated audio (24kHz PCM)
                            print(f"Received translated audio: {len(translated_audio_chunk)} bytes")

音訊規格

以原始、小端序、16 位元線性 PCM 格式串流音訊:

  • 輸入格式:16 位元線性 PCM,16kHz (單聲道,小端序)。

  • 輸出格式:16 位元線性 PCM,24kHz (單聲道,小端序)。

  • 串流區塊大小:建議使用 100 毫秒的區塊,在處理量和延遲時間之間取得最佳平衡。

# Streaming an audio chunk to an active session
await session.send_realtime_input(
    audio=types.Blob(
        data=pcm_bytes,
        mime_type="audio/pcm;rate=16000",
    )
)

設定

如要設定即時翻譯,請將 TranslationConfig 附加至 LiveConnectConfig。

設定參數

  • target_language_code (字串):所需輸出語言的 BCP-47 語言代碼 (例如 "pl"、"es"、"ja")。預設值為 "en"。
  • echo_target_language (布林值):控制語音輸入內容已是譯文語言時的行為:
    • True:模型會在輸出串流中重現及回應輸入語音。
    • False:如果輸入內容與指定語言相符,模型會保持靜音。預設為 False。
  • input_audio_transcription (AudioTranscriptionConfig):選用。為傳入的來源音訊啟用同步文字轉錄功能。
  • output_audio_transcription (AudioTranscriptionConfig):選用。為翻譯後的輸出音訊啟用同步文字轉錄功能。

語言支援

Gemini 3.5 Live Translate 支援下列語言和 BCP-47 語言代碼:

語言 BCP-47 代碼 語言 BCP-47 代碼
南非荷蘭文 af 哈薩克文 kk
阿肯文 ak 高棉文 km
阿爾巴尼亞文 sq 盧安達文 rw
阿姆哈拉文 am 韓文 ko
阿拉伯文 ar 寮文 lo
亞美尼亞文 hy 拉脫維亞文 lv
亞塞拜然文 az 立陶宛文 lt
巴斯克文 eu 馬其頓文 mk
白俄羅斯文 be 馬來文 ms
孟加拉文 bn 馬拉雅拉姆文 ml
保加利亞文 bg 馬拉地文 mr
緬甸文 (緬甸) my 蒙古文 mn
加泰隆尼亞文 ca 尼泊爾文 ne
中文 (簡體) zh-Hans 挪威文 no、nb
繁體中文 (台灣) zh-Hant 波斯文 fa
克羅埃西亞文 hr 波蘭文 pl
捷克文 cs 葡萄牙文 (巴西) pt-BR
丹麥文 da 葡萄牙語 (葡萄牙) pt-PT
荷蘭文 nl 旁遮普文 pa
英文 en 羅馬尼亞文 ro
愛沙尼亞文 et 俄文 ru
菲律賓文 fil 塞爾維亞文 sr
芬蘭文 fi 信德文 sd
法文 fr 錫蘭文 si
加里西亞文 gl 斯洛伐克文 sk
喬治亞文 ka 斯洛維尼亞文 sl
德文 de 西班牙文 es
希臘文 el 巽他文 su
古吉拉特文 gu 斯瓦希里文 sw
豪薩文 ha 瑞典文 sv
希伯來文 he 泰米爾文 ta
北印度文 hi 泰盧固文 te
匈牙利文 hu 泰文 th
冰島文 is 土耳其文 tr
印尼文 id 烏克蘭文 uk
義大利文 it 烏都文 ur
日文 ja 烏茲別克文 uz
爪哇文 jv 越南文 vi
卡納達文 kn 祖魯文 zu

最佳做法

  • 維持一致的取樣率:確保音訊輸入嚴格遵循 16kHz 單聲道 PCM,避免音高偏移和音訊偽影。

  • 處理音訊環境:雖然模型會過濾中等環境噪音,但強烈的背景雜音或重疊的說話聲可能會導致翻譯語意模糊。

  • 根據用途評估重複播放模式:在單向翻譯設定中,將 echo_target_language 設為 False,即可在講者已使用譯文語言時,避免不必要的重複播放。

定價

模型 ID ['gemini-3.5-live-translate-preview']
形式
文字 僅限輸出
圖片 不支援
音訊 輸入和輸出
影片 不支援
功能
工具
API
用量方案
支援的地區

模型可用性

  • 全球:global
版本
  • gemini-3.5-live-translate-preview
    • 推出階段:預覽
    • 發布日期:2026 年 8 月