検索
連載

AWSユーザーで生成AIを使って社内情報活用 RAGの構築は難しくないサクッと生成AI業務活用ガイド(4)(1/2 ページ)

「RAG」という技術を使い、多くの企業が社内情報の活用に取り組んでいます。一方で、「難しそう」と尻込みしている人も多いのではないでしょうか。今回は利用者の多いAWSで、コードを書くことなく簡単にRAGを構築する方法を紹介します。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 社内文書や製品マニュアルをはじめとする独自データに基づく回答を生成する「RAG(Retrieval-Augmented Generation)」システムは、多くの企業にとって魅力的な選択肢です。一方で、構築には専門知識やインフラコストが壁として立ちはだかります。

 前回の記事では、Google Cloudで簡単にRAGが構築できることを紹介しました。今回は、利用している企業が多いAmazon Web Services(AWS)にフォーカスして、同じようにRAGを構築してみます。

※ ここでは、AWSおよびAmazon Bedrock自体の解説や利用開始方法については触れません。

Amazon BedrockのKnowledge BasesでRAGを構築する

 前回記事でも触れましたが、生成AIの自前構築にはLLM(大規模言語モデル)の専門知識、インフラ構築、継続的なメンテナンスなど、多くの課題が伴います。「Amazon Bedrock Knowledge Bases」は、これらの課題を解決するために設計されたサービスです。

専門知識のハードルを低減: データソースを指定するだけで、情報の検索(リトリーバル)から回答生成まで、RAGシステムの根幹を成す複雑なプロセスを自動で構築してくれます。

高いセキュリティ: 入力されたデータは自社のAWSプロジェクト内で管理され、モデルの学習に利用されることはありません。これにより、機密情報の漏えいリスクを低減できます。

最新・高性能モデルの利用: Anthropicの強力な生成AIモデル(Claude Sonnet 4など)を、回答のジェネレーターとして簡単に利用できます。

 今回も前回と同様に、船員法を例としたRAGアプリケーションを構築します。Amazon Bedrock Knowledge Basesで作成するアプリケーションは次のようなものになります(クリックでアニメーション表示)。


クリックでアニメーション表示されます

 RAG構築の大まかな流れは、前回の「Vertex AI Search」によるRAG構築と同様です。

ナレッジの器を作る(データストアの作成):AIに参照させたい社内文書(PDFやHTMLなど)を「Amazon Simple Storage Service(Amazon S3)」にアップロードします。

検索アプリの作成と設定:次に、Knowledge Basesのコンソール上で、そのデータ群を「知識ソース」として指定し、数クリックで検索アプリケーションを作成します。

テストと確認:最後に、作成したアプリケーションのプレビューを通して確認をします。

 作成後、プレビュー画面で動作確認が可能です。社内文書に関する質問を入力すれば、AIが内容を理解し、根拠となるドキュメントへのリンク付きで回答を生成します。

 では、実際にRAGを構築していきましょう。基本的にはガイドに従って作成するだけです。Vertex AI Searchと同様、簡単にできると思います。

ステップ1 ナレッジの器を作る(データストアの作成)

 最初にデータストア、つまりナレッジを格納する場所を作ります。今回は、Amazon S3のバケットをデータストアとして利用します。Amazon S3とは、ドキュメントやPDF、動画などを格納できる「Google Cloud Storage」と同様のファイルサーバです。

 「バケットを作成」を選択すると、バケット情報登録画面が表示されるので、以下の要領でバケットの情報を入力します。

手順 項目 入力値(例)
一般的な設定 AWSリージョン ap-northeast-1
バケットタイプ 汎用
バケット名 任意
オブジェクト所有者 ACL ACL無効
このバケットのブロックパブリックアクセス設定 パブリックアクセスを全てブロック オン(チェックする)
ひも付くアクセス制御全てがオンになる
バケットのバージョニング バケットのバージョニング 無効にする
タグ-オプション タグ なし(タブを追加しない)
デフォルトの暗号化 暗号化タイプ Amazon S3マネージドキーを使用したサーバ側の暗号化(SSE-S3)
バケットキー 有効にする
詳細設定 オブジェクトロック 無効にする

 一通り入力して「バケットを作成」ボタンを押せば、バケットが作成されます。

 作成したバケットを選択し、「アップロード」ボタンを選択します。すると、アップロードファイルの選択画面が表示されるので、ドキュメント一式を選択してアップロードして下さい。

ステップ2 検索アプリの作成と設定

 次に、ユーザーが質問を入力し、AIが回答を生成するためのアプリケーションを作成します。

 AWSのコンソール画面より「Amazon Bedrock」を選択し、その中から「ナレッジベース」を選択します。

 「ナレッジベースを作成」欄の下側、もしくは一覧の右上にある「作成▼」ボタンを押すと「ベクトルストアを含むナレッジベース」と「構造化データストアを含むナレッジベース」のどちらかを選ぶことができます。今回は「ベクトルストアを含むナレッジベース」を選択します。

 ナレッジベースを設定する画面に遷移するので、以下を参考に入力してください。

手順 項目 入力値(例)
ナレッジベースの詳細を指定 ナレッジベース名 (デフォルト値をそのまま利用)
ナレッジの説明 (任意)
IAM許可 新しいサービスロールを作成して使用
※デフォルトのサービスロール名をそのまま設定
※2025年7月31日現在、Amazon OpenSearch ServerlessのIAM設定はインラインポリシーでのみ設定可能
タグ (新しいタグは追加しない)
ログ配信 (追加しない)
データソースを設定 データソース名 (デフォルト値をそのまま利用)
データソースの場所 このAWSアカウント
S3のURI ※「S3 を参照」 ボタンから先ほど作成したS3バケットを選択(リンクではなくラジオボタンを選択するよう気を付ける)
S3データ用のカスタマーマネージドKMSキーを追加 オフ(チェックしない)
解析戦略 Amazon Bedrockデフォルトパーサー
チャンキング戦略 デフォルトチャンキング
変換関数 (設定しない)
詳細設定 (設定しない)
データストレージと処理を設定 埋め込みモデル カテゴリ:Amazon
モデル:Titan Text Embeddings V2
推論:オンデマンド
ベクトルデータベース ベクトルストアの作成方法:新しいベクトルストアをクイック作成
ベクトルストア:Amazon OpenSearch Serverless

 一通り入力してナレッジベースの作成を開始し、しばらく待つと作成が完了します。

Copyright © ITmedia, Inc. All Rights Reserved.

       | 次のページへ
[an error occurred while processing this directive]
ページトップに戻る