生成AIの検索アプローチ、従来の「RAG」

企業での生成AI活用においては、企業独自の文脈に沿った回答を生成させることが求められる。これには、大きく2つのアプローチがある。RAG(Retrieval Augmented Generation)とファインチューニングだ。
後者は若干手間のかかるアプローチである一方、より少ないリソース/ステップで、企業独自の情報を活用できるとしてRAGアプローチを採用するケースが非常に多い。

RAGとは、大規模言語モデル(LLM)による生成と、外部情報ソースを組み合わせるアプローチ。LLMが有していない企業独自の情報をモデルに与え、企業の文脈に沿った回答を生成させることが可能となる。

RAGアプローチの中核となるのが、Similarity Search(類似性検索)だ。これは、テキストデータを数値ベクトルに変換し、類似性に基づいて検索を行う手法。ユーザーの質問やクエリに最も関連性の高い情報を、大量のデータの中から効率的に抽出することができる。

たとえば、RAGベースの社内向けチャットボットに、ユーザーが自社の休暇規定に関する質問を行った場合、このシステムは休暇規定を記載した社内ドキュメントにアクセスし、関連する箇所を抽出し、その情報を参照して、回答を生成することになる。この場合「休暇規定」というワードを軸とする類似性検索が実行され、関連する情報が抽出されることになる。

GPT-4などの大規模言語モデルには特定企業の社内情報は含まれていない。しかし、RAGアプローチによって、企業の文脈に沿った回答を生成することが可能になるのだ。

しかし、このアプローチにも課題があることが最近のリサーチで明らかになった。Writer社の報告によると、類似性検索をベースとする従来のRAGアプローチには精度面の限界が多数散見されたという。


この限界を明確に示すのが、RobustQAベンチマークの結果だ。RobustQAは、アマゾンが作成した8つの分野に関する質問応答を評価するベンチマークで、5万件の質問で構成されている。ベンチマークの規模や質問表現のバリエーションなど、実世界の複雑性を反映しており、RAGソリューションの精度と効率性を評価するのに有用と考えられている。

Writer社は、このベンチマークを使い、8つの異なるRAGソリューションを評価した。その結果、ほとんどのRAGソリューションの精度が60~70%ほどにとどまることが判明、まだ改善の余地があることが明らかになったのだ。また、既存RAGソリューションのほとんどが回答生成に1秒以上かかっている現状も浮き彫りとなった。

Writerにみる、ナレッジグラフを活用するアプローチ

従来の類似性検索のみをベースとするRAGアプローチには限界が見えてきた。そんな中、ナレッジグラフを統合する新しいアプローチが登場し、注目を集めている。上記、既存のRAGアプローチの精度を調査したWriter社が提供する新しいRAGシステムは、その好例となる。

同社の新しいRAGシステムの特筆すべき点は、単純なベクトル検索に頼るのではなく、データポイント間の意味的関係をマッピングするナレッジグラフベースのアプローチを採用していることだ。このアプローチでは、データを小さな単位に分解し、それらの間の意味的な関連性を構造化している。

ナレッジグラフを活用したRAGシステムの強みは、複雑な知識構造を効果的に表現できる点にある。

たとえば、企業の情報システムに関するナレッジグラフでは、「ファイアウォール」というセキュリティ要素と「クラウドサーバー」というアーキテクチャ要素を「保護する」という関係で結びつけたり、「データ暗号化ポリシー」と「SSL・TLS」技術を「実装方法」として関連付けたりすることが可能だ。
さらに、「不正アクセス」というリスクと「多要素認証」という対策、「顧客管理システム」と「決済システム」の相互依存関係、「GDPR」のような法規制と「データマスキング」技術の関連性なども表現できる。

このような多面的な関係性の表現により、「クラウドサーバーのセキュリティ対策は何か」「GDPRに準拠するための具体的な技術対策は何か」といった複雑な質問に対しても、文脈を考慮した包括的な回答が可能になる。単純なキーワード検索やベクトル検索では非常に難しいものとなる。

Writerのシステムは、このアプローチを採用したことで検索可能な範囲が1,000万ワード(英語)まで拡張された。英語の1,000万ワードとは、ドキュメント2万ページに相当する情報量。社内のあらゆるデータが検索対象となり、より関連性の高い回答を生成することが可能になった。

実際、上記のベンチマーク比較において、Writer社が自社のナレッジグラフベースRAGアプローチのパフォーマンスを測定したところ、精度86.31%と、他のアプローチを圧倒、さらには応答速度が0.6秒とこちらも他アプローチよりも高速であることが示された。

ナレッジグラフの詳細/他プレイヤーの動向

RAGの精度は、ナレッジグラフによってどのように改善されるのか、以下LangChainによる解説をみていきたい。

ナレッジグラフを活用したRAG(Retrieval-Augmented Generation)システムは、従来のベクトル検索手法に比べ、より深い文脈理解と正確な情報検索を可能にする。LangChain(2024年3月15日)の報告によると、ナレッジグラフは異種のデータ間の複雑な関係性を効率的に捉え、構造化された形で表現できる点が大きな強みだという。

たとえば、「エリザベス1世」に関する情報を検索するケースを考えてみたい。従来のベクトル検索では、「エリザベス1世」というキーワードに関連する文書を単純に抽出するだけかもしれない。
一方、ナレッジグラフを使用すると、エリザベス1世が「チューダー朝の一員」であり、「ヘンリー8世の娘」であり、「1558年から1603年まで統治した」といった関係性を含む、より豊富な情報を素早く取得できる。

ナレッジグラフ自体はそれほど新しい技術ではないが、これまでの技術では実装が非常に困難だった。しかし、LLMの登場により、この過程が大幅に簡素化されつつある。LLMは言語と文脈の深い理解力を生かし、テキストデータから実体を識別、それらの関係性を理解し、最適なグラフ構造での表現方法を提案できるためだ。

具体的には、「エリザベス1世はチューダー朝の最後の君主で、ヘンリー8世とアン・ブーリンの娘である」というテキストから、LLMは「エリザベス1世」「チューダー朝」「ヘンリー8世」「アン・ブーリン」という実体を抽出し、それらの間の「所属」「親子関係」といった関係性を自動的に理解し、グラフ構造に変換する。

LangChainは、このプロセスをさらに容易にするため、グラフ構築モジュールの初版を導入した。このモジュールを使用することで、ウィキペディアのような非構造化テキストからナレッジグラフを自動生成することが可能になる。たとえば、テキストを適切なサイズに分割し、LLMを用いてグラフデータを抽出、そしてNeo4jのようなグラフデータベースに格納するという流れだ。

LangChain版のナレッジグラフRAGシステムの特徴は、ハイブリッド検索アプローチを可能にしていることにある。これは、ベクトル検索とキーワード検索、そしてグラフ検索を組み合わせたもの。たとえば、「エリザベス1世の治世中の主要な出来事は?」という質問があった場合、システムは以下のように動作する。

1.キーワード検索:
「エリザベス1世」「治世」「主要」「出来事」といった単語を使用して関連文書を検索。

2.類似性検索:
質問全体の意味を捉えて、意味的に近い文書やパラグラフを検索。
3.グラフ検索:
ナレッジグラフ内で「エリザベス1世」ノードを起点に、「統治期間」「歴史的出来事」などの関連ノードを探索。

これらの結果を組み合わせることで、より包括的で正確な情報を取得できるのだ。

最終的なRAGプロセスでは、このハイブリッド検索で得られた構造化データと非構造化データを組み合わせてコンテクストを作成し、それをLLMに入力することで回答を生成する。この方法により、単純な類似性検索だけでは難しかった複雑な質問にも、より正確で文脈に即した回答が可能になる。

生成AIを活用した検索市場では他のプレイヤーも台頭している。たとえば、Hebbiaはこのほど1億3,000万ドルを調達し、LLMをベースとした知識検索プラットフォーム「Matrix」の開発を加速させる算段だ。また、生成AIベースの企業内検索ソリューションを開発しているGleanは、2024年2月に2億ドルを調達、評価額は22億ドルに達したと報じられている。

生成AI検索は、ナレッジグラフのほか、エージェントシステムによる改善も可能だ。エージェントシステムの活用が進んでいる状況を鑑みると、今後上記Writerを超えるソリューションが続々登場するシナリオもあり得るだろう。

文:細谷元(Livit
編集部おすすめ