Amazon Connect で飲食店向け AI 電話ホストを構築する方法
本文の状態
日本語全文を表示中
詳細モードで約18分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
AWS Machine Learning Blog
AWS は Amazon Connect Agentic Voice を活用した音声注文システムの構築方法を公開し、アプリやウェブサイト不要で電話から完結する AI ホストの実装手順を詳述している。
AI深層分析を開く2026年8月25日 01:52
AI深層分析
キーポイント
Amazon Connect Agentic Voice の活用
AWS は Amazon Connect Agentic Voice を採用することで、電話回線でのリアルタイム音声認識と合成をネイティブに処理する仕組みを提供している。
アプリ不要の注文フローの実現
顧客が電話番号をダイヤルするだけで挨拶からメニュー確認、店舗検索、注文確定までを行う完全な音声対話システムを構築可能である。
バックエンドとの分離アーキテクチャ
AgentCore Gateway と Model Context Protocol (MCP) を介してエージェントロジックとバックエンドサービスを独立したモジュールとして接続する設計を示している。
アーキテクチャの分離と統合
通話処理、会話実行、バックエンドデータはそれぞれ Amazon Connect、AI エージェント、外部システムで分離される。一方で、通話機能、音声層、AI エージェントは単一の Amazon Connect デプロイメント内で統合管理される。
MCP 標準による柔軟な連携
AgentCore Gateway を介して MCP ツールを公開することで、バックエンドの構成変更がエージェント側の修正を不要にする。これは外部ツールへの接続におけるオープン標準である MCP の特性を利用した設計である。
重要な引用
A caller dials a phone number, and an AI host greets them, answers menu questions, finds a nearby pickup location, and confirms the order out loud.
The solution builds the agent logic and the backend services as separate modules, so the ordering logic stays independent from the channel that calls it.
Because MCP is an open standard for connecting an agent to external tools, the backend can change without touching the agent.
A single Amazon Connect deployment brings the telephony, the speech, and the AI agent together.
編集コメントを表示
編集コメント
このブログ記事は、音声 AI の実装における通信チャネルとロジックの分離という重要な設計思想を明確に示している。特に MCP や AgentCore Gateway を組み合わせた構成は、複雑なバックエンド連携を簡素化する現代的なアプローチとして注目される。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
多くの飲食店では、注文の多くが依然として電話で受け付けられており、その通話はカウンターで接客中のスタッフに直接つながることがほとんどです。待機音は長く続き、注文は手書きで記録され、繁忙期にはこれらの問題が悪化します。アプリやウェブサイトの導入はオンラインでの注文を好む顧客には役立ちますが、電話で注文したい人にとっては何の解決にもなりません。
本稿では、アプリもウェブサイトも不要、ログインも必要としない音声注文システムの構築方法をご紹介します。通話者は電話番号にダイヤルすると、AI ホストが挨拶し、メニューに関する質問に答え、最寄りの受け取り場所を検索し、注文内容を音声で確認します。このシステムは、電話回線として Amazon Connect Customer を使用し、リアルタイムの音声処理には Amazon Lex V2 と Amazon Connect Agentic Voice を活用しています。また、Amazon Connect Customer AI agents が会話をオーケストレーションし、Model Context Protocol (MCP) と Amazon Bedrock AgentCore を介して飲食店のバックエンドシステムと連携します。
本ソリューションは、電話回線に特化したテレフォニーチャネルを扱います。音声はブラウザを経由せず電話網を通じて届き、システムはログイン情報ではなく電話番号で通話者を識別します。エージェントロジックとバックエンドサービスは別々のモジュールとして構築されるため、呼び出し元がどのチャネルであっても、順序制御のロジックは独立して動作します。
このチュートリアルでは、以下の手順を解説します。
- AWS Cloud Development Kit (AWS CDK) を使用したシステムのデプロイ
- Amazon Connect による着信電話の応答とコンタクトフロー経由でのルーティング
- Amazon Connect Agentic Voice(高度な音声認識・音声合成)を活用したリアルタイムの音声認識と合成
- Amazon Connect AI エージェントによる会話とバックエンドツール呼び出しのオーケストレーション
- Amazon Connect AI Guardrail を用いた安全で話題に即した会話の維持
- AgentCore Gateway と MCP を介して、エージェントをバックエンドサービスへ検出可能なツールとして接続
Amazon Connect Agentic Voice は、Amazon Connect 内でネイティブに音声レイヤーを提供し、聴取のための音声認識と発話のためのテキスト読み上げを処理します。Amazon Lex V2 ボットはこれら両方の機能に使用されますが、推論処理やバックエンドへの呼び出しは Amazon Connect AI エージェントが担当します。後続のセクションでは、Agentic Voice がターン取りを高速化する仕組みについて解説します。
ソリューション概要
この設計では、3 つの要素を明確に分離しています。Amazon Connect が通話処理を担当し、Amazon Connect の AI エージェントが会話を実行し、バックエンドがメニュー、カート、注文、店舗情報を管理します。
電話がかかってくると、Amazon Connect 経由でコンタクトフローが起動し、AI エージェントセッションが開かれます。これにより、通話者がエージェントに接続されます。Amazon Connect Agentic Voice が通話中ずっと音声認識と合成を提供し、AI エージェントは会話内容を推論して処理します。そして、AgentCore Gateway が公開する MCP ツールを通じてバックエンドと連携します。
MCP はエージェントを外部ツールに接続するためのオープンスタンダードであるため、バックエンドを変更してもエージェント側の修正は不要です。
このソリューションでは、コンタクトフロー、Amazon Lex V2 の音声レイヤー(Amazon Connect Agentic Voice)、そして Amazon Connect AI エージェントのすべてが、Amazon Connect を通じてプロビジョニングおよび管理されます。個別に別々のサービスとして立ち上げる必要はありません。単一の Amazon Connect デプロイメントで、電話機能、音声処理、AI エージェントを統合できます。
AgentCore Gateway とレストランのバックエンドは、開発者が自ら構築して統合する部分です。
このソリューションでは以下の要素を展開します:
- **Amazon Connect Customer** が、着信通話処理、コンタクトフロー、および通話を受け付ける電話番号を提供します。
- **Amazon Lex V2** は、コンタクトフローを通じて通話者が接続する音声ボットをホストします。Amazon Connect Agentic Voice を活用して音声処理を行い、会話の各ターンを AI エージェントにルーティングします。
Amazon Connect Agentic Voice は、信頼度に基づく会話終了検出機能を備えた高度な音声認識(ASR)と、感情豊かな音声合成(TTS)を Amazon Connect 内でネイティブに提供します。
Amazon Connect Customer AI agents は、会話を主導するオーケストレーション AI エージェントを提供し、Amazon Bedrock で動作する Anthropic の Claude Haiku 4.5 を基盤としています。
Amazon Connect AI Guardrails は、コンテンツフィルタリング、拒否トピックの指定、および汚語フィルタリングを通じて、会話が安全かつ適切な範囲に留まるよう保証します。
AgentCore Gateway は、バックエンド API を MCP ツールとして公開し、エージェントが名前を指定して発見・呼び出せるようにします。
Amazon AppIntegrations は、AI エージェントが利用可能な MCP アプリケーションとして AgentCore Gateway を登録します。
Amazon API Gateway は、AWS Identity and Access Management (IAM) によって保護された REST エンドポイントを通じてバックエンドを前面に配置します。
AWS Lambda は、メニューやカート、注文、場所の検索といったビジネスロジックを実行し、通話者の電話番号をエージェントセッションへプッシュします。
Amazon DynamoDB は、顧客のプロフィール、注文履歴、メニュー項目、カート情報、店舗場所などのデータを保存します。
Amazon Location Service は、ピッキング(受け取り)推奨のための地理座標変換や経路計算を提供します。
アーキテクチャ図
Figure 1 に示すソリューションは、4 つのセクションに整理されています。

***Figure 1: 電話による音声注文ソリューション。4 つのセクションに整理されています。*
セクション A:バックエンドインフラストラクチャ。このセクションではレストランのバックエンドが展開されます。Amazon DynamoDB が顧客、注文、メニュー、カート、場所に関するデータを保持し、Amazon Location Service が住所と経路処理を担当します。AWS Lambda でビジネスロジックを実行し、Amazon API Gateway を介して IAM 認証付きで公開します。リソースは依存関係の順序に従ってデプロイされます。
セクション B:AgentCore Gateway。このセクションでは、AgentCore Gateway がプロビジョニングされ、デプロイ時に REST API の OpenAPI スキーマを読み込んで各エンドポイントを名前付き MCP ツールとして登録します。ゲートウェイはカスタムの JSON Web Token (JWT) 認証を使用し、Amazon Connect インスタンスに対して入力されたトークンの検証を行います。
セクション C:Amazon Connect インスタンスと AI エージェント
このセクションでは、Amazon Connect インスタンス、同社の AI エージェント支援機能、そしてオーケストレーション用の AI エージェントを構築します。AgentCore Gateway を Amazon AppIntegrations 内の MCP サーバーとして登録し、高度な音声認識(Advanced ASR)に対応した Agentic Voice を備えた Amazon Lex V2 ボットを作成します。続いて、コンテンツ安全性ポリシーを含む AI ガードレールを設定し、Anthropic の Claude Haiku 4.5 システムプロンプトとガードレールを紐付けた AI エージェントを定義してバージョン公開を行います。最後に、バックエンドのツールへのアクセス権限が付与されたセキュリティプロファイルをエージェントに割り当てます。
セクション D:Amazon Connect 電話機能
ここではコンタクトフローを作成し、電話番号の確保も行います。コンタクトフローはすべての着信通話の入口となる部分です。通話ログの記録を有効化し、テキスト読み上げ(TTS)には Agentic Voice を設定、発信者の電話番号も取得します。その後、Amazon Connect の AI エージェントセッションを開始し、Lambda 関数を使って発信者の電話番号をそのセッションに転送して発信者を特定できるようにします。次に挨拶音声を再生し、発信者を Amazon Lex V2 ボットへ接続します。Lex ボットがリアルタイムの音声レイヤーを担当し、Agentic Voice Advanced ASR で聞き取り、Agentic Voice TTS で応答する一方、AI エージェントは推論処理とツール呼び出しを担います。
図 1 の番号付き注記は、本ソリューションの全体像を追跡しています:
- Amazon Connect が用意した電話番号宛に、顧客自身または他の回線からの転送によって通話が行われます。
「Amazon Connect」のコンタクトフローでは、エージェント型音声(Agentic Voice)を設定し、通話者の電話番号を取得します。その後、「Amazon Connect AI Agents」のセッションを開始し、通話者の電話番号をセッションに格納して、挨拶音声を再生します。
このコンタクトフローは、会話全体を通じて音声認識と合成を行う「Amazon Connect Agentic Voice」を活用し、通話者を「Amazon Lex V2」ボットへ接続します。
「Amazon Lex V2」は会話を「Amazon Connect AI Agents」へルーティングし、会話ロジックの制御をオーケストレーションAIエージェントに委譲します。
「Amazon Connect」のAIエージェントは、「Amazon Bedrock」上でAnthropic社のClaude Haiku 4.5を基盤とし、コンテンツ安全性を保証する「AI Guardrail」で保護されています。このエージェントが会話を主導し、通話者の場所特定、メニュー取得、カート管理、注文確定といった処理を完遂します。
AIエージェントは、MCPプロトコルを使用して「Amazon Bedrock AgentCore Gateway」経由で利用可能なツールを呼び出します。
AgentCore Gateway は各ツールの呼び出しを「Amazon API Gateway」へ転送し、API Gateway はリクエストを適切な「AWS Lambda」関数へルーティングします。
AWS Lambda は、カート、注文、メニュー、場所のデータに対して「Amazon DynamoDB」への読み書きを行い、「Amazon Location Service」を使用して地理座標変換や最寄りの店舗検索を実行します。
「AWS CDK」を用いることで、8 つのスタックを単一のスクリプトでデプロイできます。
「Amazon CloudWatch」は全サービスにわたる集中監視、ログ管理、アラート機能を提供し、保存データはすべて「AWS Key Management Service (AWS KMS)」を使用して暗号化されます。
コールアウト1から8は1回の通話中に発生し、コールアウト9ではソリューションの構築とデプロイ方法、コールアウト10では監視とセキュリティの方法を解説します。以下のセクションではデプロイや運用の話は一旦脇に置き、通話そのものに焦点を当てます。
着信フロー
このセクションでは、発呼者側の視点から最初のベル音から応答までの一連の流れを追います。これは図1のコールアウト1〜6と同じランタイムパスです。図2はイベントの順序が一目でわかるようシーケンス形式で示しています。

破線の境界線はAmazon Connectが提供する範囲を示しています。コンタクトフロー、Amazon Lex V2の音声レイヤー(Amazon Connect Agentic Voice)、そしてAmazon Connect AIエージェントはすべて1つのAmazon Connectデプロイメントに含まれるため、個別サービスとしてではなく、Amazon Connectを通じて設定します。AgentCore Gatewayはこの境界線の外側にあり、エージェントをバックエンドに接続する役割を果たします。
図2の番号付きステップは、通話の以下の段階に対応しています。
- 発呼者が電話番号にダイヤルし、Amazon Connectが応答します。
Amazon Connect のコンタクトフローでは、まず Agentic Voice が起動し、通話者の電話番号を取得します。その後、Amazon Connect AI エージェントのセッションが開始され、取得した番号がセッションに転送されます。最後に挨拶音声が再生された後、通話者は音声処理層へと接続されます。
Amazon Connect の Agentic Voice は、会話全体を通じて音声認識と合成を提供し、各ターン(発言)を Amazon Connect AI エージェントへ渡します。
AI エージェントは、メニュー情報やカート内容、注文状況、店舗位置などのデータが必要な場合、AgentCore Gateway を介してバックエンドツールを呼び出します。その結果として得られた応答は、通話者へと音声で返されます。
事前準備
作業を開始する前に、以下の環境が整っていることを確認してください。
- AWS アカウント(AWS アカウントの作成ページ)
- デプロイ先の AWS リージョンで、Anthropic の Claude Haiku 4.5 モデルへのアクセス権限。これは Amazon Bedrock コンソール のモデルアクセス管理ページからリクエストしてください。
- アカウントおよびリージョン内に、少なくとも 1 つの Amazon Connect 電話番号のクォータが確保されていること。初めて番号を請求する場合は、Service Quotas コンソール から申請が必要です。
- Node.js の 18.x 以降(24.x を推奨)
- 認証情報が設定された AWS Command Line Interface (AWS CLI) の 2.x 版
- リポジトリをクローンするための git
AWS CDK をターゲットアカウントとリージョンでブートストラップします(npx cdk bootstrap aws:///)。
このデプロイにより、Amazon Connect インスタンス上で Contact Lens とボット管理の設定が自動的に有効化されます。これは、Agentic Voice を備えた Amazon Lex V2 ボットや、AI エージェントを備えた Amazon Connect には必須の機能です。Docker や Python の準備は不要です。デプロイ先となるリージョンでは、Amazon Connect Agentic Voice、Anthropic Claude Haiku 4.5、AI エージェント対応の Amazon Connect、そして AgentCore Gateway がすべて利用可能であることを確認してください。まずは US East (N. Virginia) の us-east-1 を選ぶのがおすすめです。
AWS CDK でソリューションをデプロイする
完全なソリューションは、GitHub 上の サンプルリポジトリ から入手できます。リポジトリをクローンし、プロジェクトディレクトリに移動してください。
git clone https://github.com/aws-samples/sample-restaurant-telephony-ai-host-using-amazon-connect-customer.git
cd sample-restaurant-telephony-ai-host-using-amazon-connect-customerデプロイスクリプトを実行する際は、デプロイプレフィックスを指定します。このプレフィックスはすべてのリソース名に付与されるため、同じアカウント内で複数回ソリューションをデプロイすることが可能になります。
./scripts/deploy-all.sh --deploymentPrefix qsr-cnこのスクリプトは事前チェックを実行した後、依存関係の順序に従って各 AWS CDK スack をデプロイします。その際、前のスタックの出力値を次のスタックへ引き継ぎます。
まずバックエンド側を構築し、Amazon DynamoDB テーブル、Amazon Location Service リソース、AWS Lambda 関数、そして Amazon API Gateway REST API を作成して、サンプルのメニューデータと場所データを初期化します。次に Amazon Connect インスタンスと AI エージェントアシスタントを作成し、バックエンド API の前に AgentCore ゲートウェイを設置します。さらに Amazon Lex V2 ボット、AI ガードレール、オーケストレーション AI エージェントを定義し、最後にコンタクトフローを作成して電話番号を取得します。
ゲートウェイは Connect インスタンスの後にデプロイされます。これは、トークンの検証を行う際にそのインスタンスが必要となるためです。
スクリプトが完了すると、ダイヤルする電話番号が表示されます:
Your restaurant AI host is live at +1XXXXXXXXXX — dial to test.コンタクトフローの仕組み
電話対応レイヤーの役割は限定的です。Amazon Connect が通話を受け付け、コンタクトフローがその後の処理を決定します。このコンタクトフローは、着信ごとに短いステップシーケンスを実行します。

まず、Contact Lens のログ記録を有効化し、各ステップが Amazon CloudWatch に記録されるようにします。これによりデバッグが可能になります。また、通話の音声設定を「Amazon Connect Agentic Voice」に指定することで、すべての発話応答がエージェント型テキスト読み上げエンジンを使用するようになります。通話者の電話番号はコンタクト属性として取得されます。
次に、アシスタントに関連付けられた Amazon Connect AI エージェントセッションを開き、Lex ボットが必要とするこのセッションを保存します。その後、Lambda 関数を呼び出して通話者の電話番号を AI エージェントセッションにプッシュし、エージェントが通話者に尋ねずに識別できるようにします。最後に短い挨拶を再生し、通話者を Amazon Lex V2 ボットへ接続します。このボットは、残りの通話におけるリアルタイム音声層を提供し、Agentic Voice Advanced ASR を使用して聞き取り、Agentic Voice TTS を使用して発話を行います。
AI エージェントの処理が完了すると、ボットは制御をコンタクトフローに戻します。コンタクトフローは結果を読み取って通話を終了します。エージェントは以下の 2 つの結果のいずれかで終了を示します。「Complete」は注文完了時の終了、「Escalate」は通話者が人間との接続を求めた場合に表示されます。本ソリューションでは両方の結果で通話が切断されますが、Amazon Connect で通話が管理されているため、「Escalate」パスを Amazon Connect キューに接続し、会話履歴を保持したまま生身のエージェントへ転送することも可能です。
メニュー、カート、注文の保存
注文ワークフローを支えるのは、5 つの Amazon DynamoDB テーブルです。"Customers" テーブルには顧客のプロファイル(氏名、電話番号、ロイヤリティ情報など)が格納され、再訪する通話者を識別するために利用できます。"Orders" テーブルでは注文履歴と受け取り場所の情報を保持します。"Menu" テーブルは商品名、価格、在庫状況などを管理しており、店舗によって内容が異なる場合があります。"Carts" テーブルには進行中のカート情報が保存され、有効期限(TTL)を設定することで、放置されたカートを自動的に削除する仕組みになっています。また "Locations" テーブルでは、座標や営業時間などの店舗詳細情報を保持しています。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み