免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


我要投稿

PageIndex:一种基于推理的 RAG 框架

发布日期:2025-12-20 21:05:52 浏览次数: 1518
作者:Ai码客笔记

微信搜一搜,关注“Ai码客笔记”

推荐语

PageIndex革新RAG技术,用树形推理替代传统向量检索,让AI像专家一样精准定位长文档信息。

核心内容:
1. PageIndex的核心原理:无向量树结构索引与推理式检索
2. 对比传统向量RAG的三大痛点与解决方案
3. 在金融/法律等专业场景的实践优势与应用前景

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家
最近在调研RAG的各种技术,关注到了PageIndex,觉得其思路颇有借鉴意义,故整理下PageIndex相关知识要点。

1、PageIndex是什么

PageIndex 是一种不依赖向量的、基于推理(reasoning-based)的信息检索框架,用于从长篇、复杂文档中进行知识检索,其设计理念是模拟人类专家阅读和定位信息的方式,通过将文档结构化为树,并让大模型在该结构上进行推理导航,从而实现可解释、无向量的长文档检索。

核心特点包括:

  • 无向量(Vectorless)检索
    • 不使用 embedding、向量相似度搜索
    • 不需要向量数据库(如Faiss、Milvus等)
  • 树结构索引(Tree-structured Index)
    • 将文档转换为层级化的树结构(类似目录/大纲)
    • 保留文档的逻辑结构,而不是简单切chunk
  • 基于Agent的推理式检索
    • 由LLM在树结构上进行“逐步导航”和推理
    • 像人类专家一样判断“该往哪一节看”、“是否继续深入”
  • 可追溯、可解释
    • 检索路径清晰可见
    • 可以解释为什么选择某一页或某一节点
  • 无需Chunking
    • 不需要人为切分文本
    • 避免chunk过小或上下文割裂的问题


感兴趣的可以去PageIndex官网去体验下。

2、PageIndex为什么要这样设计

传统基于向量的RAG的痛点

基于向量的RAG依靠语义嵌入向量数据库来识别相关的文本块。

在预处理阶段,文档首先被分割成更小的块,然后每个块使用嵌入模型被嵌入到向量空间中,生成的向量被存储在诸如Chroma或Pinecone之类的向量数据库中。

在查询阶段,使用相同的嵌入模型对用户查询进行嵌入处理,在向量数据库中搜索语义相似的文本块,系统检索出排名前k的结果,这些结果随后被用于构成模型的输入上下文。

尽管对于短文本而言简单有效,但基于向量的RAG面临着几个主要挑战:

  1. 查询与知识空间不匹配
  • 核心问题:向量检索以 “语义相似” 为核心匹配逻辑,默认语义最相似的文本就是最相关的内容。
  • 关键局限:用户查询通常表达的是“需求意图”,而非具体的“文本内容”,二者存在本质差异,导致检索结果常偏离实际需求。
  1. 语义相似不等于真实相关
  • 核心问题:向量检索仅能识别文本表面的语义关联,无法判断内容在实际场景中的相关性。
  • 关键局限:在金融财报、法律条文、技术手册等领域文档中,大量文本片段语义高度相近(如不同年份的同类财务指标描述),但实际对应的业务含义、适用场景差异极大,向量检索无法区分这种关键相关性差异。
  1. 硬切分破坏语义与上下文完整性
  • 核心问题:为适配嵌入模型的输入长度限制,文档需被强制切分为固定长度的文本块(如 512 tokens、1000 tokens)。
  • 关键局限:这种“硬切分”方式会切断完整的句子、段落逻辑或章节结构(如将一个完整的实验结论拆分为两个独立片段),导致文本语义碎片化,丢失关键的上下文关联,影响后续理解与推理。
  1. 无法整合对话历史
  • 核心问题:向量检索将每个用户查询视为独立请求,不关联历史对话内容。
  • 关键局限:无法支持多轮连续交互场景,例如用户先询问“2023年营收数据”,后续追问“该数据与2022年相比有何变化”时,检索器无法基于前序查询定位到同一文档的关联内容,需用户重复提供背景信息,影响交互效率与体验。
  1. 难以处理文档内交叉引用
  • 核心问题:文档中常见的“参见附录G”、“参考表5.3”等交叉引用,其引用语句与被引用内容的语义相似度极低。
  • 关键局限:向量检索无法识别这种“指向性关联”,若不额外构建知识图谱等预处理工具,会直接遗漏被引用的关键信息,导致检索结果不完整。

3、PageIndex如何解决上述痛点问题

传统基于向量的RAG存在查询与知识空间不匹配、语义相似不等于真实相关、硬切分破坏语义完整性、无法整合聊天历史、难以处理文档内交叉引用五大痛点,而以 PageIndex为代表的基于推理的RAG框架,通过模仿人类阅读长文档的逻辑,结合结构化索引与动态推理流程,针对性地解决了这些问题,具体方法如下:

  1. 解决 “查询与知识空间不匹配”:用推理定位信息位置,而非依赖语义相似。传统向量RAG仅通过匹配“语义相似文本”检索,无法衔接“查询意图”与“信息位置”;基于推理的RAG则让 LLM 通过文档结构推理确定检索方向。
    • 先读取文档的目录(ToC)或 JSON 层级索引,理解文档整体结构(如“财务摘要”“附录G”等章节分工);
    • 根据查询意图主动推断可能包含答案的章节,例如用户问“债务趋势”,LLM 会推理“债务相关内容通常在财务摘要或附录G”,直接定位到对应板块;
    • 以“意图-结构匹配”替代“文本-文本相似匹配”,填补查询与知识空间的gap。
  1. 解决“语义相似不等于真实相关”:聚焦“contextual relevance(上下文相关性)”,而非表面语义。针对专业文档中“语义相近但相关性差异大”的问题,基于推理的RAG通过上下文理解 + 结构化导航筛选真正相关的信息。
    • LLM先解析查询的核心需求(如 “2023 年营收同比变化”),而非机械提取关键词;
    • 结合目录索引解读各章节的实际含义(如 “2023 年财务报表” 章节 vs “2022 年财务回顾” 章节),排除语义相似但年份、主题不符的内容;
    • 直接检索 “能满足查询需求的章节”,而非 “与查询词语义最像的文本块”,例如在技术手册中,即使 “设备安装步骤” 与 “设备拆卸步骤” 语义相近,也能通过章节定位区分。
  1. 解决 “硬切分破坏语义与上下文完整性”:动态检索 “语义连贯单元”,而非固定长度文本块。传统向量 RAG 为适配嵌入模型,将文档切分为固定长度块(如 512 tokens),易断裂逻辑;基于推理的 RAG 则以完整语义单元为检索单位。
    • 以 “章节、段落、完整页面” 等天然语义单元作为检索对象,而非强制切割;
    • 若检测当前检索的单元信息不完整(如某章节仅包含 “营收增长数据”,缺少 “营收基数”),会自动迭代检索相邻单元(如下一章节、子节点内容),直到获取完整上下文;
    • 例如在法律文件中,能完整检索 “合同违约责任” 整节内容,而非被切分的 “违约责任第 1 条”、“违约责任第 2 条” 碎片。
  1. 解决 “无法整合聊天历史”:多轮推理关联历史上下文,实现连贯检索针对 “每轮查询独立处理” 的问题,基于推理的 RAG 将聊天历史融入检索决策。
    • 检索时会参考前序对话内容,明确当前查询的 “上下文背景”,例如用户先问 “2023 年金融资产”,后续问 “那负债呢”,LLM 会自动关联 “2023 年财务报表” 同一文档的 “负债” 章节;
    • 把历史查询的 “检索范围、已获取信息” 作为当前检索的依据,避免重复检索无关内容,同时支持递进式问题解答(如从 “营收数据” 到 “营收构成” 再到 “营收同比分析”)。
  1. 解决 “难以处理文档内交叉引用”:通过层级索引追踪引用,无需额外预处理。传统向量 RAG 因 “引用语句与被引用内容语义不相似”,无法识别 “参见附录 G”“参考表 5.3” 等关联;基于推理的 RAG 则借助结构化索引直接导航引用内容。
    • 文档的 JSON 层级索引包含所有章节、附录、表格的关联关系(如 “表 5.3”“附录 G” 均为独立节点,且有明确的 node_id);
    • 当 LLM 遇到交叉引用时,会通过索引定位到被引用的节点,直接检索对应内容,例如看到 “参见附录 G”,会从目录索引中找到 “附录 G” 节点,获取其下的 “统计表格” 数据;
    • 无需额外构建知识图谱等预处理工具,即可实现自动、精准的交叉引用追踪,例如在财报中,能通过 “表 5.3” 的引用定位到具体的收入、支出明细。

3、ToC结构

{
    "structure": [
        {
            "nodes": [
                {
                    "title""Abstract",
                    "node_id""0001",
                    "summary""This text discusses the increasing importance of fine-tuning large language models (LLMs) for human intent alignment, highlighting the need for efficient resource utilization. It contrasts Reinforcement Learning from Human or AI Preferences (RLHF/RLAIF), which is complex and unstable, with Direct Preference Optimization (DPO), a simpler alternative. The work introduces an active learning strategy for DPO, proposing an acquisition function that uses predictive entropy and the certainty of the implicit preference model to improve the efficiency and effectiveness of fine-tuning with pairwise preference data.",
                    "end_index"1,
                    "start_index"1
                },
                {
                    "nodes": [
                        {
                            "title""3.1. Acquisition functions",
                            "node_id""0005",
                            "summary""### 3.1. Acquisition functions\n\nIn selecting scoring methods (step 8 in 1) we aim for options that are straightforward to implement and do not require modifications to the model architectures or the fine-tuning procedure itself. This allows for a drop in addition to existing implementations. As a result, we propose using the predictive entropy of  $p_{\\theta_t}(y|x)$  as well as a measure of certainty under the Bradley-Terry preference model, which leverages the implicit reward model in DPO.\n",
                            "end_index"4,
                            "start_index"3
                        }
                    ],
                    "title""3 Active Preference Learning",
                    "node_id""0004",
                    "summary""This text introduces Active Preference Learning (APL), a machine learning paradigm for efficiently selecting the most informative data points during training, specifically within a pool-based active learning setting. The APL training procedure involves iteratively sampling prompts, generating pairs of completions using the current model, ranking these pairs with an acquisition function, selecting the highest-ranked pairs for preference labeling by an oracle, and then fine-tuning the model with these labeled preferences. This approach augments the standard DPO fine-tuning loop with an outer data acquisition loop, where the number of acquisition steps is determined by the labeling budget and batch size. A key difference from traditional active learning is the necessity of generating completions for acquired data before scoring, especially if the acquisition function requires them. The text also outlines crucial design considerations, including the selection of acquisition functions, fine-tuning implementation details, the choice of oracle, and experimental settings for sampling parameters. Algorithm 1 provides a detailed step-by-step breakdown of the entire APL procedure.",
                    "end_index"3,
                    "start_index"2
                }    ]
}

4、PageIndex检索方式

文档检索



PageIndex会根据你的query先检索哪些文档相关联。文档检索大概有以下三种方式:

  • Metadata:文档元信息存储到数据库,可以根据元信息来查询相关联的文档(例如根据文档名称、文档摘要、文档标签等信息来筛选)
  • Semantics:和传统的基于向量的RAG一样,文档切片存储到向量库然后根据query召回文档切片,然后再根据召回的切片计算文档相关性得分(
  • Description:将文档列表给模型,让模型来推理哪些文档相关
prompt = f""" 
You are given a list of documents with their IDs, file names, and descriptions. Your task is to select documents that may contain information relevant to answering the user query.

Query: {query}

Documents: [
    {
        "doc_id""xxx",
        "doc_name""xxx",
        "doc_description""xxx"
    }

]

Response Format:
{{
    "thinking": "<Your reasoning for document selection>",
    "answer": <Python list of relevant doc_ids>, e.g. ['doc_id1', 'doc_id2']. Return [] if no documents are relevant.
}}

Return only the JSON structure, with no additional output.
"""

ToC树检索



让大模型根据目录树来推理相关联的node节点,获取到node节点内容之后再进行迭代式生成。

prompt = f"""
You are given a query and the tree structure of a document.
You need to find all nodes that are likely to contain the answer.

Query: {query}

Document tree structure: {PageIndex_Tree}

Reply in the following JSON format:
{{
  "thinking": <your reasoning about which nodes are relevant>,
  "node_list": [node_id1, node_id2, ...]
}}
"""

除此之外,还支持混合树检索,例如基于chunk进行召回,筛选出node节点。

5、参考文献

主题
链接
PageIndex: Next-Generation Vectorless, Reasoning-based RAG
https://pageindex.ai/blog/pageindex-intro
PageIndex官方文档
https://docs.pageindex.ai/
RAG for Technical Manuals: Challenges & Solutions
https://pageindex.ai/blog/technical-manuals
Vectless RAG
https://docs.pageindex.ai/cookbook/vectorless-rag-pageindex
Vision RAG
https://docs.pageindex.ai/cookbook/vision-rag-pageindex

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询