Vectorless RAG:PageIndex

by Gemini
このリポジトリは、VectifyAIが開発した「PageIndex」という、推論ベースの検索拡張生成(RAG)のためのドキュメントインデックスに関するものです。PageIndexは、ベクトルデータベースやチャンキングを必要とせず、人間が情報を探すようなプロセスで、大規模言語モデル(LLM)が関連性の高い文書セクションを見つけ出すことを可能にします。
主な特徴
-
ベクトル不要: 文書の構造とLLMの推論能力を活用して検索を行います。
-
チャンキング不要: 文書を自然なセクションに分割するため、人工的なチャンクを作成する必要がありません。
-
人間のような検索: 専門家が複雑な文書を読み解き、知識を抽出する方法を模倣します。
-
透明性の高いプロセス: 従来のベクトル検索とは異なり、推論に基づいた検索を行うため、プロセスが透明です。
仕組み
PageIndexは、長いPDF文書を「目次」のようなツリー構造のインデックスに変換します。LLMは、このツリーを検索することで、推論を行いながら最適な情報を見つけ出します。このアプローチは、特に金融レポート、法律文書、技術マニュアルなど、専門知識が求められる長文の文書で効果を発揮します。
導入と使用方法
-
セルフホスト: オープンソースリポジトリを使用して、ローカル環境で実行できます。
-
クラウドサービス: セットアップ不要で、すぐに利用できるクラウドサービスも提供されています。
リポジトリには、Pythonスクリプトを実行してPDF文書からPageIndexツリーを生成するための具体的な手順が記載されています。また、より複雑なPDFに対応するため、文書の構造を保持しながらテキストを抽出できる「PageIndex OCR」という独自のOCRモデルも導入されています。
実績
金融文書分析のベンチマークであるFinanceBenchにおいて、PageIndexを搭載したモデル「Mafin 2.5」は**98.7%**という高い精度を達成し、従来のベクトルベースのRAGシステムを大幅に上回る性能を示しています。
まとめ
このリポジトリは、VectifyAIが開発した「PageIndex」という、推論ベースの検索拡張生成(RAG)のための革新的なドキュメントインデックス技術に関するものです。従来のベクトル検索とは一線を画し、ベクトルデータベースやチャンキングを必要としない点が最大の特徴です。PageIndexは、長いPDF文書を「目次」のような階層的なツリー構造に変換します。大規模言語モデル(LLM)は、このツリー構造を辿りながら推論を行うことで、人間が情報を探すように、文脈に最も合った関連性の高い情報を効率的に見つけ出すことができます。
このアプローチは、特に専門性が高く、複雑な構造を持つ金融レポート、法律文書、技術マニュアルなどの長文文書の解析に非常に有効です。リポジトリでは、Pythonスクリプトを用いた簡単な導入方法が示されており、ユーザーは自身の環境でPDFからPageIndexツリーを生成することができます。さらに、複雑なレイアウトのPDFにも対応するため、文書の構造を正確に認識できる独自のOCRモデル「PageIndex OCR」も開発されています。
その性能は、金融文書分析のベンチマークであるFinanceBenchにおいて、PageIndexを搭載したモデルが98.7%という非常に高い精度を記録したことでも証明されており、従来の検索手法を大きく凌駕する結果を示しています。このリポジトリは、より高度で正確な情報検索を求める開発者や研究者にとって、非常に価値のあるツールと言えるでしょう。

このアプローチは、特に金融レポート、法律文書、技術マニュアルなど、専門知識が求められる長文の文書で効果を発揮します。
[感想]
より文脈に合う情報を取りやすくするが、ツリー構造上、体系化された文書の方が相性が良いということなのかなと思った