Bedrockを使用してRAGを行う
RAGはRetrieval-Augmented Generationの略で外部の知識ベース(ドキュメント等)を検索してそのドキュメントを元にLLMで回答を生成するというものである。
今回はOpenSearchの構築、Amazon Bedrockの知識ベースの構築、文書をOpenSearchに取り込む方法を紹介する。 ドキュメントをOpensearchやS3などの知識ベースに取り込むデータパイプラインを構築し、質問を受けたときに検索できるようにする。
RAGはRetrieval-Augmented Generationの略で外部の知識ベース(ドキュメント等)を検索してそのドキュメントを元にLLMで回答を生成するというものである。
今回はOpenSearchの構築、Amazon Bedrockの知識ベースの構築、文書をOpenSearchに取り込む方法を紹介する。 ドキュメントをOpensearchやS3などの知識ベースに取り込むデータパイプラインを構築し、質問を受けたときに検索できるようにする。
QAを実行する方法を紹介する。 今回は特定の車種のタイヤの交換方法を答えるQAを作成する。
モデルは知識ベースのデータに対してクエリを実行して正確な情報を含む応答を生成する。 生成AIモデルは確率分布を使用して質問に対する応答を生成する。モデルは膨大なテキストデータでトレーニングされているため、シーケンスや単語の次に何が続くかを予測できる。 ただし、モデルには確実性がないためすべての質問に対して正確な答えを返すことはできない。
プロンプトに知識ベースを追加することで正確な答えを返すことができるようになる。 この方法は短い知識ベースでで機能するが、知識ベースが長い場合は使用できない可能性がある。
以下の順番でモデルに対して質問を行う。
ファイルやディレクトリ (フォルダ) を参照するショートカットを作成できる……というのは、普段からパソコンを使っている人ならご存知でしょう。