Ikeraq

VectifyAI/PageIndex

長い資料を章と節の木にして、LLM に人のように該当箇所を探させる

MIT · 商用可 Python ★ 39,257 (今日 +18) 今日 更新
GitHub で見る VectifyAI/PageIndex
GitHub の説明(原文)
📑 PageIndex: Document Index for Vectorless, Reasoning-based RAG

どういうものか

長い文書に質問して答えさせる仕組み(RAG)を、ベクトル検索を使わずに組む Python のライブラリだ。ふつうの RAG は文書を細かく切り分け、質問と「意味が似ている」断片を引いてくる。PageIndex はそれをやめ、文書ごとに章や節の木(目次のようなもの)を作り、LLM にその木をたどらせて答えのある箇所を探させる。README は「似ていることと、関係があることは違う」と書き、専門家が長い報告書の該当する節を開いて読む動きをまねたものだと説明している。

手順は2段ある。まず索引づくり。木の骨格は LLM を使わずに文書のレイアウトから取り出し、索引用のモデルはそれを要約して整えるだけなので、安いモデルで足りるという。次に検索。チャット用のモデルが木をたどり、たどり着いた節だけを読む。README はこちらには払える範囲で最も良いモデルを勧めている。答えは、読んだ箇所までさかのぼれる。

オープンソース版は自分のマシンで動き、LLM は自分の API キーで呼ぶ。扱えるのは文字の入った PDF で、スキャンした資料の文字起こし(OCR)や画像の読み取りは、PageIndex の API キーを使うクラウド版の機能だ。ライセンスは MIT。

「似ている断片」ではなく章と節をたどって探す 長い PDF (決算書・マニュアルなど) 木の索引 (章と節の階層) LLM がたどる (必要な節だけ読む) 答え (根拠のページも出せる) 骨格は文書の形から作る。LLM の賢さが要るのは、たどる側
質問に「似た文」を拾うのではなく、章と節の木から該当する節を選んで読むので、どこを根拠に答えたかをたどれる。

どんなときに使うか

数百ページの報告書やマニュアルに、質問で答えさせたいとき

README が向いている例に挙げるのは、決算書、法律文書、規制当局への届出、技術マニュアル、医学文献など。README の測定では、答えが同じだった文書で比べると、PDF を毎回丸ごと渡すほうが 52ページで2.1倍、420ページで16.6倍高くついた(チャット用モデルは gpt-5.6-sol、プロンプトのキャッシュは使わない条件)。805ページでは、そもそもモデルに入りきらなかった。

答えの根拠がどこか、あとで示す必要があるとき

答えは、LLM が木のどの節を読んだかまでさかのぼれる。頼めば根拠の場所も示せて、自分のマシンで動かす版ではページ単位になる(クラウド版はもっと細かい単位)。

注意点

スキャンした PDF は、手元で動かす版では扱えない。 図や画像の中身も読まない。文字起こしと画像の読み取りはクラウド版の機能。MCP サーバー、フォルダ分け、何百万件もの文書をまとめて扱う機能もクラウド側にある。

質問のたびに LLM の利用料がかかる。 検索のたびにモデルが木をたどるためだ。README は検索側に良いモデルを勧めており、モデルを1段上げるごとに費用が1桁上がるグラフを載せている。

性能の数字は開発元自身の測定。 比較の条件は README とベンチマーク用のリポジトリで確かめてから当てにする。

開発の様子

1.5 年
公開してからの期間。2025-04-01 が最初のコミットです
10 回
リリースの回数です
15 人
開発に参加した人数です
0 日前
最後のコミットです
146 件
未解決の Issue とプルリクエストの合計です(GitHub はこの2つを同じ数に含めます)

ほかの候補

corsairdev/corsair
GitHub も Slack も同じ書き方で呼び、連携ごとの配線を書かずに済ませる
headroomlabs-ai/headroom
エージェントが読むログや検索結果を手元で圧縮してから、モデルに渡す
rohitg00/ai-engineering-from-scratch
数学からエージェントまで、自分で作りながら積み上げるAI開発の教材
X で共有 この記事がよかったら

この記事の更新日は 2026-10-01 です。 内容は公開されている README と GitHub のデータに基づいています。 数値は GitHub から取得したもの、警告は判定の基準にある条件での自動判定です。事実誤認を見つけた場合はお知らせください。