AWSの生成AI、Amazon Bedrockで簡単にRAGシステムを構築する方法

はじめに

株式会社トラスト、AWSソリューションアーキテクト兼AI・MLエンジニアの高宮です。

今回は、AWSの生成AIアプリ作成ツールであるAmazon Bedrockを使って簡単にRAGシステムを構築する方法をご紹介します。

この記事で扱う内容は以下の通りです。

目次

1.そもそもBedrockとは?

2.RAGとは?

3.RAGシステム構築のおおまかな手順

4.モデルアクセスを有効化する

5. ナレッジベースを作成する

6.コンソールからテストする

7.お片付け

8.最後に

9. 参考文献

1.そもそもBedrockとは?

  • AWSが提供する生成AIアプリケーションを簡単に構築するためのツール
  • 一般に基盤モデル(FM:ファウンデーションモデル)と呼ばれる、膨大なデータに基づいて事前にトレーニングされた大規模モデルを搭載

AWSBedrockコンソール画面から抜粋

2.RAGとは?

RAGとはRetrieved Augmented generationの略

Generation(生成):検索された関連情報と入力クエリを組み合わせ、LLMを用いてそれらに基づく出力を生成する機能。

⇒RAGはRetrieve(検索)とGeneration(生成)を組み合わせることで、幅広い独自のデータを有効活用しながら、高品質な回答を生成するアプローチ

例:社内文書とLLMを組み合わせて、社内文書を検索・要約する。

3.RAGシステム構築のおおまかな手順

  1. モデルアクセスを有効化する
  2. ナレッジベースを作成する
  3. コンソールからテストする

これだけです。さっそく構築していきましょう!

4.モデルアクセスを有効化する

使用したいモデルにチェックを入れてNextをクリック

Submitをクリックするとモデルが利用可能となります。

5. ナレッジベースを作成する

まず、s3バケットを作成し、資料を格納します。

任意のバケット名を入力し、作成。

検索したい文書をアップロードする。

今回は弊社サービスの金のタネ|挑戦する中堅・中小企業のためのトラストのモノ・コト・夢づくり DXサービス のカタログをアップロードします。

対応しているデータ形式は以下です。

  • pdf
  • md
  • txt
  • doc
  • docx
  • html
  • csv
  • xls
  • xlsx

ファイルサイズは10mb未満。

File types: PDF, MD, TXT, DOC, DOCX, HTML, CSV, XLS, XLSX. There is a preset fixed token limit when using a file under 10MB.

Chat with your document data using the knowledge base – Amazon Bedrock

ナレッジベースと接続する。

任意のナレッジベース名を入力して次へ。

先ほど作成したs3バケットと紐づける。

埋め込みモデルで「Titan Text Embeddings V2」を選択、「新しいベクトルストアをクイック作成 – 推奨」を選択し、次へ。

確認したら、ナレッジベースを作成をクリック。

これで自動でベクトルデータベースを作成してくれます。

作成には数分かかるため、待機。

作成が完了すると、「ナレッジベースをテスト」ウィンドウが表示されます。

こちらでテストを行います。

6.コンソールからテストする

「モデルを選択」をクリックし、「モデルアクセスを有効化」手順で有効化したモデルを選択します。

ナレッジベースのデータを同期します。

同期完了後、赤丸部分のアイコンをクリック。

RAGモデルの調整画面が表示されます。

金のタネについて質問してみます。

サービスの概要を正しく認識し要約してくれていますね。ソースの詳細を表示をクリックすると、参考にしたナレッジベースのソースが表示されます。

7.お片付け

ナレッジベースはOpen Search Serviceが使われているため、作成されたベクトルデータベース毎にコストがかかります。ハンズオンのみが目的の場合は削除することをお勧めします。

Open Search Serviceのコレクションも削除。

以上、AWSの生成AI、Amazon Bedrockで簡単にRAGシステムを構築する方法でした!

8.最後に

トラストではAI、IoTシステムのコンサル・開発を行っています。

社内文書検索を作成したい!RAGシステムを構築したい!などご要望がありましたら、お気軽にお問い合わせください。

9. 参考文献

Prompt Engineering with Anthropic’s Claude 3