RAG,它旨在将信息检索与文本生成相结合。但在实际工程落地中,这一过程逐渐演变为向量相似度计算与Prompt 拼接的“两阶段流水线” 。这种架构的本质依赖于将原始文档切块(Chunking)并转化为向量,通过近似最近邻搜索(Approximate Nearest Neighbor,ANN)来匹配用户的查询。我们今天介绍的这种技术与传统的的基于文档切块再近似搜索的方式有所不同,他是基于 LLM 推理的一种检索技术,下面且听我们分析一二。
01
—
RAG 架构现状:三大关键瓶颈
当前的 RAG 架构面临以下关键瓶颈:
- 检索与生成割裂: 检索模块(通常是向量数据库)独立于 LLM 的推理过程。它执行的是基于相似度的“模糊匹配”,而非基于语义关联的“精确推理”。这种割裂导致检索结果往往是“形似”而非“神似”,尤其在处理长文档和复杂推理任务时,准确性大打折扣。
- 依赖外部系统,增加架构复杂度: 引入向量数据库作为核心组件,不仅增加了系统的运维成本和延迟,也使得整个架构变得冗余。
- 冷启动/更新延迟问题: 任何文档的更新都需要重新切块(Chunk)、嵌入(Embedding)、索引(Index),这本质上是索引异步的问题,难以满足实时性要求。
这些共同问题的存在催生了一种全新的架构:基于 LLM 的推理检索架构。
02
—
RAG 架构重塑:PageIndex 推理即检索
开源项目 PageIndex 提出了一个颠覆性的核心命题:真正的“检索”不应是独立于 LLM 的模块,而应内化于 LLM 的推理过程。
PageIndex 认为,传统 RAG 依赖的向量相似度搜索,其核心缺陷在于它追求的是相似性(Similarity),而我们在知识获取中真正需要的是相关性(Relevance)。相关性需要推理(Reasoning)才能确定。
PageIndex 模拟了人类专家阅读和查找信息的方式:
类比启发: 想象一位学者在查阅一本厚厚的专业书籍。他不会先将整本书的每一段话都制作成索引卡片,然后通过卡片相似度来查找。相反,他会凭借对书籍结构的直觉,通过目录、章节标题和页码,进行多步、有目的结构化查找,最终精确地定位到所需内容。
PageIndex 的 “推理即检索(Inference as Retrieval)” 架构,正是将这种“直觉式查找”机制赋予 LLM。它通过构建文档的分层树状结构索引,让 LLM 像人类一样,通过树搜索(Tree Search)和多步推理来导航文档,从而实现无向量数据库、无切块的 RAG 架构。
这种架构带来的性能提升是显著的。实验数据显示,在复杂的金融数据集 FinanceBench 上,基于 PageIndex 的 Mafin 2.5 模型取得了 98.7% 的惊人准确率,显著超越了传统 RAG 架构的表现。这一成绩证明了在处理高精度、长上下文的专业文档时,结构化推理比单纯的向量相似度匹配更具优势。那准确率提升如此显著的架构究竟是如何实现的呢?
03
—
PageIndex 实现机制解析
PageIndex 的核心创新在于其文档索引系统和推理式检索机制。它完全摒弃了向量数据库和文档切块的传统做法,转而采用一种更贴近人类阅读和理解习惯的策略。
1. 文档索引:构建智能目录
PageIndex 的第一步是利用LLM的强大理解能力,将冗长的文档(如PDF、Word等)转化为一个层级化的树状结构(Search Tree),建立一个“内容索引”,这个索引模拟了人类阅读时的目录结构。
PageIndex 构建目录文档索引流程如图,当前仅支持 PDF 和 Markdown 两种文档格式:
- PDF文档:通过PyPDF2/PyMuPDF解析,检测目录结构,建立页面与内容的关联;
- Markdown文档:解析标题层级,构建基于层级的树形结构;
- 其他格式:判断是否支持先转换为PDF或Markdown格式,若支持则转换后再解析;
最后文档索引统一保存到 results 目录中,文档索引树结构示例如下:
{ "node_id": "0006", "title": "Financial Stability", "start_index": 21, "end_index": 22, "summary": "The Federal Reserve ...", "sub_nodes": [ { "node_id": "0007", "title": "Monitoring Financial Vulnerabilities", "start_index": 22, "end_index": 28, "summary": "The Federal Reserve's monitoring ..." }, { "node_id": "0008", "title": "Domestic and International Cooperation and Coordination", "start_index": 28, "end_index": 31, "summary": "In 2023, the Federal Reserve collaborated ..." } ] }
目录中的每个节点都直接链接到文档对应的原始内容(例如,文本、图像、表格):
node_id → node_content (raw content, extracted text, images, etc.)
这种映射使 LLM 能够根据需要选择和检索特定节点,从而实现精确且具有上下文感知的信息访问。
开发者可以通过简单的 Python SDK 即可启动这一过程,例如使用 pi_client.submit_document("./report.pdf") 提交文档,系统将异步完成索引构建,从而解决传统 RAG 的上下文碎片化问题。
构建完成后,用户还可以通过 pi_client.get_tree(doc_id) 获取完整的 JSON 格式树结构,用于自定义检索或可视化。这个树状索引包含了文档的逻辑层次、章节关系以及关键内容的摘要,它将复杂的文档转化为一个可导航的知识图谱,为后续的推理检索奠定基础。
2. 推理式检索:模拟专家导航
在检索阶段,PageIndex 模拟了人类专家阅读文档的方式:先看目录,定位章节,然后通过子标题逐步深入。
- 多步推理: 针对用户查询,PageIndex 不会直接进行全局搜索,而是首先利用LLM进行多步推理,判断信息可能存在于树状结构的哪个分支。
- 树搜索导航: 随后,系统沿着最相关的分支进行层级化搜索,逐步缩小范围,直到找到最精确的答案片段。
- 精准定位: 这种机制不仅确保了检索到的内容不仅在语义上相关,且使其在逻辑上处于正确的上下文位置,从而解决了传统RAG的上下文碎片化问题。
当接收到用户查询问题时,检索具体流程如下:
- 用户查询 (User Query):接收用户的自然语言指令(如内容查找或章节定位)。
- 查询解析 (Query Analysis):分析语义与结构,提取关键术语,识别查询意图(精确vs模糊)及结构化关键词。
- 结构化预过滤 (Structural Pre-filtering):基于文档树状结构(标题、ID、页面范围)快速剪枝,过滤无关分支以缩小范围。
- 匹配策略选择 (Matching Strategy Selection):依据查询特征智能分流,结构化信息走“精确匹配”,概念描述走“语义匹配”。
- 树结构搜索算法 (Tree Traversal):(精确匹配路径) 利用树的层次关系遍历与剪枝,快速定位完全匹配的节点路径。
- LLM推理分析 (LLM Reasoning):(语义匹配路径) 利用LLM理解上下文与隐含含义,评估查询与节点内容的语义相关性。
- 节点范围定位 (Node Range Localization):锁定匹配节点在原文档中的精确位置(起止索引)及父子上下文关系。
- 语义相关性评估 (Semantic Relevance Assessment):量化匹配程度,结合节点层次权重为候选节点分配相关性分数。
- 候选节点集合 (Candidate Node Collection):整合双路径(搜索+推理)结果,去重并统一评分标准。
- 结果排序与合并 (Result Ranking & Merging):基于评分排序,并合并逻辑关联的节点以确保内容完整性。
- 返回结构化结果 (Return Structured Result):封装节点信息(路径、范围)、评分及上下文元数据,生成标准化响应。
- 输出 (Output):呈现最终结果,包含节点路径(如章节层级)、精确页面范围及核心内容片段。
开发者可以通过 pi_client.chat_completions 接口实现推理式问答。例如,对单个文档提问以解决检索不精准问题,或传入多个文档 ID 列表 doc_id=["id1", "id2"] 来实现跨文档对比分析,极大地提升了复杂问答的准确性和效率。
这种混合检索机制充分利用了树结构的组织优势和LLM的语义理解能力,提供了精确且相关的检索结果。
04
—
结语
PageIndex 证明了基于推理与结构化索引的检索方式,在处理复杂、长篇文档时,相比传统向量检索具备显著优势。它不仅是一个开源工具,更代表了 RAG 架构的重要转向:
从"用数学方法近似语义"回归到"用结构理解赋能推理即检索",让检索从概率行为升级为可被信任的智能过程。
当然,准确率并非 RAG 架构设计的唯一考量指标。尽管 PageIndex 在准确率上表现亮眼,但“推理即检索”通常意味着更高的计算成本与延迟。在工程实践中,仍需在“准确率、效率、成本”之间做出理性权衡,并结合具体业务场景选择最合适的架构方案。如果你希望进一步了解不同 RAG 架构的优劣对比及选型策略,欢迎阅读https://mp.weixin.qq.com/s/bcybd4fIn71uzVHzYRzBEg。
参考文献:
[1] PageIndex: Document Index for Vectorless, Reasoning
https://github.com/VectifyAI/PageIndex
[2] PageIndex: Next-Generation Vectorless, Reasoning-based RAG
https://pageindex.ai/blog/pageindex-intro
[3] RAG的另一种思路,基于文档树结构的推理型检索
https://zhuanlan.zhihu.com/p/1969086112791236731
[4] PageIndex深度解析:推理式检索,无向量数据库新范式
https://www.youtube.com/watch?v=FgX9lAFyGbI)