前回のブログ投稿「Whatsapp アシスタントによるカスタマー サポートの向上」では、生成 AI や検索拡張生成 (RAG) などの高度なテクノロジーが旅行業界の従来のカスタマー サポート モデルにどのように革命を起こすことができるかを検討しました。今日は、Amazon Bedrock のベクトル化された Amazon Aurora および PostgreSQL ナレッジベースである Agents for Amazon Bedrock の力を活用する代替アプローチを紹介したいと思います。
このアーキテクチャでは、Bedrock エージェントがセッション追跡を処理するため、複雑な会話管理ロジックが不要になります。一方、Aurora PostgreSQL を使用した Amazon Bedrock のナレッジベースは高精度で状況に応じた応答を保証し、Amazon DynamoDB は乗客情報とサポート チケットの両方を保存するという 2 つの目的を果たします。 。
当社のソリューションの主な特徴は次のとおりです。
このアプリケーションは、AWS Cloud Development Kit (CDK) for Python を使用したコードとしてのインフラストラクチャを使用して 4 つの段階で構築されます。最初の段階では、Amazon Aurora PostgreSQL ベクトル データベースがセットアップされます。第 2 段階では、確立されたデータベースを使用して Amazon Bedrock のナレッジベースが作成されます。 3 番目の段階では、Amazon Bedrock エージェントの作成が含まれます。そして第 4 段階では、システムのユーザー インターフェイスを提供するために WhatsApp アプリケーションが展開されます。
✅ AWS レベル: 上級 - 300
前提条件:
?完了までのコスト:
注: この一連の CDK スタックは、同じ AWS アカウントおよびリージョン内にデプロイする必要があります。これは、各スタックが AWS Systems Manager (SSM) パラメーター ストア シークレットに重要な情報を保存するために作成され、その後、デプロイメント プロセスの次のステップでスタックによって取得されるためです。
受信メッセージ Webhook:
このプロセスは、ユーザーが WhatsApp 経由で音声メモ/テキスト メッセージを送信すると始まります。音声/テキストメッセージは、Amazon API Gateway を通じて受信され、AWS Lambda 関数によって処理されます。
メッセージの詳細は、分離および処理のために Amazon DynamoDB テーブルに保存されます。
オーディオテキストプロセス:
音声メッセージがある場合は、Amazon S3 バケットに保存されます。次に、Amazon Transcribe が音声をテキストに変換し、アシスタントに送信します。
テキスト メッセージのみの場合は、アシスタントの入力に直接送られます。
アシスタントの応答:
エージェントはクエリを処理して応答を生成し、DynamoDB テーブルまたはナレッジ ベースから追加データにアクセスする可能性があります。
ユーザーのリクエストに応じて、サポート チケットの作成や乗客情報の取得など、さまざまなアクションをトリガーできます。
最終応答は WhatsApp 経由でユーザーに返送されます。
git clone https://github.com/build-on-aws/rag-postgresql-agent-bedrock
Amazon Aurora PostgreSQL ベクター データベースをセットアップするため。検索拡張生成 (RAG) を実装するためのベクトル データベースの重要性について説明します。 AWS Cloud Development Kit (CDK) for Python は、データベース インフラストラクチャのセットアップに使用されます。これには、拡張機能のインストール、スキーマとロールの作成、カスタム構成を使用したテーブルとインデックスの設定など、データベースを準備するための詳細な手順も含まれています。
ここでは、Amazon Bedrock のナレッジベースの作成に重点を置いています。これには、S3 バケットをデータソースとして設定し、必要な IAM ロールとアクセス許可を設定し、AWS Systems Manager パラメータストアに情報を保存することが含まれます。ナレッジ ベースは、PDF の非構造化テキスト データを自動的に処理し、テキスト チャンクに変換し、ベクトル埋め込みを生成して、PostgreSQL データベースに保存します。このガイドには、セットアップと展開に関する段階的な手順が記載されています。
このプロジェクトでは、自然言語プロンプトを使用して PostgreSQL データベースに保存されているデータのクエリと分析ができる AI を活用したエージェントを構築する方法を示します。
Amazon Bedrock Agent を使用した高度な WhatsApp を活用した RAG Travel Support Agent の構築に関する 4 部構成シリーズの最終部です。このプロジェクトでは、API Gateway、Lambda、DynamoDB、S3、Transcribe などのさまざまな AWS サービスを統合し、ユーザー メッセージを処理して応答するためのワークフローを作成します。このアプリケーションは、テキストと音声メッセージの両方を処理し、音声を文字に起こし、情報検索のために Aurora PostgreSQL 上に構築されたナレッジ ベースを活用できます。
?ヒント: WhatsApp を使用したくない場合でも、大丈夫です。次の JavaScript アプリケーションを使用すると、AWS アカウントで利用可能な Amazon Bedrock のエージェントとナレッジベースを使用できる UI が作成されます --> Amazon Bedrock と AWS JavaScript SDK を使用した ReactJS Generative AI アプリの構築
この強化された WhatsApp Travel Assistant は、AWS の統合 AI およびデータベース サービスの力を実証します。 Amazon Bedrock のエージェントとナレッジベースの機能を、Aurora PostgreSQL と DynamoDB とともに活用することで、より合理化され、強力で、保守しやすいソリューションを作成しました。
サポート チケット システムの追加により、完全なエンドツーエンドの顧客サービス エクスペリエンスが提供され、AI を活用した初期対話の利点を維持しながら、複雑な問題のシームレスなエスカレーションが可能になります。
おそらくナレッジ ベースを拡張したり、エージェントの応答を変更したり、追加のサービスと統合したりして、この基盤を構築することをお勧めします。
AWS テクノロジーを使用して旅行カスタマーサポートに革命を起こすこの旅にご参加いただき、ありがとうございます。
詳細については、「貢献」を参照してください。
このライブラリは、MIT-0 ライセンスに基づいてライセンスされています。 LICENSE ファイルを参照してください。