如果你用过 RAG(检索增强生成),八成已经习惯了它的标准配方:把文档切块 → 向量化 → 存到向量数据库 → 搜索相似片段 → 丢给 LLM 回答。
这个方案有个根本问题——相似性 ≠ 相关性。向量搜索找到的是"长得像"的内容,不一定是真正相关的内容。
PageIndex 走了另一条路:不要向量,不要分块,用推理代替相似搜索。
向量数据库,再见
PageIndex 是 VectifyAI 推出的「无向量、基于推理的 RAG」系统。GitHub 3.2 万星,MIT 协议。它做的事情其实很直觉:
第一步:把文档建成一棵树。如同自动生成一份带语义标注的"目录"——不是简单的章节层级,而是 LLM 理解的语义树。每个节点有标题、摘要、页码范围。
第二步:搜索时用 LLM 在这棵树上"走"。从根节点开始,一步步推理判断哪个分支包含需要的信息,直到叶子节点。像人类在文档里翻目录找答案一样。
这个思路其实受到了 AlphaGo 的启发——用树搜索+推理替代暴力向量匹配。
效果怎么样?
说数字可能更有说服力:
在 FinanceBench(金融文档 QA 基准)上,PageIndex 驱动的 Mafin 2.5 达到了 98.7% 的准确率,大幅超过传统向量 RAG 方案。
这不是巧合。金融报告、法规文件、技术手册这类长文档,语义相似度搜索经常翻车——"收入增长"和"营收下降"语义上接近但答案截然不同。PageIndex 基于推理的检索能真正理解问题的上下文。
核心优势
无向量数据库。 不用装 Pinecone、Weaviate、Chroma,省了维护成本。
无分块。 按文档自然段落组织,不是一刀切 512 token。上下文完整性好很多。
可解释。 检索过程可以追溯——"从第 X 章第 Y 节找到的"而不是"向量相似了所以拿出来"。
上下文感知。 同样的查询,不同对话上下文能得到不同结果。
支持 PDF 和 Markdown。 开箱即用,还支持纯视觉 RAG(不 OCR,直接基于页面图片推理)。
怎么用
安装和运行很简单:
pip3 install --upgrade -r requirements.txt
# 设置 LLM API key(支持多种模型)
export OPENAI_API_KEY=your_key
# 对 PDF 建索引
python3 run_pageindex.py --pdf_path /path/to/doc.pdf
也支持云服务——Chat 平台、MCP、API 三种接入方式。详情看 pageindex.ai/developer
不是没有缺点
对长文档的树构建需要 LLM 调用。 建索引过程本身消耗 token,不像向量化那样廉价。
搜索效率。 树搜索需要多次 LLM 推理,响应速度比向量直接搜索慢一些。
PDF 质量敏感。 标准 PDF 解析对扫描件/复杂布局效果一般,要用云服务增强 OCR。
一句话总结
如果你对向量 RAG 的准确率不满意,尤其是金融、法律、学术等专业文档场景,PageIndex 是值得认真看的方案。它绕开了向量搜索的固有缺陷,用推理重新定义了什么叫做「检索」。
GitHub:github.com/VectifyAI/PageIndex
官方网站:pageindex.ai