PageIndex
无向量推理式 RAG,用树搜索模拟人类专家翻阅长文档,FinanceBench 98.7% 准确率
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
无向量推理式 RAG,用树搜索模拟人类专家翻阅长文档,FinanceBench 98.7% 准确率
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你手头有一份 500 页的 SEC 年报,需要回答「公司第三季度的研发投入环比增长了多少」。传统向量检索 RAG 会把文档切成几千个文本块,通过语义相似度匹配找到「可能相关」的段落——但它不知道财报的结构,无法区分「研发投入」和「营销投入」的小节,更别提追踪数字在季度间的变化了。
PageIndex 解决的就是这个问题。它由 Vectify AI 团队开发,提出了一个根本性的反思:语义相似度(Similarity)不等于相关性(Relevance),而相关性才是检索真正需要的。
PageIndex 的核心理念来自 AlphaGo 的蒙特卡洛树搜索(MCTS)。AlphaGo 不是穷举所有棋步,而是构建一棵棋局树,通过推理选择胜率最高的路径。PageIndex 用类似方式处理文档:
为文档建立「目录树」:用 LLM 扫描 PDF,生成一个层级化的 JSON 树结构,每个节点包含标题、页码范围、内容摘要。这就像给文档自动生成了一份机器可读的目录。
基于树的推理检索:用户提问时,不是去向量数据库里搜索相似片段,而是让 LLM 在这棵树上游走,边推理边缩小范围,最终定位到最相关的几个节点,提取对应页面内容作为上下文。

这种「像人类专家一样翻阅文档」的方式,在 FinanceBench 基准测试中达到了 98.7% 的准确率,大幅超越传统向量 RAG 基线。
传统 RAG 最大的痛点之一就是「文本切块」:切成多少字符合适?重叠多少?切得太碎丢失上下文,切得太粗引入过多噪声。PageIndex 完全不需要切块——它按文档原生结构(章节、小节)组织节点,保留了完整的上下文层次。也不需要向量数据库,部署成本显著降低。
向量检索是「黑盒」——你只能看到返回的片段,不知道为什么选中了它。PageIndex 的每一步推理都有迹可循:它明确告诉你「推理到达了节点 0034(第 45-52 页),原因是……」,检索结果可审计,这在金融、法律、医疗等合规要求高的领域非常重要。
PageIndex 支持将对话历史和领域知识注入推理过程。例如,当用户追问「那第四季度呢」,系统会结合前面对话理解「第四季度」的指代,在树中准确定位。这种上下文感知能力是纯向量检索难以实现的。
PageIndex 开源仓库的代码结构非常简洁,核心模块仅 6 个 Python 文件:
page_index.py:树结构生成核心逻辑,包含 TOC 检测、节点标题验证、层级构建等异步任务。page_index_md.py:Markdown 文档的树结构生成,支持标题层级解析。retrieve.py:检索工具函数,提供 get_document、get_page_content、get_document_structure 等接口,可作为 LLM Agent 的工具调用。client.py:API 客户端(用于接入 PageIndex 官方云服务)。config.yaml:LLM 提供商配置,默认使用 LiteLLM 支持 200+ LLM。utils.py:工具函数(JSON 提取、页数计算、字段过滤等)。依赖栈极为精简:pymupdf + PyPDF2 做 PDF 解析,litellm 统一封装 LLM 调用,.env 配置 API Key 后通过 run_pageindex.py 一键运行。整个系统不需要 GPU,CPU 机器即可运行。
仓库提供了一个完整的 Agentic Vectorless RAG 示例(examples/agentic_vectorless_rag_demo.py),基于 OpenAI Agents SDK 构建。在示例中,PageIndex 的检索工具(get_document、get_page_content)被注册为 Agent 工具,Agent 在推理过程中按需调用这些工具获取文档内容,实现真正的「Agent + 文档理解」闭环。
LLM 调用成本较高:每次索引生成和每次检索都需要 LLM 推理,相比直接查向量数据库,计算成本更高。团队建议对大规模场景使用云服务(增强 OCR + 优化 Pipeline)。
树结构生成质量依赖 LLM:如果 LLM 对某个专业领域(尤其是非英文文档)理解不足,生成的目录树可能出现标题遗漏或层级错误。
对简单查询略显「杀鸡用牛刀」:「今天天气怎么样」这种简单问题用向量检索秒回,用 PageIndex 需要走一遍树搜索反而更慢。它的优势在于需要多步推理的长文档分析场景。
PageIndex 的出现代表了一个重要趋势:RAG 正在从「查向量」进化到「做推理」。传统 chunk-embed-retrieve 范式在 2023-2024 年推动了 RAG 的快速普及,但它在专业文档场景的天花板也逐渐显现。PageIndex 将 LLM 的推理能力引入检索本身,证明了「理解文档结构」比「匹配语义向量」在复杂问答上更有效。
该项目在 GitHub 获得 32,000+ 星,增长速度在 RAG 相关项目中名列前茅,衍生出了 MCP 服务(pageindex-mcp)、Colab 笔记本系列、云端 API 等生态。
如果你正在为长文档问答、金融报告分析、法律条款检索等场景选型 RAG 方案,PageIndex 是一个值得重点关注的方向。