LexとBedrockをノーコードで連携できるQnAIntentを試してみた

今回は先日GAとなったAmazon LexのQnAIntent機能を試してみたいと思います。
これまでLexからBedrockのモデルにアクセスするためにはLambdaなどを使用していましたが、QnAIntentを使うことでLexとBedrockを直接連携できるようになります。
これにより簡単な一般常識の回答はもちろん、BedrockのナレッジベースやKendraなどと連携することでRAG(検索拡張生成)を構築し、専門領域や社内資料などをベースとした回答までノーコードで自動化できるようになりました。

エンジニアのyokomachiです。

今回は先日GAとなったAmazon LexのQnAIntent機能を試してみたいと思います。

Amazon Lex の QnAIntent が一般提供開始

これまでLexからBedrockのモデルにアクセスするためにはLambdaなどを使用していましたが、

(参考:【Amazon Connect】Bedrock+Lex+LambdaでAIチャットボットを構築する

QnAIntentを使うことでLexとBedrockを直接連携できるようになります。

併せてBedrockのナレッジベースやKendraなどと連携することでRAG(検索拡張生成)を構築し、専門領域や社内資料などをベースとした回答までノーコードで自動化できるようになりました。

 

現在QnAIntentは米国東部 (バージニア北部) および米国西部 (オレゴン) リージョンにおいて英語(US)のインテントで使用可能で、

対応しているLLMモデルはAnthropic Claude V2 と Anthropic Claude Instantになります。

高性能と話題のClaude V3への対応も今後期待したいところです。

Bedrockの構築

モデルアクセスの有効化

まずはBedrockで今回使用するLLMモデルへのアクセスを有効化します。

今回はLexで利用するためClaude V2へのアクセスを有効化します。

また、BedrockのKnowledge baseでデータソースのRAGを構築するためにTitan Embeddings G1 – Textへのアクセスも有効化します。

 

ナレッジベースの作成

RAGのベースとしてBedrockのKnowledge baseを利用します。

今回は弊社製品のSylphina(Sylphina | Amazon Connect拡張クラウドサービス)の製品ページをデータソースとするため、PDF化してS3に保存しておきました。

以下の設定でKnowledge baseを作成しました。

 

そのままBedrockのコンソールで試してみましたが、ちゃんと応答できています。

 

Lexの構築

QnAIntentの作成

続いてLexでQnAIntentを作成し、Bedrockと連携させます。

新規で空のボット作成後、英語(US)で新規のインテントを作成します。

組み込みインテントとして「AMAZON.QnAIntent」を選択してインテントを作成します。

 

作成したインテントにQnA configurationという設定ブロックがあるので、

そこで利用するLLMモデルとKnowledge baseのIDを指定します。

 

以上で構築は完了です。

Lexのコンソールでテストしてみます。

 

Knowledge baseにインポートしたドキュメントは日本語でしたが、QA対応は英語でも日本語でも回答できていますね。

ここからさらに拡張したい場合には、Amazon Connectと連携させて音声チャネルに対応することも可能です。

 

ノーコードでQAボットを構築できるようになったことで、より生成AIを手軽に試しやすくなりました。

今回構築した内容だけでも、試験的に導入するには十分な精度に感じられます。

お片付け

上記で作成したリソースを削除する場合、LexとBedrockのKnowledge base、S3のデータはそのままコンソール上で削除して問題ありません。

ただし、Knowledge baseの作成時に裏でOpensarch Serverlessのコレクションが作成されています。

これはKnowledge baseを削除しても残っているので手動で削除する必要があります。

放っておくとそれなりの料金が発生するようなので忘れずに削除しておきましょう。

 

参考

AMAZON.QnAIntent – Amazon Lex

Amazon Bedrock のナレッジベース – Amazon Bedrock

[プレビュー]Amazon Lexでは、ノーコードで簡単に、RAGのチャットボットを構築できるようになりました #AWSreInvent | DevelopersIO

この記事が気に入ったら
いいね ! しよう

Twitter で

【採用情報】一緒に働く仲間を募集しています

採用情報
ページトップへ