AI

Amazon BedrockでのRAGの構築手順とは?料金や精度を上げるコツも解説

Amazon BedrockでのRAGの構築手順とは?料金や精度を上げるコツも解説


企業が生成AIを業務に導入しようとすると、しばしば直面するのが「自社や業務についての質問に正確な答えが返ってこない」という課題です。これを解決する仕組みとして注目されているのがRAG(検索拡張生成)です。社内のデータを根拠に回答させる有力な手法ですが、自社で構築するとなると、ベクトルデータベースの用意や埋め込み処理の実装が必要で、着手をためらう企業も少なくありません。Amazon Bedrockのナレッジベース機能を使えば、こうした基盤を自前で用意することなくRAGを始められます。

本記事では、なぜBedrockが選ばれるのかという背景から、コンソール中心の具体的な構築手順、気になる料金の考え方、そして回答精度を高めるコツまでを紹介します。

なぜAmazon BedrockでRAGを構築するのか

RAGは、生成AIに社内の情報を踏まえた回答をさせるための代表的な手法です。Amazon Bedrockのナレッジベース機能は、構築の負担を抑えてRAGを始められる選択肢として支持を集めています。まずはRAGが解決する課題と、Bedrockが選ばれる理由を整理します。

RAGでハルシネーションと社内情報の壁を抑制できる

生成AIの基盤モデルは、学習していない社内固有の情報には答えられません。それでも回答を作ろうとするため、もっともらしい誤り、いわゆるハルシネーションを起こしやすいという課題があります。RAGは、この弱点を補う手法です。質問に関連する情報を指定したデータソースから検索し、その内容を根拠として生成AIに渡し、回答を生成させます。モデル自体を再学習させる必要がないため、社内文書やマニュアルといった最新情報にも、それらを更新するだけで追従できる点が大きな利点です。

ベクトルDBやパイプラインを自前で持たずに構築できる

一般的なRAGを自社で構築する場合、文章をベクトル化する埋め込み処理、ベクトルデータベースの用意、検索パイプラインの実装といった工程が必要になり、運用も含めて負荷が高くなりがちです。Bedrockのナレッジベースを使えば、これらの工程の大部分が抽象化され、コンソール操作を中心にRAGを始められます。さらに、回答には引用元が示されるため利用者が回答の根拠をたどりやすく、業務で使ううえでの信頼性を確保しやすいという実務上のメリットもあります。まず小規模に試す場合はもちろん、本格的に導入する場合でも、こうした導入のしやすさは大きな利点になります。

Amazon BedrockでRAGを構築する手順

ここからは、実際にナレッジベースを使ってRAGを構築する流れを紹介します。基本はコンソール中心で進められ、大きく「データソースの準備」「ナレッジベースの作成」「同期とテスト」の3段階に分かれます。

データソースとなるS3バケットと利用モデルを準備する

最初に、検索対象としたい社内ドキュメントを格納するためのS3バケットを作成し、PDFやテキストなどのファイルをアップロードします。このとき、S3バケットとナレッジベースは同じリージョンに配置しておく必要があります。あわせて、回答生成に使う基盤モデルと、テキストをベクトル化する埋め込みモデルを選定しておきます。なお、以前は利用前にモデルアクセスの有効化が必要でしたが、現在は不要になり、モデルカタログから直接モデルを選んで使えます。これにより、環境準備の手間が大幅に軽減されました。

ナレッジベースを作成して埋め込みモデルとベクトルストアを設定する

次に、コンソールよりナレッジベースを新規作成し、データソースとして先ほど用意したS3バケットを指定します。続いて、選定済みの埋め込みモデルを指定します。あわせて、ベクトル化したデータを保存するベクトルストアを設定します。ベクトルストアには複数の選択肢があり、コンソールのクイック作成ではOpenSearch Serverlessが自動的に選ばれますが、後述するコストを踏まえると、用途に応じてS3 VectorsやAurora PostgreSQLなども有力な候補となります。検証段階か本番か、想定するデータ規模はどの程度かによって、適した構成は変わります。

データソースを同期してコンソールやAPIでテストする

設定が完了したら、データソースの同期を実行します。同期を実行すると、ドキュメントは適切な単位に分割(チャンク分割)され、ベクトル化されたうえでベクトルストアに格納されます。データ量が多い場合、同期の完了まで時間がかかることもあります。同期を終えたら、コンソールのテスト機能を使い、想定する質問に正しく答えられるかを確認します。本番のアプリケーションに組み込む際は、RetrieveAndGenerateなどのAPIを呼び出して連携させる流れになります。

Bedrock RAGの構築にかかる料金の考え方

RAGを導入するうえで気になるのが料金です。まずBedrockのナレッジベースは、機能そのものに料金が発生しません。コストの中心になるのは、裏側で動くベクトルストアの費用と、埋め込み・回答生成に使うモデルの利用料です。とくに注意したいのがベクトルストアの選び方で、この選び方が全体のコスト感を大きく左右します。
たとえば、クイック作成で標準的に選ばれるOpenSearch Serverlessは、処理能力をOCU(OpenSearch Compute Unit)という単位で常時確保するしくみです。本番向けの冗長構成では最低2OCUが必要とされ、東京リージョンの場合、月額200ドルを超える固定費がかかる傾向があります。性能は出やすい一方、検証やPoCの段階ではこの固定費が負担になりがちです。なお、開発・テスト用の構成にすれば最低1OCUまで下げられるほか、近年はアイドル時に処理能力をゼロまで縮小できる新しい構成も登場しており、選び方によって負担は変わります。
一方、2025年12月に一般提供が始まったS3 Vectorsは、保存したデータ容量に応じた課金が中心のため、小規模な構成では費用を大きく抑えられます。フルマネージドな構成にするほど運用の手間を抑えられる反面、コスト管理の考え方が構成ごとに異なるという点は、事前に押さえておきたいポイントです。 また見落としやすい注意点として、ナレッジベースを削除してもベクトルストアは自動では削除されず、課金が続いてしまう場合があります。検証が終わったら、ベクトルストアを個別に削除する必要があります。PoCの段階では、使い終わった環境を必ず片付けるという運用ルールを徹底しておくと、想定外の課金を防げます。

RAGの回答精度を高めるためのコツ

ナレッジベースを使えば構築自体は比較的容易ですが、作っただけでは期待した精度が出ないこともあります。ここでは、回答精度を引き上げるための実務的なポイントを紹介します。

チャンク分割やパーサーをデータの性質に合わせて調整する

精度を左右する要素のひとつがチャンク分割です。チャンクが小さすぎると文章の前後の文脈が失われ、大きすぎると回答に不要な情報まで含まれてしまうというトレードオフがあります。分割方法には固定サイズ、階層型、意味のまとまりで区切るセマンティックなどがあり、扱うデータの性質に合わせて選ぶことが大切です。また、図表を多く含むPDFのような文書では、テキストを抽出するパーサーの選択も精度に影響します。データの形式や内容を踏まえて調整することが、安定した回答への近道です。

評価とデータ見直しを継続して改善し続ける

回答精度は、特定のパラメータをひとつ変えれば決まるものではなく、複数の要素のバランスが重要です。そのため、良い回答とはどのようなものかという評価指標を設け、継続的に改善していくことが欠かせません。
あらかじめ想定質問と理想的な回答を用意しておき、検索された情報が質問にどれだけ関連しているか、生成された回答が根拠に忠実か(誤りを含んでいないか)、回答が正確か、といった観点で確認することができます。評価の手段も、大規模言語モデルに回答を採点させる方法、正解との一致度を機械的に測る方法、担当者が目視で確認する方法などがあり、目的や規模に応じて使い分けます。Amazon Bedrockにはこうした評価を支援する機能が用意されており、測定で見つかった弱点をチャンク分割や使用モデルの調整に反映し、この評価と改善のサイクルを運用に組み込むことが、精度を安定させる近道です。
あわせて重要なのが、データソースそのものの見直しです。古い情報や誤りが含まれていれば、そのまま回答に反映されてしまいます。定期的にデータを見直し、最新かつ正確な状態を保つ運用が、長期的な精度維持につながります。

まとめ

ここまで、Amazon Bedrockを使ったRAGの構築について見てきました。Bedrockのナレッジベースを使えば、ベクトルストアや検索パイプラインを自前で持たずにRAGを構築できます。料金構造を理解してベクトルストアを適切に選び、チャンク分割の調整や評価指標にもとづく継続的な改善といった、精度を高めるポイントを押さえれば、社内データの活用に十分踏み出せます。とくに、データをAmazon S3に格納するだけで運用できる構成にすれば、ベクトルストア周りを強く意識せずに使え、運用負荷を抑えやすくなります。
一方で、本番運用となると、コスト最適化やセキュリティ設計には継続的な知見が求められるのも事実です。社内に十分なノウハウが蓄積されていない場合は、外部の知見を借りるのも現実的な選択肢といえます。そうした支援を担う事業者のひとつとして、KDDIアイレット株式会社(旧アイレット株式会社)はS3を中心とした構成での生成AIチャットの導入・運用を支援するサービスを提供しており、検証から本番運用までを伴走します。自社の体制と要件に無理のない形で、生成AI活用の第一歩を踏み出していきましょう。

  • fb-button
  • line-button
  • linkedin-button

無料メルマガ

CONTACT

Digital Intelligenceチャンネルへのお問い合わせはこちら

TOP