Multimodal Live API

Multimodal Live API を使用すると、Gemini との低レイテンシの双方向音声と動画のやり取りが可能になります。Multimodal Live API を使用すると、エンドユーザーに自然で人間のような音声会話のエクスペリエンスを提供できます。また、音声コマンドを使用してモデルのレスポンスを中断することもできます。このモデルは、テキスト、音声、動画の入力を処理し、テキストと音声の出力を生成できます。

Multimodal Live API は、Gemini API で BidiGenerateContent メソッドとして使用でき、WebSockets 上に構築されています。

詳しくは、Multimodal Live API リファレンス ガイドをご覧ください。

Multimodal Live API の使用を開始する際の参考となるテキストからテキストへの例については、以下をご覧ください。

Gen AI SDK for Python

Gen AI SDK for Python のインストールまたは更新方法を学習します。

詳細については、 SDK リファレンス ドキュメントをご覧ください。

Vertex AI で Gen AI SDK を使用するように環境変数を設定します。

# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=True

from google import genai
from google.genai.types import LiveConnectConfig, HttpOptions, Modality

client = genai.Client(http_options=HttpOptions(api_version="v1beta1"))
model_id = "gemini-2.0-flash-exp"

async with client.aio.live.connect(
    model=model_id,
    config=LiveConnectConfig(response_modalities=[Modality.TEXT]),
) as session:
    text_input = "Hello? Gemini, are you there?"
    print("> ", text_input, "\n")
    await session.send(input=text_input, end_of_turn=True)

    response = []

    async for message in session.receive():
        if message.text:
            response.append(message.text)

    print("".join(response))
# Example output:
# >  Hello? Gemini, are you there?

# Yes, I'm here. What would you like to talk about?

機能:

  • 音声入力と音声出力
  • 音声入力と音声出力の動画入力
  • 選択可能な音声(Multimodal Live API の音声を参照)
  • セッション継続時間: 音声の場合は最長 15 分、音声と動画の場合は最長 2 分

Multimodal Live API のその他の機能については、Multimodal Live API の機能をご覧ください。

Language:

  • 英語のみ

制限事項: