gemini-live-audio について
gemini-live-audioは、リアルタイムの音声対話にGemini Live APIを使うためのスキルです。ターン交代、割り込み、ツール呼び出しを備える音声体験を対象に、双方向ストリーミング、セッション管理、ツール応答の処理を扱い、デプロイ面と翻訳モードも区別します。
主な機能
- 01WebSocketによる双方向リアルタイムセッション
- 02音声、画像、テキストストリームの処理
- 03文字起こし、音声、ターン検出の設定
- 04割り込みと関数呼び出しフローへの対応
- 05セッション再開とデプロイ境界の管理
活用シーン
- 01リアルタイム音声アシスタントや受付システムの構築
- 02対話中の関数やツールの呼び出し
- 03音声対話の字幕や記録の提供
- 04リアルタイム音声翻訳の構築
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ calesthio/ generative-media-skills --skill gemini-live-audioインストール後、Claude Code で/gemini-live-audioを入力して読み込まれたか確認します。
同梱ファイルEVAL.md
詳細
Gemini Live オーディオ
このスキルは、バッチ形式のナレーションを生成するのではなく、音声によるライブのやり取りを行う場合に使用してください。Gemini Live は双方向セッション向けです。マイク音声またはストリーミングメディアを入力し、モデルから音声で出力を受け取ります。ターン交代、中断、ツール、セッションのライフサイクルに関する考慮事項にも対応します。完成したボイスオーバー、オーディオブック、ポッドキャストのナレーション、オフラインの文字起こしが成果物の場合は、ユーザーがライブでのターン交代を明示的に必要としていない限り、TTS または音声テキスト変換のスキルを優先してください。
以下の変動する情報は、2026-07-10 に Google AI および Google Cloud の公式ドキュメントで確認済みです。モデル名、プレビュー/GA のステータス、料金、レート制限、サポート対象リージョン、ガバナンス制御は頻繁に変更されるため、本番環境への導入、調達上の確約、または規制対象の環境へのデプロイ前に、公式ドキュメントを再確認してください。
ドキュメントで確認された情報
現在の製品の概要
- Gemini Live API は、低レイテンシの音声およびビジョンのやり取りを実現する、ステートフルな WebSocket API です。音声、画像、テキストの連続ストリームを処理でき、API リファレンスでは動画にも対応しています。音声出力を返すほか、構成やモデルによってはテキストや関数呼び出しのイベントも返します。
- Google AI Live API のページでは現在、Interactions API が一般提供されており、最新の機能やモデルにアクセスするために推奨されていると説明されています。このスキルは Live API に特化したガイダンスとして扱ってください。新規に本番環境のエージェントを構築する場合は、アーキテクチャを決定する前に、Google が提供するどのインターフェースとして Live API と Interactions API のどちらを使うべきか確認してください。
- Google AI Developer API のドキュメントでは Live API はプレビューとされています。Google Cloud/Gemini Enterprise Agent Platform のドキュメントでは、Vertex/エンタープライズでの提供状況と、GA の Gemini 2.5 Flash Native Audio モデルが別途記載されています。Developer API と Gemini Enterprise Agent Platform は、認証、利用規約、ロケーション、ガバナンス、クォータ、サポートが異なる別個のデプロイ先として扱ってください。
- 2026-07-10 時点のドキュメントで主要な Live エージェントモデルのファミリーには、Developer API のドキュメントに記載された
gemini-3.1-flash-live-previewと、Gemini Enterprise Agent Platform のドキュメントに記載されたgemini-live-2.5-flash-native-audio/Gemini 2.5 Flash Live API Native Audio が含まれます。Live Translation はgemini-3.5-live-translate-previewを使用するものとして、別途記載されています。 - モデルが推論し、質問し、ツールを呼び出し、ターンを処理するアシスタントの場合は、Live Agent モードを使用してください。モデルが通訳パイプライン、つまりある言語の音声を入力し、別の言語の音声に翻訳して出力するものの場合は、Live Translation モードを使用してください。Live Translation は音声に限定され、翻訳専用であり、ツールや指示に基づいて動作するエージェントのインターフェースではないと記載されています。
メディアとトランスポートの境界
- トランスポート:永続的な WSS セッションです。SDK を使う場合は、Live の接続/セッション抽象化を使用します。生の WebSocket を使う場合は、ドキュメントに記載された
BidiGenerateContentエンドポイントに接続し、JSON メッセージ、セットアップ、リアルタイム入力、サーバーコンテンツ、ツール呼び出し、終了を自分で管理します。 - セッションのセットアップは最初にまとめて行います。初期セットアップメッセージ/設定には、モデル、応答モダリティ、生成パラメーター、システム指示、ツールを含めます。接続中にモデルを自由に変更できるとは考えず、重要な変更に備えて再接続/再開の経路を設計してください。
- 音声入力:リトルエンディアンの 16 ビット PCM です。ネイティブ入力レートは 16 kHz です。ドキュメントによると Live API ではリサンプリングできますが、測定に基づく理由がない限り、本番クライアントでは
audio/pcm;rate=16000を送信してください。 - 音声出力:24 kHz のリトルエンディアン 16 ビット PCM です。
- マイク音声は小さなフレームに分割してください。Google のベストプラクティスでは、レイテンシーを抑えるために 20~40 ms のチャンクが推奨され、大きな入力バッファーは避けるよう警告されています。レイテンシーより安定性を優先する意図がない限り、クライアント側のバッファリングは最大 100 ms を目安にしてください。
- Developer API の概要では、画像は最大 1 FPS の JPEG として記載されています。動画/画像入力のサポートや料金はモデルや提供形態によって異なります。ライブ画面共有、カメラ、フレーム取り込みを提供すると約束する前に、対象モデルのページを確認してください。
- ネイティブ音声の Live モデルは、音声応答モダリティをサポートしています。モデルの音声回答のテキストが必要な場合は、ネイティブ音声応答からテキストが得られると想定せず、出力音声の文字起こしを有効にしてください。
文字起こし、言語、音声、ターンテイキング
- Live API は、セッション設定で有効にすると、ユーザー入力とモデル出力の音声文字起こしをサポートします。これらの文字起こしは、UI の字幕、ログ、QA、引き継ぎの要約に使用してください。別途検証せずに、裁判で通用する文字起こしとして提供しないでください。
- Developer ドキュメントでは Live の幅広い多言語サポートが示されており、概要では音声エージェントのユースケース向けに 70 言語、機能ページでは現在 97 言語がサポート対象として記載されています。ネイティブ音声モデルは自然に言語を切り替えられます。言語を限定する場合は、システム指示で出力言語を指定してください。非ネイティブ/カスケード型モデルでは、
speech_config.language_codeを使用できます。 - 音声の選択は
speechConfig.voiceConfig.prebuiltVoiceConfig.voiceNameで設定します。公式ドキュメントには、Vertex 上の Gemini Live API/Native Audio 向けに 30 種類の音声オプションが示されており、ネイティブ音声モデルは AI Studio で利用できる TTS 音声セットを使用できると記載されています。名前付き音声を提供する前に、必ず最新の音声リストを確認してください。 - 割り込み発話に対応しています。ユーザーがモデルの発話中に話すと、サーバーは割り込みシグナルを送信できます。クライアントはキューに入った再生を直ちに停止/破棄する必要があります。そうしないと、ユーザーに古い音声が聞こえ、システムが無視したように感じられます。
- 自動 VAD を設定できます。または無効にして、クライアントから
activityStartとactivityEndを送信できます。自動 VAD では、prefixPaddingMsが発話の語頭を保護し、silenceDurationMsがターン終了までのレイテンシーを制御します。Google は 500~800 ms の無音をバランスのよい値として説明しており、しきい値が低すぎると発話が分断されると警告しています。手動 VAD では発話前のコンテキストを含め、発話終了を早まって判定しないようにしてください。 - Proactive Audio と Affective Dialog は、Gemini 2.5 Flash Live API Native Audio 向けにドキュメント化されたネイティブ音声機能です。周囲の状況やデバイスへの呼びかけに応じる体験に使用する場合は、ユーザーの明示的な同意と QA 計画を整えてください。これらの機能によって、システムが応答するタイミングと理由が変わります。
ツールとエージェントの動作
- Live API は関数呼び出しと Google Search によるグラウンディングをサポートしています。すべての非 Live ツールをサポートしているわけではありません。公式のツール一覧では、2026-06-01 付けの Live ツールページで、比較対象の Live モデルについて Google Maps、コード実行、URL コンテキストがサポート対象外とされています。
- 一部の非 Live SDK フローとは異なり、Live API はツールの応答を自動的に処理しません。クライアントはツール呼び出しイベントを受信し、許可された関数を実行またはディスパッチして、
FunctionResponseオブジェクトを返す必要があります。 - ツールの動作はモデルによって異なります。ドキュメントによると、Gemini 3.1 Flash Live Preview の関数呼び出しは同期のみですが、Gemini 2.5 Flash Live Preview は同期および非同期の関数呼び出しをサポートしています。選択したモデルが公式にサポートしていない限り、ノンブロッキングのツールを提供できると約束しないでください。
- サポートされている場合、ノンブロッキングのツールでは、関数宣言と応答のスケジューリングを慎重に設計してください。割り込む、アイドル状態になるまで待つ、または応答を通知せずに保存して後で使う、といった選択肢があります。不適切なタイミングで到着したツールの応答は、エージェントに重要な発話を遮らせたり、重要なイベントを無視させたりする可能性があります。
- Google Search によるグラウンディングは事実の鮮度向上に役立ちますが、料金とデータ保持に関する影響があります。プライバシーに配慮が必要なスコープやデータを一切保持しないスコープでは、Search によるグラウンディングが許可されているか確認してください。
セッション、認証、コスト、クォータ、ガバナンス
- コンテキストウィンドウの圧縮を行わない場合、公開されているセッション上限は音声のみで15分、音声と動画の併用で2分です。Google のドキュメントでは、接続の存続時間は約10分とも記載されています。本番環境で長時間のセッションを行う場合は、コンテキストウィンドウの圧縮とセッション再開を使用してください。
- セッション再開には、再開ハンドル/トークンを受信して保存し、最新のハンドルを使って再接続する必要があります。Developer API のドキュメントでは再開トークンの有効期間は2時間とされています。一方、Gemini Enterprise のゼロデータ保持に関するドキュメントでは、Live セッションの再開時にテキスト/動画/音声のプロンプトデータやモデル出力などのキャッシュデータが最大24時間保存されるとされています。これらは提供形態ごとに異なるものとして扱い、データ保持に関する約束を設計する前に確認してください。
- コンテキストウィンドウのサイズはモデルのクラスによって異なります。Google のドキュメントでは、ネイティブ音声出力モデルは128kトークン、その他の Live モデルは32kトークンと記載されています。音声はすぐに蓄積されます。Google のドキュメントでは、音声はおよそ毎秒25トークンとして料金計算・カウントされます。
- レート制限はプロジェクトごとに設定され、モデルや利用ティアによって異なります。Experimental/preview モデルは通常、より厳しいレート制限が適用されます。負荷テストの前に、AI Studio または Google Cloud で現在の制限を確認してください。
- 2026-07-10 時点の Developer API の料金表では、有料の
gemini-3.1-flash-live-previewの料金は、テキスト入力トークンが100万トークンあたり$0.75、音声入力トークンが100万トークンあたり$3.00(約$0.005/分)、画像/動画入力トークンが100万トークンあたり$1.00(約$0.002/分)、テキスト出力トークンが100万トークンあたり$4.50、音声出力トークンが100万トークンあたり$12.00(約$0.018/分)と記載されています。また、Live Translate の音声は、毎秒25音声トークンとして計算すると、入出力合計で約$0.0368/分とされています。見積もりを提示する前に、料金を再確認してください。 - Developer API の無料ティアのコンテンツは、Google の製品改善に使用される場合があります。有料ティアのコンテンツは、製品改善には使用されないと記載されています。Developer API のログ記録を有効にすると、プロジェクトのログとして保持される場合があります。また、不正利用の監視とグラウンディングには、それぞれ別の保持ルールがあります。規制対象のユーザーは、デフォルトで API キーを使用するのではなく、Gemini Enterprise Agent Platform を検討してください。
- Gemini Enterprise Agent Platform は、Google Cloud の認証/IAM、リージョン/グローバルエンドポイント、エンタープライズサポート/SLA のオプション、プロビジョニング済みスループット、データレジデンシー制御に対応しています。エンドポイントを選択するだけでは、データレジデンシーは保証されません。Cloud のドキュメントでは、エンドポイントのルーティングと、保存データや ML 処理に関する取り決めを区別しています。グローバルエンドポイントは可用性とレイテンシを最大化しますが、リージョン分離は提供しません。
- Gemini Enterprise Agent Platform でゼロデータ保持を実現するには、リクエストとレスポンスのログ記録および Live セッション再開を有効にせず、不正利用監視の例外を理解し、メモリ内キャッシュの設定を考慮してください。Developer API の ZDR では、有料サービスにトレーニング目的での利用を制限するルールがありますが、Search/Maps のグラウンディングと不正利用の監視には、別の保持制約があります。
実測/運用上の所見
このスキルには、Google の公式ベンチマークは含まれていません。レイテンシや品質の数値を作り出さないでください。ユーザーがレイテンシを重視する場合は、対象のネットワーク、ブラウザー/デバイス、モデル、デプロイ先の提供形態で、プロジェクト固有の測定を実施してください。
本番環境の音声システムで得られた運用上の所見は、対象アプリで検証する必要があります。
- 体感レイテンシの主な要因は、多くの場合、モデルの推論だけでなく、マイクの収音、VAD による発話終了判定の遅延、クライアント側のバッファリング、再生スケジューリング、再接続処理です。
- 割り込み処理によって出力バッファに古い音声が残ると、デモで最も自然に聞こえる構成でも、本番環境で問題が発生することがあります。
- 音声で操作するユーザーは、アクションの実行前に引数を簡単に確認したり編集したりできないため、Live の関数呼び出しには、テキストチャットより厳密なスキーマ設計とフロー設計が必要です。
- リアルタイム翻訳と音声エージェントの動作は、別々にテストしてください。優れたアシスタントの構成が翻訳にも適しているとは限りません。翻訳では、熟考を伴うターンではなく、低レイテンシの連続ストリーミングが求められるためです。
本番環境でのヒューリスティック
適切な Gemini Live モードを選択する
ユーザーが次のことを必要とする場合は、Gemini Live Agent を使用します。
- 音声アシスタント、コーチ、チューター、コンシェルジュ、面接官、受付係、NPC、オペレーター、または視覚支援エージェント。
- 割り込みと自然なターン交替。
- ライブでのツール使用/関数呼び出し。
- 会話中の画面/カメラ/画像のコンテキスト。
- 音声でのやり取りと並行した文字起こし。
ユーザーが次のことを必要とする場合は、Live Translation を使用します。
- 低遅延の音声から音声への通訳。
- ソース言語からターゲット言語への音声変換。
- ツール、エージェントのアクション、マルチモーダル推論、通訳者としての振る舞いを超えるペルソナ重視の会話が不要な場合。
ユーザーが次のことを必要とする場合は、Gemini Live を主なツールとして使用しないでください。
- 仕上がりのよい、録音済みのナレーションファイル。
- 既存の動画に対する、決定論的な字幕生成。
- 単語レベルのタイムスタンプを含む、オフラインの一括文字起こし。
- 長尺音声のマスタリング、音楽、または効果音。
- 同意、録音、保持、エスカレーションの要件について法的確認をしていない、規制対象のコールセンターへの導入。
アーキテクチャの選択肢
プロトタイプや信頼できるサーバー環境では、バックエンドから Gemini への WebSocket 接続が最もシンプルです。
- ブラウザー/モバイルアプリがマイクと、任意のカメラ/画面フレームをキャプチャします。
- クライアントが WebRTC/WebSocket 経由でバックエンドにストリーミングします。
- バックエンドが Gemini に対して認証し、ポリシー/ツールの制御を適用して、許可されたメディアを転送します。
- バックエンドが音声チャンク、文字起こしイベント、ツールの確認、状態更新を返します。
クライアントから Gemini への接続で最低遅延を実現するには、エフェメラルトークンを使用します。
- クライアントがバックエンドに対して認証します。
- バックエンドが、モデル/設定/ツールのポリシーを制約したエフェメラルトークンを要求します。
- クライアントがそのトークンで Live API WebSocket 接続を開きます。
- バックエンドは引き続き、ツールの実行、ユーザー ID、ログ記録ポリシー、エスカレーションを制御します。
シークレットを保護し、許可するツールを強制し、同意を記録し、不正利用を監視できる場合に限り、クライアントから Gemini への接続を優先してください。ブラウザーやモバイルアプリに有効期間の長い API キーを絶対に含めないでください。
音声エージェント向けシステム指示の設計
Live エージェントへの指示は、長いエッセイではなく、実務的なポリシーとして記述します。
- ペルソナと役割:エージェントの役割、声/口調、対象分野、言語。
- 会話の流れ:一度だけ尋ねること、繰り返してよいこと、要約するタイミング。
- ツールのポリシー:各関数を呼び出す正確な条件、重大な操作の前に必要な確認、待機中に伝える内容。
- 安全/同意の境界:録音の通知、緊急時の制限、プライバシー、エスカレーション。
- 応答スタイル:短い音声ターン、一度に一つの質問、Markdown を使わないこと、非公開の思考連鎖を出力しないこと。
音声 UX では、デフォルトの応答を短くします。1 ターンにつき質問は一つにします。金銭の支出、アカウントの変更、予約、メッセージの送信、機密データの開示を伴うツール呼び出しの前に、リスクの高い事実を口頭で確認します。
音声と遅延の設定
計測結果から別の設定が必要だと分かるまでは、次の設定を出発点として使用します。
- 入力フォーマット:16 kHz のモノラル PCM16 リトルエンディアン。
- 出力再生:24 kHz の PCM16。
- 入力チャンクサイズ:20~40 ms。
- 自動 VAD の無音時間:500~800 ms。
- プレフィックスパディング:0 以外の値。最初の音節が途切れるテストで調整します。
- クライアント入力バッファー:ネットワークを安定させられる範囲でできるだけ小さくし、通常は 100 ms 未満にします。
- 再生バッファー:クリック音や音切れを防げる大きさにし、割り込み時にはすぐに破棄します。
- セッションのライフサイクル:長時間の通話ではコンテキスト圧縮を有効にし、GoAway と再接続/再開のロジックを実装します。
音声のツール呼び出しに関する安全性
ツールを公開する前に分類してください。
- 読み取り専用ツール:天気、注文状況、商品検索。通常、ユーザーから依頼があれば確認なしで実行できます。
- 影響の小さい書き込みツール:下書きの作成、メモの追加、リマインダーの設定。内容が重要な場合は確認してください。
- 影響の大きい書き込みツール:購入、フォームの送信、サービスの解約、メッセージの送信、ドアの解錠、財務・医療・法律関連データの更新。引数の概要を音声で伝え、明示的な確認を求めてください。
- バックグラウンドツール:長時間の検索、CRM の検索、RAG、チケットの作成。モデルが対応しており、ユーザーにとって分かりやすい操作性が保たれる場合に限り、ノンブロッキングで使用してください。
関数スキーマは範囲を絞ってください。列挙型、単位、ロケール、タイムゾーン、取り消し不能/アクションのフラグ、ツールの応答に含めるユーザー向けの確認文を含めてください。関数名からモデルがポリシーを推測することに頼らないでください。
ガバナンスと同意
Live 音声エクスペリエンスを本番環境に導入する前に、次の点を文書化してください。
- 音声を録音するのか、ストリーミングのみなのか。
- 文字起こしを保存するか、保存する場合はその期間とアクセスできる人。
- アプリが Developer API の無料枠、有料枠、Gemini Enterprise Agent Platform のいずれを使用するか。
- グラウンディング、ログ記録、セッション再開、キャッシュによってデータ保持が変わるか。
- ユーザーに AI と会話していることを伝えるか。
- 現地の法律で通話録音に対する全当事者の同意が必要か。
- 緊急事態、未成年者、医療・法律・財務に関するアドバイス、虐待に対応するためのエスカレーション経路。
音声の類似性やメディアの権利に関しては、Google がそのワークフローを明示的にサポートし、ユーザーが権利と同意を文書化していない限り、Gemini の音声が人間の声を複製したものだと示唆しないでください。許可なく、実在の人物、有名人、従業員、顧客になりすますプロンプトは避けてください。
完全な例
例 1:注文検索機能付きの小売サポート音声エージェント
本番環境での目的:低レイテンシーの音声アシスタントが商品や注文に関する質問に回答し、注文状況を検索し、確認後にのみ返品ラベルを作成します。
適用するモード:Live Translation ではなく、Gemini Live Agent です。
検証するモデル/サーフェス:プロトタイプでは Developer API 上の gemini-3.1-flash-live-preview を使用します。本番サポートでは、IAM、データレジデンシー、サポート/SLA のために Gemini Enterprise Agent Platform の利用を検討してください。
入力と制約:
- ブラウザーのマイク、英語とスペイン語のユーザー、カメラなし。
- サポート品質評価のために文字起こしが必要です。
- 読み取り専用の
get_order_status(order_id, postal_code)。 - 書き込みツール
create_return_label(order_id, reason)は確認が必要です。 - 支払い情報の変更なし、医療・法律に関するアドバイスなし。
セッション設定の例:
{
"model": "gemini-3.1-flash-live-preview",
"response_modalities": ["AUDIO"],
"output_audio_transcription": {},
"input_audio_transcription": {},
"speech_config": {
"voice_config": {
"prebuilt_voice_config": { "voice_name": "Kore" }
}
},
"realtime_input_config": {
"automatic_activity_detection": {
"prefix_padding_ms": 300,
"silence_duration_ms": 700
}
},
"tools": [
{
"function_declarations": [
{
"name": "get_order_status",
"description": "Look up status for an authenticated order when the user provides order ID and postal code.",
"parameters": {
"type": "object",
"properties": {
"order_id": { "type": "string" },
"postal_code": { "type": "string" }
},
"required": ["order_id", "postal_code"]
}
},
{
"name": "create_return_label",
"description": "Create a return shipping label only after the user explicitly confirms the order ID and return reason.",
"parameters": {
"type": "object",
"properties": {
"order_id": { "type": "string" },
"reason": { "type": "string" },
"confirmed_by_user": { "type": "boolean" }
},
"required": ["order_id", "reason", "confirmed_by_user"]
}
}
]
}
]
}
システム指示の抜粋:
You are Mira, a concise retail support voice assistant.
Speak in the user's language when you can do so clearly.
Ask one question at a time. Keep spoken answers under 20 seconds unless the user asks for detail.
For order lookup, collect order ID and postal code, then call get_order_status.
Before creating a return label, summarize the order ID and reason, ask "Should I create the return label now?", and call create_return_label only if the user explicitly says yes.
Never ask for full payment card numbers. If the user asks for a refund decision, explain you can create a return request but a human reviews refunds.
If the user interrupts, stop your current explanation and answer the new question.
期待される結果:
- 自然な音声での会話、すばやい割り込みへの対応、注文状況を音声と UI の文字起こしで返します。
- 返品ラベルの作成は、明示的な確認後にのみ行われます。
失敗モード:
- 確認前にエージェントが
create_return_labelを呼び出します。 - 割り込み後も音声の再生が続きます。
- VAD が注文 ID や郵便番号を途中で切り取ります。
- 言語の自動切り替えによって品質評価が混乱します。必要に応じて、指示で言語を制限してください。
- 検索グラウンディングが不要に有効化され、データ保持やコストに関するリスクが生じます。
バリエーション:
- より厳格なツール制御のため、バックエンド経由のアーキテクチャに移行します。
- WebSocket のメディア経路に限ってエフェメラルトークンを使用し、ツールはバックエンド側で管理します。
- モデルの対応状況、セッション時間、コスト、同意を確認してから、カメラ/画面を追加します。
例 2:ライブ音声から音声へのイベント翻訳
本番環境での目的:日本語の登壇者の話を、リモートの聴衆向けにほぼリアルタイムで英語に翻訳します。
適用するモード:汎用の Live Agent ではなく、gemini-3.5-live-translate-preview を使用する Live Translation です。
入力と制約:
- 話者の音声フィードは 1 つで、ツールは使用せず、アシスタントのペルソナも設定しません。
- 翻訳先の言語は英語です。
- 音声は途切れずに再生する必要があります。文字起こしはあると便利ですが、主な成果物ではありません。
- 重要な区間では、人間の通訳者が対応できるようにします。
ワークフロー:
- 現在の Live Translation のドキュメントで、翻訳元と翻訳先の言語がサポートされていることを確認します。
- Live API の翻訳設定で、翻訳元と翻訳先の言語を指定します。
- 登壇者の音声を PCM16 として取得し、20~40 ms のチャンクに分割して継続的にストリーミングします。
- 会話の頻繁な中断ではなく、聞き取りやすさを重視してジッターバッファーを調整し、翻訳音声を再生します。
- 入出力のタイミング、ドロップアウト、誤訳、聴衆からのフィードバックを記録します。
期待される結果:
- システムは翻訳パイプラインとして動作し、確認の質問をしたり、ツールを呼び出したり、アクションを実行したりしません。
障害モード:
- エージェントのプロンプトを使用した結果、直接翻訳する代わりに要約や応答が生成されます。
- ターンが完了するまでアプリが待機するため、許容できない遅延が発生します。
- 複数言語が混在するコードスイッチングや固有名詞が誤訳されます。API が対応している場合は用語集やコンテキストを提供し、事前にテストしてください。
- イベントの機密音声データの保持について確認していません。
バリエーション:
- ユーザーが AI にメモの作成やツールの呼び出しを依頼するバイリンガル会議では、Live Translation ではなく、翻訳ポリシーを適用した Live Agent を使用します。
- 放送品質の字幕が必要な場合は、イベント後に個別の文字起こしと字幕の QA を行います。
例 3:現場技術者向けの視覚支援エージェント
本番環境での目的:技術者がモバイルカメラを機器に向け、音声で質問します。エージェントは、該当する可能性のある部品を特定し、別の角度からの映像を求め、サポートチケットを作成できます。
適用するモード:選択したモデルまたはサーフェスが対応している場合は、音声と低フレームレートの画像/動画入力を使用する Gemini Live Agent です。
入力と制約:
- モバイルマイクとカメラのフレームを使用します。
- 安全性について確定的な診断を行いません。
- ツール
create_support_ticket(summary, severity, asset_id, photo_refs)の使用には、ユーザーの確認が必要です。 - セッションが 2 分を超える可能性があるため、圧縮/再開またはセッションの引き継ぎが必要です。
システム指示の抜粋:
You are an equipment support assistant for trained technicians.
Use visual context only to guide inspection; do not certify equipment as safe.
Ask for a closer view, better lighting, or label photo when needed.
If a potential hazard is visible or described, tell the technician to follow their site safety procedure and stop remote troubleshooting.
Before creating a support ticket, summarize the observed issue, asset ID, severity, and photos to attach, then ask for confirmation.
期待される結果:
- 簡潔な音声ガイダンス、視覚入力が不十分な場合のより鮮明なフレームの要求、安全性に関する慎重な表現、確認後のチケット作成が行われます。
障害モード:
- 圧縮/再開/引き継ぎを実装していないため、ドキュメントに記載された音声と動画の制限を超えるとセッションが終了します。
- 視覚フレームの頻度が低すぎる、またはぼやけているため、信頼できるガイダンスを提供できません。
- エージェントが診断や安全性について過度に断定します。
- ユーザーの承認を得ていない画像や音声、またはデータポリシーで許可されていない画像や音声がツール呼び出しに含まれます。
バリエーション:
- カメラのストリーミングにコストがかかりすぎる、または利用できない場合は、ユーザーの要求に応じて静止画像を撮影し、最大 1 FPS で送信します。
- データガバナンスのために Gemini Enterprise のリージョナルエンドポイントを使用する場合は、モデルとロケーションが対応していることを事前に確認してください。
本番環境向け QA チェックリスト
リリース前に、実機と騒がしい環境でテストします。
- オーディオ形式:PCM16 のモノラル入力、16 kHz の入力レート、24 kHz の出力再生を確認し、RAW チャンクでエンディアンや WAV ヘッダーに関する誤りがないことを確認します。
- レイテンシ:マイク入力から最初のオーディオ出力まで、発話終了から最初のオーディオ出力まで、割り込みから無音になるまで、再接続にかかる時間、ツール呼び出しの往復時間を測定します。
- 割り込み:モデルの発話中に、短い発話、長い発話、ノイズの多い発話で割り込み、古い出力が破棄されることを確認します。
- VAD:冒頭の音節が途切れるケース、文中の休止、長い思考中の休止、短い確認の発話、シリアル番号、訛りのある発話をテストします。
- 文字起こし:入力と出力の文字起こしを録音と比較し、製品で求められる精度を満たしているか確認します。正式に検証されていない場合は、補助的なものとして明示します。
- ツール:必須引数の不足、曖昧なリクエスト、重複した関数呼び出し、応答の遅延、ツールエラー、影響の大きい操作に対する確認をシミュレートします。
- セッションのライフサイクル:2 分、10 分、15 分、再接続、GoAway、コンテキスト圧縮、セッション再開の動作をテストします。
- コスト:1 分あたりの入力・出力オーディオトークン数に加え、Search/ツールのコストを見積もり、支出とレート制限に関するアラートを設定します。
- プライバシー:同意プロンプト、録音インジケーター、ログの保持、文字起こしの保存、グラウンディングデータの保持、ZDR の制約を確認します。
- 安全性:設定済みの安全性設定を使用して、ハラスメント、自傷行為、医療/法律/金融、緊急事態、未成年者、許可されていないなりすましのシナリオをテストします。
参照元一覧
2026-07-10 に確認した公式情報源:
- Gemini Live API の概要:https://ai.google.dev/gemini-api/docs/live-api
- Interactions API の概要:https://ai.google.dev/gemini-api/docs/interactions-overview
- Live API の機能ガイド:https://ai.google.dev/gemini-api/docs/live-api/capabilities
- Raw WebSockets API リファレンス:https://ai.google.dev/api/live
- Raw WebSockets を使ってみる:https://ai.google.dev/gemini-api/docs/live-api/get-started-websocket
- Live API でのツール使用:https://ai.google.dev/gemini-api/docs/live-api/tools
- セッション管理:https://ai.google.dev/gemini-api/docs/live-api/session-management
- エフェメラルトークン:https://ai.google.dev/gemini-api/docs/live-api/ephemeral-tokens
- Live API のベストプラクティス:https://ai.google.dev/gemini-api/docs/live-api/best-practices
- Live Translation:https://ai.google.dev/gemini-api/docs/live-api/live-translate
- Gemini モデル一覧:https://ai.google.dev/gemini-api/docs/models
- Developer API の料金:https://ai.google.dev/gemini-api/docs/pricing
- Developer API のレート制限:https://ai.google.dev/gemini-api/docs/rate-limits
- Developer API のリージョン:https://ai.google.dev/gemini-api/docs/available-regions
- Developer API のデータロギング/共有:https://ai.google.dev/gemini-api/docs/logs-policy
- Developer API のゼロデータ保持:https://ai.google.dev/gemini-api/docs/zdr
- 安全性設定:https://ai.google.dev/gemini-api/docs/safety-settings
- Gemini Enterprise Agent Platform の Live API と Gemini 2.5 Flash Native Audio:https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/gemini/2-5-flash-live-api
- Gemini Enterprise Agent Platform の音声/言語設定:https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/live-api/configure-language-voice
- Gemini Enterprise Agent Platform のセッション管理:https://docs.cloud.google.com/gemini-enterprise-agent-platform/models/live-api/start-manage-session
- Gemini Enterprise の料金:https://cloud.google.com/gemini-enterprise-agent-platform/generative-ai/pricing
- Gemini Enterprise のエンドポイント/ロケーション:https://docs.cloud.google.com/gemini-enterprise-agent-platform/resources/locations
- Gemini Enterprise のデータレジデンシー:https://docs.cloud.google.com/gemini-enterprise-agent-platform/resources/data-residency
- Gemini Enterprise のゼロデータ保持:https://docs.cloud.google.com/gemini-enterprise-agent-platform/resources/zero-data-retention