Gemini 3.8 Live は、Googleが2026年9月15日に公開した音声対話用のモデルです。Gemini API のモデルID は gemini-3.8-live で、Live API を通じて音声・映像・テキストを受け取り、音声かテキストで返します。公式発表では、多段の推論に強い上位版の Gemini 3.8 Live Extended Thinking も同時に出ています。
本記事では、2つのモデルの仕様差と使い分け、Live API での接続と非同期関数呼び出しの Python コード、料金から見た通話1件の単価、採用と見送りの判断までを扱います。前世代の 3.1 Flash Live からの設定差分はGemini 3.1 Flash Liveとは?Live APIの使い方・料金と3.8 Liveへの移行で確認できる構成です。仕様と価格は2026年10月7日時点の公式ドキュメントに基づきます。
まとめ:音声エージェントは3.8 Live、多段の推論が要る通話だけ上位版
- 3.8 Live は低遅延の音声エージェントの既定の選択肢です。入力上限は131,072トークン、出力上限は65,536トークン。
- 関数呼び出しは非同期(
NON_BLOCKING)が既定になり、ツールの結果を待つ間もモデルが話し続けます。 - Extended Thinking は背景で推論を続ける上位版です。
turnCompleteが届いても処理が終わったとは限らず、interaction_statusで完了を判定します。 - 2モデルの単価は同じで、音声入力は1分あたり0.005ドル、音声出力は1分あたり0.018ドルの換算です。
- 構造化出力・コード実行・キャッシュ・Batch API には対応していません。JSON で結果を受けたい処理は、ツール側で組み立てます。
Gemini 3.8 Liveの仕様:モデルID・入出力・対応機能と非対応機能
3.8 Live は、Gemini 3 世代のリアルタイム対話モデルを置き換える位置づけです。公式発表は「スケールとコスト効率のために作られた」モデルと説明し、会話の流暢さと映像の認識を組み合わせたとしています。
モデルID・トークン上限・入出力モダリティの一覧(2026年10月時点)
Gemini 3.8 Live のモデルページに載っている仕様を、上位版と並べて整理します。
| 項目 | Gemini 3.8 Live | 上位版(Extended Thinking) |
|---|---|---|
| 入力 | テキスト・画像・音声・動画 | テキスト・画像・音声・動画 |
| 出力 | テキスト・音声 | テキスト・音声 |
| 入力上限 | 131,072トークン | 131,072トークン |
| 出力上限 | 65,536トークン | 65,536トークン |
| 思考 | インターリーブ推論(設定不可) | 背景推論(low・medium・high) |
| 関数呼び出し | 非同期が既定 | 非同期のみ |
モデルIDは、無印が gemini-3.8-live、上位版の Gemini 3.8 Live Extended Thinking が gemini-3.8-live-extended-thinking です。
入力はWebSocketで流し続ける前提で、音声は16kHz・16ビットのリトルエンディアンPCMを送ります。対応言語は97で、会話の途中で話者が言語を切り替えても自動で追従すると発表されています。
関数呼び出しと検索グラウンディング以外は使えない非対応機能の範囲
対応している機能は、音声生成・関数呼び出し・検索グラウンディング・思考の4つです。逆に、キャッシュ、コード実行、ファイル検索、Googleマップのグラウンディング、画像生成、構造化出力、URLコンテキスト、Batch API は非対応と明記されています。
実装で効くのは構造化出力が無い点です。通話の結果を JSON で基幹システムへ渡したいなら、モデルに JSON を話させるのではなく、関数呼び出しの引数として受け取ります。引数はスキーマで型を決められるので、こちらの方が壊れにくい作りになります。
3.1 Flash Liveから変わった3つの挙動と移行時の注意
モデルページには、3.1 Flash Live からの移行点がまとめられています。1つ目は thinking_level の扱いで、3.8 Live では指定できません。2つ目は非同期の関数呼び出しが既定になったこと。3つ目は、関係のない音声に応答しないプロアクティブ音声が常に有効になり、感情に合わせて話し方を変える affective dialogue がAPIから外れたことです。
3.1 向けに書いた接続コードを流用すると、思考レベルの指定がエラーの原因になります。移行の具体的な書き換えは前述の11562の記事で扱っています。
3.8 LiveとLive Extended Thinkingの違いと選び分けの基準
2モデルは入出力も単価も同じです。違いは、会話をしながら裏で考え続けるかどうかにあります。
τ-Voice 68.6%・Big Bench Audio 97.7%に見る上位版の強み
公式発表のベンチマークは、すべて Extended Thinking のものです。Artificial Analysis の Speech to Speech Quality Index で82.6点の首位、エージェント型タスクの完了率を測る τ-Voice で68.6%、Sierra の τ-Voice-banking で35.1%、音声での推論を測る Big Bench Audio で97.7%とされています。
τ-Voice-banking の35.1%は、銀行窓口のような手順の多い業務では3回に2回近く完遂できていない、という読み方もできます。数値はいずれも Google の発表値です。自社の業務フローで同じ完了率が出る保証はありません。
背景推論が要る通話=複数のツール結果を組み合わせて答える場面
Extended Thinking のモデルページは、リアルタイムの音声対話の中で複雑な多段の問題を解く場合に推奨すると書いています。発表では、考えている間は「確認させてください」のような言葉で間をつなぐと説明されました。
選ぶ基準は、1回の通話で複数のツール結果を突き合わせる必要があるかどうかです。予約の空き確認と料金計算と会員ランクの照会を組み合わせて答えるなら上位版。営業時間の案内や注文状況の読み上げのように1回の照会で答えが決まるなら、3.8 Live で足ります。
Live APIで3.8 Liveにつなぐ:Python接続と非同期関数呼び出しの実装
ここからは Google GenAI SDK(Python)での実装です。SDK の入門ページにある client.aio.live.connect でセッションを張り、send_realtime_input で入力を送ります。
NON_BLOCKINGで在庫照会を裏で走らせるPythonの実行例
次のコードは、テキストで在庫を尋ね、モデルの音声応答を WAV に保存します。照会関数は3秒かかる想定で、その間にモデルが「確認します」と話せるよう非同期で宣言しています。
import asyncio
import wave
from google import genai
from google.genai import types
client = genai.Client() # 環境変数 GEMINI_API_KEY を読む
MODEL = "gemini-3.8-live"
check_stock = {
"name": "check_stock",
"description": "商品コードから在庫数を返す",
"parameters": {
"type": "object",
"properties": {"sku": {"type": "string"}},
"required": ["sku"],
},
"behavior": "NON_BLOCKING", # 3.8 Live では既定も非同期
}
config = {
"response_modalities": ["AUDIO"],
"tools": [{"function_declarations": [check_stock]}],
}
async def lookup(sku):
await asyncio.sleep(3) # 基幹システムへの問い合わせを模した待ち
return {"sku": sku, "stock": 12}
async def answer(session, fc):
result = await lookup(**fc.args)
await session.send_tool_response(function_responses=[
types.FunctionResponse(
id=fc.id,
name=fc.name,
# 話している途中なら言い終えてから結果を伝える
response={**result, "scheduling": "WHEN_IDLE"},
)
])
async def main():
tasks = set()
async with client.aio.live.connect(model=MODEL, config=config) as session:
await session.send_realtime_input(text="商品コードA-100の在庫を調べて")
with wave.open("reply.wav", "wb") as wf:
wf.setnchannels(1)
wf.setsampwidth(2)
wf.setframerate(24000)
# 「確認します」の発話と、結果を受けた発話の2ターンを受け取る
for _ in range(2):
async for msg in session.receive():
if msg.data:
wf.writeframes(msg.data)
if msg.tool_call:
for fc in msg.tool_call.function_calls:
tasks.add(asyncio.create_task(answer(session, fc)))
asyncio.run(main())
照会は asyncio.create_task で受信ループの外に出しています。ループの中で await lookup() と書くと受信が止まるため、非同期にした効果を得られない構造です。実運用ではマイク入力を send_realtime_input(audio=...) で流し、ターン数ではなく通話終了で抜ける形に変えます。
schedulingのINTERRUPT・WHEN_IDLE・SILENTの選択基準
Live API のツール使用ページは、非同期の関数の結果を返すときに scheduling で受け取り方を指定できるとしています。
| 値 | モデルの動き | 向いている結果 |
|---|---|---|
| INTERRUPT | 話している途中でも止めてすぐ伝える | 決済失敗・本人確認エラー |
| WHEN_IDLE | 今の発話を終えてから伝える | 在庫・予約枠などの照会結果 |
| SILENT | 何も言わず、以降の会話で使う | 顧客属性・過去の問い合わせ履歴 |
迷ったら WHEN_IDLE を既定にしてください。INTERRUPT を多用すると、利用者が話を遮られたと感じる場面が増えます。SILENT は、通話開始時に裏で会員情報を引いておき、聞かれたときに答えさせる用途に向きます。
Extended Thinkingの背景推論設定と完了判定の変更点
上位版へ切り替えるときは、モデルIDのほかに2か所を直します。思考レベルの指定と、ターンの終わりの判定です。
thinking_levelのlow・medium・highとMINIMAL非対応の扱い
Extended Thinking では、セットアップの設定に thinking_config を入れて背景推論の深さを決めます。選べるのは low・medium・high の3段階で、MINIMAL は非対応です。関数呼び出しは非同期のみで、同期のブロッキングモードは使えません。先ほどのコードとの差分は次のとおりです。
MODEL = "gemini-3.8-live-extended-thinking"
config = {
"response_modalities": ["AUDIO"],
"thinking_config": {"thinking_level": "medium"}, # low / medium / high
"tools": [{"function_declarations": [check_stock]}], # 非同期のみ
}
high にするほど裏で考える時間が延び、間をつなぐ発話が増えます。最初は medium で通話ログを取り、完了率が足りない業務だけ high に上げる順序が安全です。
turnCompleteを完了とみなさずinteraction_statusで待つ実装
モデルページは、Extended Thinking では turnComplete: true がモデルの待機状態を意味しなくなったと明記しています。ターンが終わった後も、背景推論や非同期ツールの結果待ちが続くことがあるためです。
処理が本当に終わったかは、サーバーメッセージの interaction_status で見ます。IN_PROGRESS なら背景推論中かツールの応答待ち、IDLE ならすべての処理が完了した状態です。通話を切る・次の案内に進むといった制御は、IDLE を受けてから行ってください。3.8 Live と同じ感覚で turnComplete を合図に電話を切ると、考え終わる前に会話が途切れます。
3.8 Liveの料金と通話1件あたりの目安、セッション上限15分への対処
費用と接続時間の上限は、電話受付のように通話が長くなる用途で設計に効いてきます。
音声入力0.005ドル・出力0.018ドルの分単価から出す通話単価
Gemini Developer API の料金ページでは、3.8 Live と Extended Thinking が同じ料金表にまとまっています。Standard の100万トークンあたりの単価は次のとおりです。
| 区分 | 100万トークンあたり | 分換算 |
|---|---|---|
| テキスト入力 | 0.75ドル | なし |
| 音声入力 | 3.00ドル | 0.005ドル |
| 画像・動画入力 | 1.00ドル | 0.002ドル |
| テキスト出力 | 4.50ドル | なし |
| 音声出力 | 12.00ドル | 0.018ドル |
5分の通話で、利用者の音声5分ぶんを入力し、モデルが合計2分話したとします。分換算で計算すると、入力が0.025ドル、出力が0.036ドルで、合計は約0.06ドルです。無料枠もありますが、無料枠では送信内容が製品改善に使われる扱いになるため、顧客の通話には有料枠を使います。
分単価は目安の換算値で、請求はトークン単位で行われます。会話履歴やツールの結果も入力に含まれるので、本番前に AI Studio の使用量で10件ほど実測してから見積もってください。
音声のみ15分・映像付き2分の上限に対する通話の圧縮・再開の設定
セッション管理のページによると、上限は音声のみのセッションで15分、音声と映像を併用するセッションで2分です。WebSocket の接続自体も約10分で切れます。
対処は、セッション上限と接続の切断に対応する2つの設定です。セッションの上限には、設定に context_window_compression のスライディングウィンドウを入れると、古いやり取りを圧縮しながら続けられます。接続の切断には、session_resumption を有効にしてサーバーから届くハンドルを保存し、再接続時に渡します。ハンドルは最後のセッション終了から2時間有効です。切断の前には GoAway メッセージで残り時間が通知されるので、そこで再接続の準備に入ります。
3.8 Liveを採用する場面と見送る場面:音声エージェント開発の判断
音声エージェントは、モデルの選定よりも電話回線・基幹システム・通話記録との接続に工数がかかります。業務システムとのつなぎ込みまで含めて外部に任せる場合は、AI音声認識システム開発のような音声AIの開発支援を前提に範囲を決めてください。
採用してよい条件=照会系の電話受付と社内ヘルプデスクの一次対応
3.8 Live が向くのは、利用者の質問に対して社内のデータを1〜2回照会すれば答えが決まる業務です。注文状況の確認、店舗の営業時間や在庫の案内、社内のパスワード再設定の受付などが当てはまります。非同期の関数呼び出しで照会の待ち時間を会話で埋められる点が、前世代との一番の差です。
電話の自動応答をどこまで任せるかの切り分けは、ボイスボットとは?仕組み・IVRとの違い・導入判断の基準を解説で整理しています。
採用を見送る場面=読み上げだけ・翻訳だけ・テキストで足りる処理
双方向の会話が要らない処理に Live API を使う理由はありません。決まった文章を読み上げるだけならGemini API TTSの使い方|3.8 Flash TTSの実装・料金・商用利用の方が単純で、会議の同時通訳ならGemini 3.5 Live Translateの使い方が用途に合います。チャットや社内文書の要約のように音声が不要なら、同じ世代のGemini 3.8 Flashで構造化出力やキャッシュも使えます。
業務での失敗パターン=確定処理を音声の聞き取りだけで実行する設計
避けたいのは、予約の確定や送金のような取り消しにくい操作を、モデルが聞き取った内容だけで実行する作りです。電話の音声は雑音や言い間違いが多く、Extended Thinking でも τ-Voice-banking の完了率は35.1%と公表されています。
確定系の関数は、実行前に内容を復唱させて利用者の「はい」を得るまで呼ばない。関数の側でも金額や日付の範囲を検証する。この2段構えを最初から入れておけば、聞き間違いが本番のデータ変更に直結しません。
よくある質問
Gemini 3.8 Live について検索されやすい疑問を、公式ドキュメントに沿って答えます。
Gemini 3.8 Live は無料で使えますか?
Gemini Developer API の料金ページでは、3.8 Live と Extended Thinking の両方に無料枠が設定されています。Google AI Studio から試すこともできます。ただし無料枠では送信内容が製品改善に使われる扱いになるため、顧客の音声や個人情報を流す本番の通話は有料枠で動かしてください。有料枠の単価は音声入力が1分あたり0.005ドル、音声出力が1分あたり0.018ドルの換算です。
Gemini アプリの Gemini Live と同じモデルですか?
公式発表では、新モデルは開発者向けの Gemini API と Google AI Studio で提供されるほか、Gemini アプリ、Google 検索の Live 機能、Gmail・ドキュメント・Keep などの Workspace にも展開するとされています。企業向けの Gemini Enterprise ではプライベートプレビューです。アプリの機能はGoogleが作り込んだ製品で、自社のシステムへ組み込めるのは API の gemini-3.8-live の方です。
3.1 Flash Live から移行するときは何を変えればよいですか?
最低限の作業は、モデル名を gemini-3.1-flash-live-preview から gemini-3.8-live に替え、思考レベルの指定を削除することです。3.8 Live では thinking_level を指定できません。あわせて関数呼び出しが非同期既定になるため、結果を待たずに話し出しても困らない関数かどうかを1つずつ確認してください。
Gemini 3.8 Live は構造化出力やコード実行に対応していますか?
対応していません。モデルページでは、構造化出力・コード実行・キャッシュ・ファイル検索・URLコンテキスト・Batch API が非対応とされています。通話の結果を JSON で残したい場合は、関数呼び出しの引数としてスキーマ付きで受け取り、記録を行うのはツール側です。会話の要約は、通話後にテキスト系のモデルで別途作る方が扱いやすくなります。
OpenAI や Azure の音声APIと比べてどう選べばよいですか?
使っているクラウドと、必要な機能で決めるのが現実的です。Gemini 3.8 Live は非同期の関数呼び出しと検索グラウンディングを標準で持ちます。OpenAI の音声モデルはGPT-Live-1とは、Azure 上で組む場合はVoice Live APIとはで整理しています。同じ業務シナリオで10通話ほど試し、完了率と通話単価を並べて比べてください。
関連記事
- Gemini 3.1 Flash Liveとは?Live APIの使い方・料金と3.8 Liveへの移行:前世代モデルの仕様と、3.8 Liveへ移すときの設定差分・ブラウザ接続用のエフェメラルトークンを扱っています。
- Gemini 3.8 Flashとは?3.7からの差分・料金・移行コードを実装目線で解説:同じ世代のテキスト系モデルです。音声が不要な処理はこちらで組めます。
- ボイスボットとは?仕組み・IVRとの違い・導入判断の基準を解説:電話の自動応答に音声AIを入れるときの業務設計と判断基準を整理しています。
- GPT-Live-1とは?OpenAIのフルデュプレックス音声モデルの仕組み・Realtime APIとの違いと実装判断を解説:OpenAI 側の音声対話モデルとの比較に使えます。
- Gemini API TTSの使い方|3.8 Flash TTSの実装・料金・商用利用:会話ではなく読み上げだけが必要な場合の実装です。