【ITニュース解説】Building a Multi-Agent Valet Trash Command Center: Supabase Edge Functions, VAPI, and PostgreSQL at Scale
2026年09月26日に「Dev.to」が公開したITニュース「Building a Multi-Agent Valet Trash Command Center: Supabase Edge Functions, VAPI, and PostgreSQL at Scale」について初心者にもわかりやすく解説しています。
ITニュース概要
Supabase Edge Functions、VAPI、PostgreSQLを活用し、AI音声エージェントと顧客管理システムを連携させた、バレットごみ回収のコマンドセンターを開発した。Next.jsでフロントエンドを構築し、データベースとエッジ関数で効率的な自動化とリアルタイム管理を実現した。
ITニュース解説
この記事では、「Quiet Hours Valet」という企業が、ゴミ回収サービスのために構築した大規模なAI音声エージェント管理システムについて解説している。このシステムは、多数のAI音声エージェントと自動化された処理を、たった一人のオペレーターが効率的に管理できるよう設計された、実運用レベルのコマンドセンターである。具体的には、8つのAI音声エージェントと8つの自動化シナリオを同時に動かし、顧客管理をリアルタイムで行うことを目指している。
このシステムの根幹を支える主要な技術要素は、Supabase、VAPI、そして自己ホスト型のインフラストラクチャである。これらを組み合わせることで、顧客対応の自動化と、その状況を人が一元的に監視・操作できる仕組みを実現している。
まず、システムの「顔」となるのは、5ページからなるNext.jsで構築されたフロントエンドである。これはオペレーターが利用する管理画面であり、全てのAIエージェントの活動状況、顧客からのリクエスト、スケジュールの進捗などをリアルタイムで表示し、オペレーターが円滑にシステムを操作・監視できるようにする役割を果たす。複雑な情報を直感的に理解できるよう、洗練されたユーザーインターフェースが設計されている。
次に、システムの「脳」と「記憶」にあたるのが、Supabaseが提供するPostgreSQLデータベースである。PostgreSQLは非常に強力なリレーショナルデータベースであり、このシステムでは8つの異なるテーブルを使用して、ゴミ回収のスケジューリング、ルート情報、顧客情報、AIエージェントの処理状況など、あらゆる重要なデータを構造化して保存している。多数のAIエージェントからの同時アクセスや、リアルタイムでのデータ更新要求にも耐えられるよう、高度に最適化されたデータベーススキーマが採用されている点が特徴である。
そして、システムの「声」となるのがVAPIである。VAPIは、AIを活用した音声対話を容易に実現するためのプラットフォームだ。このシステムでは、VAPIを使って、顧客からの電話や音声での問い合わせに対応する8つのAI音声エージェントを構築している。これらのAIエージェントは、まるで人間と話しているかのように自然な会話を行い、ゴミ回収の依頼受付や問い合わせ対応などを自動で行う。
AIエージェントが顧客との会話で得た情報や、会話の進捗状況は、Supabase Edge Functionsを通じてデータベースに反映される。ここで重要な役割を果たすのが「Webhook」という仕組みだ。Webhookとは、あるシステムで特定のイベント(例えば、AIエージェントが会話を終えた、あるいは重要な情報を取得したなど)が発生した際に、別のシステムに自動的に通知を送る機能である。VAPIのAIエージェントは、会話を通じて得た情報をSupabase Edge FunctionsにWebhookとして送信する。
Supabase Edge Functionsは、Supabase上で動作する「サーバーレス関数」の一種だ。これは、特定のイベントが発生したときにだけプログラムが実行され、その処理が非常に高速に行われるという特徴がある。VAPIからのWebhook通知を受け取ったEdge Functionsは、その情報を基に即座にPostgreSQLデータベースを更新する。これにより、AIエージェントが顧客と会話している間に発生した変更が、リアルタイムでシステムの「記憶」であるデータベースに記録され、Next.jsの管理画面にもすぐに反映される。この「Lambdaオーバーヘッドなしでの状態管理」という点は、従来のサーバー型アーキテクチャに比べて、サーバーの管理コストや運用負荷を大幅に削減しつつ、高い応答性を実現できることを意味する。
システム全体の「調整役」となるのが、オーケストレーションロジックである。これは、独立したAIエージェント、データベース、ユーザーインターフェースといった複数のコンポーネントが、一つの大きな目標(ゴミ回収サービスの円滑な運営)のためにどのように連携し、協調して動作するかを制御する仕組みを指す。このロジックは、オペレーターがNext.jsの画面からAIエージェントに指示を出したり、AIエージェントの現在の状態を把握して次の自動化シナリオを決定したりするなど、システム全体の動きを統括する中核を担う。
このように、顧客からの電話がVAPIのAIエージェントに繋がり、会話の内容がWebhook経由でSupabase Edge Functionsによって処理され、PostgreSQLデータベースに記録・更新される。この情報はNext.jsのコマンドセンター画面を通じてオペレーターに可視化され、オペレーターは必要に応じて介入したり、全体の状況を監視したりする。この一連の密接な連携により、単一のオペレーターが複数の自律的なAIエージェントを同時に、効率的に管理できる「マルチエージェント型バレットトラッシュコマンドセンター」が実現されている。
このシステムの構築は、AI音声エージェントを概念実証の段階を超えて、実際のビジネス環境で本格的にスケールさせる際の技術的な指針となる。特に、Webhookを利用して外部サービスからのデータ変更を信頼性高くデータベースに反映させる方法、サーバーの管理負担を軽減しつつ高速な処理を実現するサーバーレス関数(Supabase Edge Functions)の活用、そして多数の同時リクエストを処理できる堅牢なデータベーススキーマの設計など、実用的な大規模AIシステムを構築する上で遭遇する多くの課題に対する具体的な解決策を示している。システムエンジニアを目指す者にとって、このアーキテクチャは、様々なクラウドサービスやオープンソース技術を組み合わせて、複雑なビジネス要件を満たすシステムをどのように設計し、構築していくかを示す優れた参考例となるだろう。