ANTIGRAVITY LABEN
記事一覧/連携・プラグイン
連携・プラグイン/2026-04-21上級

Antigravity で作る Gemini Live API リアルタイム音声エージェント — 双方向音声・画面共有・遅延最適化の本番運用ガイド

Gemini Live API で本番品質のリアルタイム音声エージェントを作るために必要なアーキテクチャ、遅延最適化、エラー回復、コスト制御の実装パターンを Antigravity で組み立てる現場向けガイドです。

antigravity435gemini-live-apirealtime4voice-agentproduction59

プレミアム記事

先週まで、Gemini Live API で簡単な音声デモを作るのに半日かかっていたのに、気づけば「ユーザーの顔が見える画面共有 + 双方向音声 + 社内 API 呼び出し」を同居させたエージェントを、1 セッションで動かしているお客さまが出てきました。Live API が GA になってから、現場の期待値は一段階上がっています。

とはいえ、サンプルコードをそのまま本番に流すと、ほぼ確実に詰まります。WebSocket が 5 分に 1 回切れる、音声が途中で先頭に戻る、Function Calling が暴走してコストが数万円単位で飛ぶ — 私自身が実装で踏んできた地雷です。ここではAntigravity を母艦にして Gemini Live API を本番投入するときの設計判断を、コードと運用の両面から整理します。教科書には載っていない、実装してみて初めて分かる境界線の話が中心です。

Live API が従来の Gemini 呼び出しと決定的に違う 3 つのこと

Live API の API 仕様を読む前に、「従来の generateContent と何が違うのか」を体で掴んでおくのが重要です。私の現場感覚では、次の 3 つを押さえないと設計を何度も引き直すことになります。

第一に、Live API は ステートフルな WebSocket セッション です。リクエスト/レスポンスではなく、setup → realtimeInput → serverContent → toolCall → toolResponse のメッセージ群が双方向に流れ続けます。従来の感覚で「1 回の呼び出しで完結」と考えると、接続維持・エラー回復・中断処理の設計がごっそり抜け落ちます。

第二に、課金単位が「入力トークン」ではなく「時間」に近い ことです。公式には入出力トークンの消費として計算されますが、音声ストリーミングと動画フレームは常時消費されるため、セッション 1 分あたりのコストがほぼ線形に積み上がります。ここを甘く見ると、検証段階で想定の 3 倍以上請求される事故が起こります。

第三に、中断(バージイン)をサーバー側で処理する ことです。ユーザーが話し始めた瞬間、Live API はモデルの発話を打ち切り、次の応答に移行します。この挙動に合わせてクライアント側の音声再生キューを設計しないと、「ユーザーの声が被った瞬間に AI の声が残り続ける」体験になります。

この 3 点を踏まえずに「とりあえず動くサンプル」から拡張すると、本番手前で設計をやり直す羽目になります。Antigravity のマルチエージェントで複数サービスに繋ぎ込む前に、Live API そのものの性質を固めておきたいところです。

Antigravity で組む本番アーキテクチャ:3 層で責務を分離する

私が実案件で採用しているのは、Antigravity の Manager Surface を中心に、次の 3 層に役割を切ったアーキテクチャです。シンプルに見えて、これが遅延・障害・コストの 3 つを同時に抑える最短経路でした。

  • Edge 層: WebRTC / WebSocket でブラウザと繋がり、PCM16 音声のバッファリングと VAD(発話検出)だけを担当します。Cloudflare Workers Durable Objects または Hono on Workers を採用します。音声伝送層の設計は Antigravity で学ぶ WebRTC リアルタイム通信の実装ガイド が具体的に参考になります。
  • Orchestrator 層: Live API との WebSocket セッションを所有し、Function Calling を社内 API へ橋渡しします。Antigravity の「Live Agent」として実装し、Manager Surface からセッション状態を監視できるようにします。
  • Tools 層: 実業務 API(予約、検索、決済)や RAG(Vertex AI Vector Search)を束ねます。Orchestrator 層から Function Calling 経由で呼び出されます。

この 3 層分離が効くのは、Live API の「ステートフルさ」を Orchestrator 層に閉じ込められるからです。Edge 層は純粋に音声データを流すだけ、Tools 層は普通の HTTP API。Live API 固有の複雑性を持ち込まないので、障害時の切り分けが一気に楽になります。Antigravity で作業する場合、.agent/ 配下に edge.mdorchestrator.mdtools.md の 3 ファイルでエージェント定義を分け、Manager Surface から並列に走らせる構成を私は好みます。

なぜ Durable Objects なのか

Cloudflare Workers 単体だと、Live API の長命セッションを維持するのが難しい場面があります。Durable Objects は WebSocket のハイバネーションを扱えるため、アイドル中のメモリコストをほぼゼロにできます。本番で数千セッションを並行させるなら、Durable Objects + Hibernation API はほぼ必須です。逆に、1 分未満のワンショット接続なら普通の Workers でも十分で、Durable Objects のコストを払う意味は薄くなります。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
Gemini Live API の WebSocket セッションで音声が途切れる・遅延する問題に悩んでいた読者が、バッファ設計と再接続戦略を今日実装できるようになります
双方向音声+画面共有+Function Calling を組み合わせた本番級エージェントを、Antigravity のマルチエージェント機能と 3 ファイル構成で動かせる設計パターンを習得できます
時間課金される Live API のコストを実測から組み立てる運用ダッシュボードと、セッション自動終了・要約フォールバックまで含めた本番運用ノウハウが身につきます
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Antigravity Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

連携・プラグイン2026-04-04
Antigravity と Supabase で本番実装—Auth・RLS・Edge Functions・Realtime の要点
Antigravity と Supabase で本番アプリを組み立てる際の実装パターンをまとめました。Auth・RLS・Edge Functions・Realtime に加え、RLS を有効にした途端に遅くなる理由と直し方、個人開発における費用の分岐点まで扱います。
連携・プラグイン2026-05-15
Antigravity で Claude Opus 4 / Sonnet 4 を使う — モデル選択の思想と本番実装パターン
Claude Opus 4・Sonnet 4・Haiku 4.5 を Antigravity で活用する実践ガイド。コスト・速度・品質のバランスを取りながら本番環境で動かすための設計思想と実装パターンを解説します。
連携・プラグイン2026-04-30
Antigravity × Cloudflare Durable Objects で作るステートフル AI エージェント — 1セッション=1インスタンスで会話・ツール状態・コストを一元管理
Antigravity で開発した AI エージェントを Cloudflare Durable Objects に載せて、会話履歴・ツール呼び出し・トークン消費を1セッション1インスタンスで管理する設計と実装を、実際に本番投入したコードと運用コストで解説します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →