PageIndex

相似不等于相关——不要向量索引,要层级树索引,让 LLM 用推理”翻”到正确的章节

项目速览

项目 内容
仓库 VectifyAI/PageIndex
语言 Python
Stars 39,759(2026-10-26),Forks 3,430
协议 MIT
状态 2025-04-01 建库,2026 年 8 月发布多项更新
定位 无向量、基于推理的 RAG 引擎

它想解决什么问题

向量 RAG 统治了三年,PageIndex 公开唱反调:向量检索按语义相似度找东西,但相似不等于相关——该找回的(相关但不相似)回不来,不该回的(相似但不相关)一堆。

最典型的例子:财务报表里”2023 年营业利润率”和”2022 年营业利润率”语义相似度极高,但只有一个是对的。向量检索在这里天然吃亏。

核心机制拆解

1. 树索引 vs 向量索引。

向量 RAG PageIndex
索引 向量索引 树索引
检索 语义相似度搜索 LLM 在树上推理
结果 黑盒、”氛围检索” 可追溯到明确引用
上下文 只有 query 嵌入 完整上下文:对话历史、领域知识等

2. 两步走,两个模型档位。 索引阶段为每份文档生成树状结构索引——树结构本身从文档版式抽取,不依赖 LLM,LLM 只做摘要与精修,所以 index= 用基础模型就够;检索阶段让 Agent 搜索这棵树,所以 chat= 要用你能负担的最好模型。官方原话:”index 用基础模型,chat 用你能买得起的最好模型。”

3. 最佳场景很明确。 财务报告、法律文书、监管文件、技术手册、医学文献、学术教材——一切又长又复杂的专业文档。

4. 生态在补齐。 2026 年 8 月的更新包括:PageIndex Flash(文本 PDF 的快速树索引,本地模式默认)、PageIndex File System(文件级树索引层,把推理扩展到百万文档级语料)、以及面向人的 PageIndex App(长文档分析 Agent,也有 MCP 与 API)。

安装与上手

1
2
3
4
pip install -U pageindex

# 有 Claude 订阅的话,可直接用订阅额度而不是 API key
pip install -U "pageindex[claude]"

SDK 支持本地与云两种模式,本地模式用自己的 LLM key;模型名加 claude-code/ 前缀即走 Claude Code 调用,用量走订阅套餐。

点评

亮点是提出了一条被忽视的真相:专业文档的检索难点不是”意思像不像”,而是”位置对不对”。先定位章节、再读细节,这正是人类专家翻阅长报告的方式;可追溯的引用也满足了法律、金融场景”答案从哪来”的硬要求。

局限:每次检索都要 LLM 推理,延迟与成本都高于一次向量查询——所以它的主场是”少而精”的专业文档问答,不是海量语料的模糊搜索;树索引质量依赖文档版式,排版混乱的 PDF 会明显吃亏;index/chat 双模型档位需要自己调平衡。

适合人群:金融 / 法律 / 医疗等严肃文档场景(对引用溯源和准确率敏感);被向量 RAG 的”氛围检索”伤过的人;已有 Claude / OpenAI 订阅、边际成本可控的团队。