Amazon Web Services ブログ

【開催報告 & 資料公開】RAG の困りごとは今日で一気に解決! AWS 生成 AI Dive Deep

みなさま、こんにちは!Generative AI Specialist の大渕です。この記事では、RAG (Retrieval Augmented Generation) を使って自社の課題を解決したり自社サービスを強化したりしたいと考えているみなさまに耳寄りな情報をお届けします。

2024年9月19日に、RAG に関する悩みを持っている方を対象とした AWS オンラインセミナー「RAG の困りごとは今日で一気に解決! AWS 生成 AI Dive Deep」が開催され、実用的な情報盛りだくさんの 3 つのセッションが実施されました。セミナーの見どころとしては、以下のとおりです。いずれかにピピっと来たら、ぜひこの記事を読み進めてください。

  • RAG の概要ではなく、実践的なテクニックや開発の進め方を知ることができる
  • RAG でよくある課題とその解決策を具体的に知ることができる
  • RAG に欠かせない AWS サービスとその使い分けを知ることができる

セッションの紹介

それではさっそく、セッションの内容を紹介します。資料と動画も公開されているので、詳しく知りたい方はそれぞれのリンクをクリックしてください。

RAG on AWS dive deep [資料] [動画]

アマゾン ウェブ サービス ジャパン合同会社 公共部門ソリューションアーキテクト 宮口 直樹

miyaguchi

rag structure

はじめのセッションでは、SA 宮口より、RAGを構築する上で多くの方が悩むであろう、ベクトル DB、埋め込みモデル、チャンキングなどの各コンポーネントのサービス選定のポイントを紹介しました。それぞれのコンポーネントを実現する AWS サービスや OSS の選択肢を知り、それぞれの特徴や機能の違いを理解することで、ユースケースに合わせてサービスを選択できるようになります。また、基盤モデルの進化に伴い、テキストだけではなくマルチモーダル RAG も実用レベルになってきたことから、マルチモーダル RAG の概要と実現方式についても紹介しました。

あなたの RAG の精度を改善!Advanced RAG on AWS のすヽめ [資料] [動画]

アマゾン ウェブ サービス ジャパン合同会社 機械学習ソリューションアーキテクト 本橋 和貴

motohashi

advanced rag method

2つ目のセッションでは、SA 本橋より、RAG の精度改善のさまざまなテクニックを紹介しました。「Amazon Kendra と Amazon Bedrock で構成した RAG システムに対する Advanced RAG 手法の精度寄与検証」という AWS ブログでも紹介した Advanced RAG のそれぞれの手法と使いどころが説明されており、RAG の精度改善に取り組もうとしている方にとって、非常に有用な内容となりました。また、精度改善のために闇雲にリッチな手法を適用するのではなく、都度評価を実施してどこに問題があるのかを明らかにした上で適切な手法を選んでいくべき、という指針にも言及がありました。最後には、Graph RAG に関する紹介もあり、今後も RAG がさまざまなユースケースで使われるだろうことが予見される締めくくりでした。

本セッションの内容をもとにしたブログ「RAG の精度を向上させる Advanced RAG on AWS の道標」も公開していますので合わせてご覧ください。

Retrieval-Augmented Generation (RAG) の評価 [資料] [動画]

アマゾン ウェブ サービス ジャパン合同会社 Telco Solutions Architect 近藤 健二郎

kondo

rag evaluation

最後のセッションでは、SA 近藤より、RAG の評価についての実践的な考え方やテクニックを紹介しました。RAG の評価方法として確立された手法はまだないため、実行しようとすると一筋縄ではいかないこともありますが、実用化に向けた試行錯誤の効果を測るには評価は欠かせません。そこで、一般的な RAG の評価に関する課題やよく利用される評価項目と、RAG 評価の実践的なプラクティスを紹介しました。これから RAG を試す人や RAG を構築中の人に、評価に関する気付きを与えるセッションとなりました。

いただいた質問と回答

セミナーでは、参加者の皆様からたくさんの質問をいただきました。代表的な質問と回答を以下にまとめたので、参考にしていただければ幸いです。

Q. RAG で使いたいドキュメントに表データがあるのですが、上手く読み込めていないようです。表データを含むドキュメントを扱う際の良い方法はありますか。

A. 前処理として LLM を用いた表のマークダウン化をお試しされてはいかがでしょうか。Amazon Bedrock Knowledge BasesのAdvanced Parsing (高度なパース) 機能では、LLM (Anthropic Claude 3) を用いた図表の読み取りが可能です。詳しくは こちらのブログ記事 をご参照ください。

Q. Cohere のリランキングモデルを AWS から使う方法を教えてください。

A. Cohereのリランキングモデルは、Amazon SageMaker JumpStart を通じて簡単にデプロイし、利用することができます。詳しくは こちらのブログ記事 “Improve RAG performance using Cohere Rerank” を参照してください。

Q. Graph RAG における LlamaIndex はどのような役割を担っていますか?

A. Amazon NeptuneはグラフDBであり、LlamaIndexのようなツールを用いることで、ドキュメントをグラフDBに格納可能な形式に変換して保存することができます。詳しくは LlamaIndexのドキュメント をご参照ください。

まとめ

生成AI の業務活用においてよく使われる RAG ですが、いざ業務で使おうとするとさまざまな課題に遭遇します。その課題は、速度や性能だったりしますが、どのように解決したら良いのか悩まれている方も多いと思います。このセミナーの内容が、そんな悩めるみなさまにとって、課題解決の糸口を見つけるきっかけとなれば幸いです。

RAG のベクトル DB の部分を Amazon OpenSearch Service で構築したいとお考えの場合、こちらの GitHub repo のサンプルコードがお役に立つかもしれません。CDK で実装されており、日本語テキストのためのトークナイザ Sudachi プラグインが適用された状態の OpenSearch domain を簡単に構築することができます。本セミナーの 2つ目の Advanced RAG のセッションで紹介されたテクニックを試すためのベースとしてお使いいただけます。