🦎

Bedrock&ナレッジベースでRAGを作ったら料金結構かかってた

に公開

AI技術も最近はMCPが話題で、今更RAGかよって感じはあるかと思いますが、「RAGって結局どうやって作るの?」という点をキャッチアップできていなかったので、今更ながら手を動かして確認しておきたくて、Amazon Bedrockのナレッジベースを個人のAWSアカウントで触っていました。

RAG自体はコンソールからぽちぽちするだけで簡単に作れて満足したのですが、翌日見ると料金が思ったよりかかってたので、その内容を記録としてメモ。

Bedrock ナレッジベースで RAG を作る流れ

Bedrock のナレッジベースは、ドキュメントをアップロードすると自動的に埋め込み(自然言語をベクトルに変換する)を作成してベクトルストアに格納し、検索までやってくれる仕組みです。

手順については以下の記事など、すでにたくさん記事があると思うので、簡単に流れだけ記載します。

https://techblog.nhn-techorus.com/archives/31758

  1. ドキュメントを準備(S3 に PDF やテキストをアップロード)
  2. ナレッジベースを作成(コンソールから設定。裏では埋め込みモデルが動く)
  3. エージェントから呼び出し(Bedrock Agent を使って RAG っぽい応答が可能に)

コードを書かなくても「質問したらドキュメントから答えてくれる」という仕組みが数クリックで完成し、今更ながらすごいなと思いました。

思ってたより料金がかかってた

Bedrock自体は従量課金のイメージがあり、ベクトルストアに選んだOpenSearchもServerlessにしてるから、料金もたかが知れてるかなぁと思い、↑を作って満足して放置してました。

自分の場合は、たまたま個人ブログに使ってたLightSailを管理するために、翌日ちらっと請求を見ると、たった1日でベクトルストアに使ってるOpenSearch Serverlessに$15かかってました。(Bedrock自体は使った分だけの設定になってて、個人開発には優しい。)

料金を見ると、東京リージョンの場合、インデックス作成用・検索用でそれぞれ1時間あたり$0.334かかり、1ヶ月あたりだと合計で0.334*24*30*2$480くらいかかる計算になりそうです。

https://aws.amazon.com/jp/opensearch-service/pricing/

1ドル150円で考えると、7万円ちょい。個人で勉強する分にはだいぶ高いですね、、ほんと翌日気づいてよかった。

一旦お片付け

これ以上課金されるのは嫌なので、お片付けします。Bedrockのナレッジベースを削除するだけだと、以下の警告の通り肝心のOpenSearchのベクトルストアは削除されないので注意。

OpenSearchの画面にいって、コレクションも削除します。これで一安心のはず。

コスト対策どうするか?

上記の値段を高いととらえるかは、企業とかサービスの置かれてる状況次第な気はします。
一方で、個人開発だったりPoC開発などで、少しでもコストを削減したい場合は、以下の記事で紹介されてるように、OpenSearch Managed Clusterというのを使うのが良さそう。

https://dev.classmethod.jp/articles/amazon-bedrock-knowledge-bases-opensearch-cluster-vector-storage/

これを使うと、ミニマムで$41まで削減できるようなので、気が向いた時に試してみようかと思います。

Discussion