RAGベクトル・データベースとは

RAGベクトル・データベースの定義

検索拡張生成(RAG)ベクトル・データベースは、人工知能(AI)と高度な検索を組み合わせることで、大規模言語モデル(LLM)がリアルタイムで関連情報を取得し、より正確で文脈を考慮した応答を生成することを可能にします。

RAGベクトル・データベースは、取得アーキテクチャー(RAG)とデータ層(ベクトル・データベース)という2つの主要コンポーネントで構成されています。

RAGとは

RAGは、言語モデルを外部の知識ソースに接続するアーキテクチャーであり、関連情報を取得し、問い合わせ時にそのコンテキストを応答に組み込むことができます。このアプローチは、知識の中断、ハルシネーション(幻覚)、分野固有性の欠如など、LLMの一般的な制限に対処します。

ベクトル・データベースとは

ベクトル・データベース(またはベクトルDB)は、データベクトル埋め込みと呼ばれる数値表現として保管および取得し、キーワードの完全一致ではなく、意味的類似性に基づく検索を可能にします。このプロセスにより、言い回しが異なる場合でも、システムは意味に基づいて情報を取得できます。

この技術による性能の向上は測定可能です。Wikimedia DeutschlandがWikidataの1億2千万エントリーのナレッジ・グラフをLLMでアクセス可能にする必要があったとき、ベクトル・データベースとしてDataStax Astra DB on IBM watsonx.dataを選択しました。その結果、問い合わせの速度はローカルのベクトル計算に比べて30倍高速になり、開発時間は90%短縮されました。これにより、チームはインフラストラクチャーの維持ではなく構築に集中できるようになりました。

ほとんどのRAG実装では、RAGシステムはベクトル・データベースまたはベクトル・インデックス技術に依存して意味検索を可能にします。ただし、ベクトル検索は厳密には必要ではありません。RAGアーキテクチャーには、ユースケースに応じて、キーワード検索、構造化照会、またはハイブリッド・アプローチを組み込むこともできます。

RAGベクトル・データベースが重要な理由

RAGベクトル・データベースは、機械学習生成AIシステムが情報にアクセスし、適用する方法を刷新します。知識をモデル内に固定されたものとして扱うのではなく、コンテキストに応じて動的に取得、評価、使用できるものとして扱います。

この変化は、知識、検索、根拠付け、操作という4つの主要領域に影響を及ぼします。

ナレッジ

最も高度なモデルでさえ、トレーニング・データの制約を受けます。データが古くなったり、ユースケースが特殊になったりするにつれて、ギャップが現れ始めます。

RAGは、研究者がしばしば「非パラメトリック記憶」と呼ぶもの、つまりモデルのパラメーターに保管されるのではなく、ランタイムに問い合わせできる外部の知識を導入することで、この問題に対処しています。1

取得

従来の検索システムは通常、ユーザーとデータが同じ言語を使用することを前提とするキーワード一致に依存しています。実際にはそうでないことがよくあります。ベクトル・データベースは、検索を単語の一致から意味の一致に移行し、ベクトルの類似性を使用して表現がどれだけ厳密に一致しているかを比較します。

RAGシステムで使用されるハイブリッド検索アプローチは、意味検索と従来の検索手法を組み合わせることで、特にデータが異種混合で複雑な企業環境において、再現率と精度の両方を向上させることができます。2

接地

生成モデルは確率的です。つまり、検証された事実ではなく、妥当な回答を生成します。これによりハルシネーションのリスクが生じます。

RAGは、取得したデータに基づいて応答を導き出すことで、この問題を軽減します。医療や教育などの分野にわたる研究は、検索と生成を組み合わせることで、質問応答システムの事実の正確性と信頼性が向上することを示しています。3

オペレーション

RAGは、AIシステムの保守と拡張の方法を変えます。組織は、新しい知識を組み込むためにモデルを再トレーニングする代わりに、基礎となるデータや検索ロジックを更新できるため、ユースケース全体で反復処理が迅速化し、適応性が向上します。

その結果、RAGは最新のAIシステム、特にモデルが正確な応答を生成するために最新データや外部データにアクセスする必要があるエンタープライズ環境や消費者向けアプリで、主要なアーキテクチャー・パターンになっています。

AI Academy

生成AIの成功の鍵はデータ管理

生成AIの使用を成功させるために、高品質のデータが不可欠である理由をご覧ください。

RAGベクトル・データベースの仕組み

大まかに言うと、RAGベクトル・データベースは構造化された順序に従います。

  1. ユーザーがプロンプトを送信する
  2. トークンが埋め込みに変換される
  3. ベクトル・データベースが類似の埋め込みを取得する
  4. 取得されたデータは、元の問い合わせとの関連性によってランク付けされる
  5. モデルのコンテキストが、取得されたたデータで拡張される
  6. モデルが応答を生成する
検索拡張生成

1. ユーザーがプロンプトを送信する

すべてのやり取りは、自然言語で表現されたユーザー問い合わせから始まります。この段階では、入力はトークン、つまり言語モデルが処理するテキストの単位として存在します。トークンは言語の書き方や構造を表しますが、検索可能な形で意味を捉えるにはまだ至っていません。

2. トークンが埋め込みに変換される

問い合わせを検索可能にするために、トークンは、意味を数値表現する埋め込みに変換されます。これを理解する一つの方法は地理的な視点です。

  • トークンは、「ニューヨーク市」「NYC」「マンハッタン」など、地名のようなものです。
  • 埋め込みは座標のようなもので、緯度と経度です。

トークンを埋め込みに変換することで、システムは言語から意味を数学的に比較できる空間(高次元ベクトル空間)に移行します。

3. ベクトル・データベースが類似の埋め込みを検索する

問い合わせが埋め込み(または検索ベクトル)として表現されると、ベクトル・データベースは類似のベクトルを検索します。このプロセスは、コサイン類似度などの類似度メトリクスに依存しており、高次元空間内でベクトルがどれだけ同じ状態になっているかを測定します。多くのシステムには、最も関連性の高い結果を優先するランキング層も含まれており、これにより精度と一貫性が向上しています。

4. 検索されたデータは、元のクエリーとの関連性によってランク付けされる

このシステムは、最も類似した埋め込みに関連付けられたデータのより小さなセグメント、つまりデータの「チャンク」を検索します。このプロセスは「チャンク化」と呼ばれ、チャンクがどのように定義されているかに基づいて検索品質が決まります。大きすぎると、検索の精度が低下し、小さすぎると、コンテキストが失われる可能性があります。

5. モデルのコンテキストは、検索したデータで拡張される

取得された情報はモデルのインプットに挿入され、これがプロンプト拡張と呼ばれます。元の問い合わせと、取得されたたコンテキストが、一連のトークンを形成します。このモデルではそれらを区別しません。結合されたインプットを処理して応答を生成するだけなので、プロンプト構造が重要になります。

6. モデルが応答を生成する

拡張プロンプトが設定されると、モデルは応答を生成します。この段階では、RAGがモデルの内部パラメータを変更して、知識を直接モデルに埋め込むファインチューニングなどのプロセスとどのように異なるかが明らかになります。RAGは実行時に知識を取得し、モデルを変更しません。言い換えると、ファインチューニングを行うとモデルが認識できる内容が向上するのに対し、RAGはモデルがアクセスできる内容を改善します。

RAGベクトル・データベースシステムのコアコンポーネント

RAGベクトル・データベース・システムは単一のツールではなく、応答を構造化して生成するために連携する一連のコンポーネントです。このプロセスの核となるコンポーネントは次のとおりです。

  • ナレッジ・ベース
  • 埋め込みモデル
  • ベクトル・データベース
  • 検索器
  • 統合層
  • ジェネレーター

ナレッジ・ベース

知識ベースはシステムの外部の信頼できる情報源です。これには、モデルが取得するデータが含まれており、文書、PDF、構造化レコード、サポート・チケット、その他の非構造化コンテンツが含まれる場合があります。

企業環境では、このデータはシステムや形式ごとに断片化されていることがよくあります。その結果、知識ベースのは、システムのアウトプットの質に直接影響します。

埋め込みモデル

埋め込みモデルは、意味を捉えるベクトル表現に自然言語を変換します。

このコンポーネントは、情報が意味空間内でどのように配置されるかを決定し、検索時に問い合わせと文書がどのように比較されるかを決定します。埋め込みモデルが、専門用語や文脈上の関係といった分野特有のニュアンスを捉えきれない場合、検索の質が低下します。

ベクトル・データベース

ベクトル・データベースは、埋め込みデータを保存し、インデックスを作成することで、大規模なデータ・セットにおける高速な類似性検索を可能にします。その役割は単なる保存に留まらず、検索性能も向上させます。近似最近傍(ANN)検索などのインデックス作成技術により、システムは大規模にあっても、関連するベクトルを迅速に見つけることができます。最近のIBMの研究では、数百から数千億のベクトルを扱えるシステムが実証されています。

同時に、ベクトル・データベースはしばしばメタデータ・フィルタリングとハイブリッド検索をサポートし、日付、カテゴリー、ソースなどの追加制約に基づいて結果を絞り込むことができます。

抽出機能

検索器は、ユーザーの問い合わせとベクトル・データベースの間のインターフェースとして機能します。埋め込みモデルを使用して問い合わせをベクトル表現に変換し、アプリケーション・プログラミング・インターフェース(API)またはソフトウェア開発キット(SDK)を使用して検索を実行し、最も関連性の高い結果を返します。

このプロセスが現代のAI検索の基礎となっています。より高度なシステムでは、検索器は精度を向上させるためにランキング・ロジック、フィルタリング・メカニズム、またはマルチステップ検索も含む場合があります。

統合層

統合層はシステムを管理し、コンポーネント間のデータの流れやプロンプトの作成方法を管理します。取得した結果を整理し、構造化してモデルのインプットに挿入します。

統合ではプロンプト・エンジニアリングオーケストレーションのフレームワークが活用され、モデルに明確かつ関連性の高い文脈が提供されます。多くの場合、システムはオープンソース・ツール、Pythonライブラリー、PineconeやMilvusのようなベクトル・データベースを組み合わせて構築されます。この連携こそが、最終的にアプリやデータ・セットにまたがるスケーラブルなAI検索を可能にします。

ジェネレーター

ジェネレーターは、最終的な応答を生成する責任を負う言語モデルです。情報自体は取得しません。代わりに、拡張プロンプトを解釈し、与えられたコンテキストに基づいて応答を生成します。この区別は重要です。ジェネレーターの役割は、すべてを「知る」ことではなく、システムから提供される情報を統合して表現することです。

RAGベクトル・データベースに関する考慮事項

RAGベクトル・データベースの設計と導入には、精度、性能、システムの複雑さのトレードオフが伴います。このアーキテクチャーは概念的には単純ですが、その有効性は各コンポーネントが手元のタスクに合わせてどれだけうまく調整されているかによって決まります。多くの場合、次の項目を考慮する必要があります。

  • 検索の質
  • チャンク化戦略
  • コンテキスト・ウィンドウのサイズ制限
  • レイテンシーと複雑さ
  • セキュリティーとガバナンス

検索品質

RAGシステムは、情報検索を主要な情報源として利用します。システムが不完全な情報や無関係な情報を検索すると、モデルは欠陥のある応答を生成します。この課題は多くの場合、埋め込みの質とランキング・ロジックから生じます。埋め込みでは分野固有のニュアンスが見逃される可能性があり、また類似検索では、技術的には近いものの、文脈的には間違った結果が得られる可能性があります。

これに対処するために、最新のシステムには、再ランキング層、分野固有の埋め込みモデル、および意味的類似性と構造化フィルタリングを組み合わせたハイブリッド検索技術が組み込まれています。

チャンク戦略

検索性能は、データがどのようにセグメント化されるかによっても影響を受けます。文書は検索前に小さなチャンクに分割されるため、チャンク化戦略の定義が不十分だと、意味が断片化されたり、精度が低下したりする可能性があります。多くの場合、チームはチャンク化を設計上の考慮事項として扱い、特異性とコンテキストのバランスをとります。

コンテキスト・ウィンドウのサイズ制限

検索が効果的であっても、モデルが一度に処理できる情報は限られた量(コンテキスト・ウィンドウ)しかありません。複雑な問い合わせ、特に複数のソース間の合成を必要とする問い合わせでは、この制限によりシステムが最も関連性の高いものを優先することになり、推論が制限される可能性があります。コスト効率の高いシステムは、コンテキストを希少なリソースとして扱い、要約や選択的検索などの技術を使って、その価値を最大化します。

遅延と複雑さ

RAGは、埋め込み生成、ベクトル検索、プロンプト構築などの追加のステップを推論パイプラインに導入します。各ステップに価値が加わる一方で、レイテンシーも増えます。

リアルタイムのAIアプリケーションでは、わずかな遅れでもユーザー体験に影響する可能性があります。大規模な導入環境では、スループットと応答性に課題が生じる可能性があります。そのため、実稼働システムでは、精度と複雑さのバランスを取るために、ANN検索、キャッシュ、並列処理などの最適化されたインデックス作成技術がよく利用されています。

セキュリティーとガバナンス

RAGシステムはモデルを外部のデータ・ソースに接続するので、データ・アクセスプライバシーコンプライアンスに関する新たなセキュリティー上の考慮事項をもたらします。

知識がパラメーターに埋め込まれている従来のモデルとは異なり、RAGアプリケーションはライブ・データに基づいて動作します。これにより、リアルタイムの更新とアクセス制御が可能になりますが、パイプライン全体で機密情報を確実に保護するために、ガードレールなどの安全対策も必要になります。

ベクトル・データベースは、特にソース・データから派生した埋め込みを保存します。直接的なコピーではないものの、これらの表現はリバースエンジニアリングすることで、根底にある情報を推測することができます。そのため、企業のRAGシステムには、暗号化、アクセス制御、監査可能性を含む堅牢なガバナンスの枠組みが必要です。

RAGベクトル・データベースの使用事例

RAGベクトル・データベースは、情報が膨大かつ動的で、従来のインターフェースを使ってナビゲートするのが困難なシナリオで最も価値があります。例えば、以下のような例が挙げられます。

企業のチャットボットとナレッジ・アシスタント

RAGベクトル・データベースは、大規模で分散されたデータ・ソースからリアルタイムで情報を取得して合成することで、企業のチャットボットや社内のナレッジ・アシスタントを強力にサポートします。これにより、チャットボットは最新のサポート回答を提供し、従業員は複数のシステムを検索することなく、自然言語を使用して社内文書やワークフローを照会できます。

研究および分析ワークフロー

金融、医療、法律分析などの分野では、RAGシステムは複数の情報源から関連情報を文脈に沿って提示するので、ユーザーは複雑で複数の要素からなる質問を投げかけ、統合された回答を受け取ることができます。その結果、意思決定のスピードと正確さが向上します。

推奨システム

RAGベクトル・データベースは、ユーザーの好みやコンテンツ間の意味論的類似性を可能にすることで、レコメンデーション・エンジンを強化します。これらのシステムは、レコメンデーションとともに説明を生成して、過去の行動だけでなく、基礎となるデータから取得した共有機能、レビュー、使用パターンに基づいて成果を提示することができます。

RAGベクトル・データベースの未来

RAGベクトル・データベースは、組織が実験的な実装から実稼働規模のシステムに移行するにつれて急速に進化しています。研究と産業の発展は、次のようないくつかの新たなトレンドを指摘しています。

  • エージェント型検索
  • ハイブリッド検索アーキテクチャー
  • リアルタイム知識システム
  • マルチモーダルおよび推論主導のRAG

エージェント型検索

初期のRAGシステムは、取得、拡張、生成という固定されたパイプラインに従っていました。新しいシステムでは、より動的な動作が導入されています。

エージェント型検索では、モデルが、いつ、どのように、どんな情報を取得するかを決定できるようにします。単一の検索ステップの代わりに、システムは複数の検索アクションを実行したり、クエリーを改良したり、生成中に追加のコンテキストを要求したりすることができます。

AIエージェントに関する最近の研究では、このアプローチによって、複雑なマルチステップのタスク、特に反復的な推論や探索を必要とするタスクの性能が向上することが示唆されています。⁴

ハイブリッド検索アーキテクチャー

ベクトル検索は依然として基本的ですが、キーワード検索、メタデータ・フィルタリング、場合によってはグラフベースの検索(GraphRAG)とますます組み合わされるようになっています。この調整により、システムは意味論的意味と構造化された関係の両方を把握できるようになり、複雑な環境での精度と再現率が向上します。

リアルタイム・ナレッジ・システム

RAGシステムはリアルタイムのパイプラインへと進化し、情報を継続的に取り込んで更新しています。これにより、データ作成と可用性の間のギャップが縮小され、システムの変更が発生したときに対応できるようになります。

金融市場や運用監視などの環境では、この機能が不可欠になりつつあります。ストリーミングデータと増分インデックスの進歩により、ベクトル・データベースは完全な再処理なしに埋め込みを更新できるようになっています。

マルチモーダルおよび推論主導のRAG

RAGは、テキストだけでなく、画像、音声、構造化データを組み込むように拡張しています。これにより、モデルは複数のモダリティーにわたって検索して推論できるようになります。

同時に、推論主導のRAGの研究により、モデルが検索した情報を統合する方法が改善され、単純な検索から、より構造化された多ステップの推論ワークフローへと移行しています。

執筆者

Tom Krantz

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

関連ソリューション
データ管理ソフトウェアとソリューション

データ・サイロを排除し、複雑さを軽減し、データ品質を向上させることで、卓越した顧客体験と従業員体験を実現するデータ・ストラテジーを設計します。

データ管理ソリューションの詳細はこちら
IBM watsonx.data

watsonx.dataを使用すると、オープンでハイブリッド、かつ管理されたデータ・ストアを通じて、データがどこに保存されていても、すべてのデータを使用して分析とAIを拡張できます。

watsonx.dataについてはこちら
データ分析コンサルティングサービス

IBMコンサルティングと連携することで、企業データの価値を引き出し、ビジネス上の優位性をもたらす洞察を活用した組織を構築します。

分析サービスを発見する
次のステップ

データ・サイロを排除し、複雑さを軽減し、データ品質を向上させることで、卓越した顧客体験と従業員体験を実現するデータ・ストラテジーを設計します。

  1. データ管理ソリューションの詳細はこちら
  2. watsonx.dataについてはこちら