Amazon S3 Vectorsを使って簡単にRAGを実装してみた

Amazon S3 Vectors

Amazon S3 Vectorsとは

Amazon S3 Vectorsは7月15日に発表されたストレージサービスです。大規模なベクトルデータセットを保存でき、秒以下のクエリパフォーマンスを提供するネイティブなサポートを備えたサービスとのこと。現在はプレビュー段階で、ベクトルデータのアップロード、保存、クエリにかかる総コストを最大90%削減できるとされています。

Announcing Amazon S3 Vectors (Preview)—First cloud object storage with native support for storing and querying vectors

これを使ったRAGを作ってみたい!

昨年からこちらの書籍を参考に、Knowledge bases for Amazon Bedrock(以下ナレッジベース)でRAGを作るハンズオンを社内で行っていました。しかし、実際にプロダクトを作るとなると、使用するサービスや費用面で悩んでいましたが、そんなときにこのニュースが飛び込んできました。

ナレッジベースとは、AWSマネージメントコンソールのGUI操作だけでRAGが実装できる機能です。従来のソリューションでは、簡単にRAGを構築するためにはAmazon OpenSearch Serverlessや外部のベクトルDBなどを使う必要がありました。
そこで今回は、Amazon S3 Vectorsを使って実際にRAGができるのかを試してみます。

ナレッジベースを使ったRAGの実装

データソースの作成

現在、このサービスはバージニア北部、オレゴン、シドニーなど5リージョンでプレビューとして利用可能です。今回はオレゴンにS3バケットを作成し、MBSの最新のニュースリリースのPDFを保存しました。

ナレッジベースの作成

Amazon Bedrockのサービス内のナレッジベースを選択し、「ベクトルストアを含むナレッジベース」を作成します。

データソースはAmazon S3を選択し、S3のURIは先ほどPDFをアップロードしたバケットを指定します。

次に、埋め込みモデルは今回Titan Text Embeddings V2を選択し、ベクトルデータベースは「新しいベクトルストアをクイック作成」を選びます。
すると、選択画面に今まで見たことがなかった「Amazon S3 Vectors - プレビュー」が出現しました。こちらを選択してナレッジベースを作成します。

ナレッジベースを作成後、データソースを同期させれば完成です。ここまでは5分程度で進めることができました。

検証

Bedrockのプレイグラウンド上で、何も情報を与えていないClaude 3 Haikuと、ナレッジベースで作ったデータから取得した結果に基づいて応答するClaude 3 Haikuに、同じ質問を投げて比較してみました。

第50回のJRN・JNNアノンシスト賞のMBSアナウンサーが受賞した内容を教えてください

ちなみに、アノンシスト賞とはJNN・JRN系列のアナウンサーを対象とした賞で、優れたアナウンス技術を表彰するものです。2025年の第50回では、MBSアナウンサーが5部門で受賞しました。

まず、プレイグラウンドから何も情報を与えていないClaude 3 Haikuに尋ねてみると、このような結果になりました。

申し訳ありませんが、第50回のJRN・JNNアノンシスト賞のMBSアナウンサーが受賞した内容の詳細については、確認できる情報が見つからなかったです。

続いて、ナレッジベースを使ったClaude 3 Haikuに同じ質問を投げると、以下のような結果になりました。

第50回のJRN・JNNアノンシスト賞において、MBSのアナウンサーが以下の受賞をしました:
- 【最優秀賞】 〈テレビ実況部門〉 金山泉アナウンサー
- 【最優秀賞】 〈CM部門〉 福島暢啓、金山泉、玉巻映美、中野広大アナウンサー
- 【優秀賞】 〈ラジオ読み部門〉 松本麻衣子アナウンサー
- 【優秀賞】 〈テレビフリートーク部門〉 玉巻映美アナウンサー
- 【活動部門賞】 MBSアナウンサーの30年にわたる朗読イベントの開催

無事、正解を導いてくれました。めでたしめでたし。

さいごに

気軽にRAGを作りたいときにとても便利なナレッジベース。そのベクトルデータを保存するものとして、S3 Vectorsができたことで、より安価に簡単にRAGのテストができるようになったと思います。

また特に今回感じたのは、やはりコスト面での改善です。OpenSearch Serverlessだと最小構成でも月額数万円かかってしまうのですが、S3 Vectorsは使った分だけの従量課金。個人開発者や小規模なチームにとってはかなり魅力的だと感じました。

プレビュー段階ということもあり、まだ5リージョンでしか使えませんが、正式リリースされて東京リージョンで使えるようになったら、RAGのハードルがさらに下がりそうです。
RAGを始めてみたいけどコストと気軽さが気になるという方にはぜひ試してもらいたいサービスです。

Previous Post