从索引中心检索到上下文推理:RAG 系统的技术演进
随着 RAG (Retrieval-Augmented Generation) 技术的演进,一种名为 上下文搜索(In-Context Search, ICS) 的新范式正在重新定义 LLM 与外部知识的交互方式。本文对比了传统 Graph-based RAG 与以 PageIndex 和 Sirchmunk 为代表的下一代 ICS 方案。
摘要
传统的检索增强生成(RAG)框架通过静态索引与向量相似度匹配,为大语言模型(LLM)构建了坚实的外部知识接入基础。然而,随着计算范式向 LLM 原生 架构演进,一种被称为 上下文搜索(In-Context Search, ICS) 的新前沿正在兴起。这一演进强调在模型上下文窗口内动态加载和推理经过处理的原始数据,从而突破静态预处理的局限。本文分析了从传统 Graph-based RAG 到下一代 ICS 范式的技术演进,以 VectifyAI 的 PageIndex 和 ModelScope 的 Sirchmunk 为代表。
1. RAG 的基础与前沿
第一代 RAG 通过引入外部知识库,成功地缓解了 LLM 的幻觉问题。这类系统通常依赖 向量数据库 或 静态知识图谱(如 LightRAG)。
传统 RAG 的能力与局限
尽管传统 RAG 仍然是大规模、低延迟部署场景下的行业标准,但它在特定的高保真场景中面临结构性瓶颈:
- 静态索引的刚性: 为快速变化的数据维护向量或图索引,会引入大量的 ETL 开销和"新鲜度滞后"。
- 语义碎片化: 固定大小的分块切割往往会割裂逻辑依赖关系,导致检索到的上下文不完整。
- 预处理延迟: 构建复杂的 Graph-based 结构(如高级 RAG 所需的)需要密集计算,导致系统在首次查询前就需要大量准备时间。
业界正在转向 上下文搜索(ICS)。在这一范式中,“检索"不再是从数据库中独立查找的过程,而是在上下文窗口内执行的一项 智能体推理任务,将原始数据作为一等公民对待。
2. 技术对比:RAG 成熟度矩阵
| 维度 | LightRAG(高级 Graph-RAG) | PageIndex(基于推理的 ICS) | Sirchmunk(无索引 / 自进化) |
|---|---|---|---|
| 架构理念 | 索引中心(图拓扑) | 推理中心(层级化 ICS) | 敏捷中心(原始搜索与进化) |
| 核心机制 | 双层图遍历 | 智能体树导航 | 贪心级联(FAST)/ 蒙特卡洛采样(DEEP) |
| 检索深度 | 通过图边实现全局与局部检索 | 结构化路径搜索 | 统计重要性提取 |
| 索引开销 | 高(图构建) | 中等(树元数据) | 极低至零 |
| 上下文保真度 | 高(实体-关系) | 最高(结构完整性) | 完全保真(原始数据直接访问) |
| 数据新鲜度 | 低(需重新索引) | 中等(增量更新) | 实时(直接文件访问) |
3. 深度解析:上下文搜索(ICS)范式
下一代 RAG 的核心在于从 索引中心检索(在向量空间中匹配嵌入向量)到 上下文搜索(ICS) 的转变。ICS 将检索过程视为一项 LLM 原生的推理任务,由模型主动"搜索"直接加载到其上下文窗口中的原始或半处理数据。
3.1 根本性转变:从"查找"到"推理”
与传统 RAG 将上下文窗口视为预检索分块的被动容器不同,ICS 架构将上下文窗口作为一个 主动工作区。
| 特征 | 传统向量 RAG | 上下文搜索(ICS) |
|---|---|---|
| 数据表示 | N 维浮点向量 | 原始文本 / 结构化元数据 |
| 搜索逻辑 | 最近邻搜索(K-NN) | 智能体规划与逻辑推理 |
| 上下文加载 | Top-K 静态分块 | 动态证据注入 |
| 逻辑层 | 统计型(余弦相似度) | 认知型(语义导航) |
3.2 PageIndex:层级化结构推理
PageIndex 通过将文档视为 逻辑骨架 而非词袋,重新定义了上下文搜索(ICS)。其架构假设:当 LLM 理解上下文窗口中数据的 来源与层级关系 时,推理效果最佳。
3.2.1 层级语义树构建
与忽略文档结构的传统 RAG 不同,PageIndex 利用 LLM 执行 结构化解析,将长文本转换为多层 语义树索引。
- 非线性提取: PageIndex 不采用任意分块,而是识别逻辑边界(章、节、小节)。每个节点包含一份 自包含的摘要 及其子节点的元数据。
- 消除上下文盲区: 通过保留文档的骨架结构,模型能够保持数据点的"元上下文"。某个特定图表不会被孤立检索;模型始终"知道"它属于某份 2024 年审计报告 的 风险因素 章节。这消除了扁平向量 RAG 中常见的"浮动片段"问题。
3.2.2 智能体推理与递归导航
PageIndex 实现了一个 智能体循环,模拟人类的研究模式 — 先浏览目录(ToC),再深入具体段落。
- 面包屑推理: LLM 扮演导航者的角色,最初仅评估上下文中的"根节点"(全局摘要),然后做出推理决策,“下沉"到特定分支,同时丢弃无关分支。
- 递归缩放与信噪比优化: 随着智能体沿树向下移动,高层元数据被替换为更细粒度的子节点。这种 递归缩放 通过仅加载推理智能体认为必要的数据,确保高 信噪比(SNR),在交叉引用和结构化逻辑至关重要的复杂文档中实现最优精度。
3.3 Sirchmunk:统计敏捷性与自进化
Sirchmunk 代表了上下文搜索(ICS)领域的 “敏捷猎手” 理念。它优先保障 数据新鲜度 与 操作速度,完全跳过静态树构建阶段。它将文件系统视为一个实时可查询的环境,借助统计力学和智能体反思机制进行搜索。
Sirchmunk 提供两种搜索模式。FAST 模式(默认)采用贪心策略,结合两级关键词级联与上下文窗口采样,仅需 2 次 LLM 调用即可在 2–5 秒内完成检索,速度约为全面模式的 10 倍。DEEP 模式 则激活完整的蒙特卡洛证据采样管线,配合多轮 ReAct 自适应推理,适用于复杂查询场景下的最大召回(10–30 秒)。
3.3.1 重要性采样与渐进式检索机制
Sirchmunk 通过 概率优化 和 由粗到精 的策略,解决了将海量原始数据装入有限上下文窗口的难题。
启发式渐进检索: Sirchmunk 不采用一次性查找,而是使用一条 启发式驱动的管线。它首先以极快速度进行"粗粒度"扫描以识别高概率区域,然后根据语义线索逐步缩小搜索范围,在 LLM 接触数据之前就大幅降低了噪声。
蒙特卡洛重要性采样: 为了弥合"关键词命中"与"语义相关性"之间的差距,它为每个片段相对于查询计算重要性权重:
$$w_i = \frac{P(x_i | Q)}{Q(x_i)}$$- $w_i$(重要性权重):分配给片段的归一化优先级,决定该数据是否被加载到 LLM 有限的上下文窗口中。
- $x_i$(数据片段):在初始高速搜索阶段识别出的候选"命中"或原始数据片段。
- $Q$(查询):用户输入或智能体派生的搜索目标。
- $P(x_i | Q)$(目标分布):片段的真实相关性,表示该片段包含查询答案的实际概率。
- $Q(x_i)$(提议分布):启发式概率,即片段被初始粗粒度过滤器(如关键词频率或文件位置)“捕获"的可能性。
这确保了上下文中填充的是"信息密度"最高的证据,而非仅仅是最先找到的匹配项。
动态证据加载: 基于重要性权重,Sirchmunk 智能决定加载哪些片段。关键的是,如果 LLM 判定某份文档至关重要,Sirchmunk 支持 自动全文加载,将整份文档拉入工作区进行全面分析。
3.3.2 智能目录与文档扫描
与传统 RAG 需要预定义"数据仓库"不同,Sirchmunk 执行 智能自主扫描。它不仅查找文本,还能实时理解目录中各类文件的类型和结构。
- 多模态发现: 原生支持
.pdf、.docx、.md、.txt、.json和.html,将杂乱的目录视为统一的知识池。 - 递归感知: 系统可以根据初步发现自主决定扩大或缩小扫描范围,如同研究者在发现相关引用后扩展其搜索范围一样。
3.3.3 “自我反思"的 ReAct 范式
Sirchmunk 不是一个被动的检索器,而是一个 智能体搜索者。它采用自适应的 ReAct(推理 + 行动) 循环来迭代优化搜索策略。
- 自我反思: 初始扫描后,模型对收集到的证据进行"反思”。如果信息不足或存在矛盾,它会生成新的搜索计划(例如,“初始关键词搜索未命中;我将在
archives/目录中搜索同义词”)。 - 自适应迭代: 该循环允许系统在查询过程中调整策略,确保即使对于复杂的"大海捞针"式查询(传统向量 RAG 可能因语义漂移而遗漏),也能保持高召回率。
3.3.4 “自进化"记忆层
Sirchmunk 采用"事后索引"策略。它不在你提问之前建索引,而是 因为 你提了问才建索引。
| 组件 | 功能 | 技术栈 |
|---|---|---|
| 知识聚类 | 追踪成功使用的数据片段,将其聚类为语义单元。 | DuckDB |
| 即时索引 | 根据实际使用模式动态构建数据地图。 | Python 原生 |
| 知识复用 | 对相似的后续查询命中缓存,从暴力搜索进化为高速检索。 | DuckDB SQL |
通过这一机制,Sirchmunk 从"暴力猎手"有机地进化为"精明的图书管理员”,无需传统预索引数据库的维护开销。
3.4 实现逻辑总结
ICS 实现路线的分化反映了 自顶向下逻辑 与 自底向上发现 之间的选择:
| 组件 | PageIndex(自顶向下) | Sirchmunk(自底向上) |
|---|---|---|
| 初始上下文内容 | 目录与节点摘要 | 原始关键词与搜索命中 |
| 推理路径 | 结构化:根节点 → 分支 → 叶节点 | 非结构化:原始数据 → 采样 → 聚类 |
| 数据处理方式 | LLM 原生解析(语义驱动) | 操作系统原生搜索(I/O 驱动) |
| 上下文策略 | “导航地图以找到目标城市” | “抽样人群以找到目标人物” |
4. 挑战与未来研究方向
这些框架之间的分化代表了应对 “上下文瓶颈” 的两种不同解决方案:
- 结构化路线(PageIndex): 聚焦于 知识的架构。它假设数据具有内在结构,LLM 能够比向量搜索匹配嵌入更准确地导航这种结构。
- 敏捷路线(Sirchmunk): 聚焦于 原始数据的保真度。它假设对于非静态的海量数据集,最有效的"索引"就是原始文件本身,辅以智能采样和迭代学习。
尽管向 上下文搜索(ICS) 和 LLM 原生 架构的转变代表了检索保真度的重大飞跃,但该领域仍处于早期阶段。从"搜索分块"到"推理原始数据"的转变引入了一系列新的技术挑战。
4.1 关键瓶颈
I. Token 可扩展性与利用效率
ICS 的首要约束在于其对高质量上下文窗口管理的依赖。
- 高前期与导航成本(PageIndex): 层级树构建需要大量 Token 消耗进行预处理。在检索过程中,多轮智能体导航进一步增加了推理预算。
- 按需利用(Sirchmunk): Sirchmunk 采用更保守的策略,优先进行高速原始搜索,仅在关键的 重要性采样 和 ReAct 阶段才触发 LLM 推理。这通过仅在"可能找到目标"时才使用 LLM,最大化了 Token 利用率。
- 共同的天花板: 尽管有这些优化,随着数据集规模扩大和智能体反思循环(ReAct 循环)日趋复杂,维持可持续的 Token 产出比仍然是一个普遍性挑战。
II. 计算与 I/O 延迟
ICS 范式以预处理时间换取查询时的智能,这使得性能瓶颈发生了转移。
- I/O 压力: 对于 Sirchmunk 这类"无索引"模型,实时搜索 PB 级数据对磁盘 I/O 和 CPU 吞吐量提出了极端要求。
- 硬件限制: 暴力原始扫描遇到了物理极限。在没有专用硬件加速的情况下,“边搜索边推理"的延迟可能超出实时应用的预期。
III. 评估复杂性:从召回率到推理能力
传统 RAG 指标如 Recall@K 或 MRR 对于 ICS 而言已不够充分。
- 推理准确性: 我们需要新的基准来衡量智能体导航树结构或对原始命中进行采样的效果。
- 路径验证: 成功不再仅仅是找到正确的片段,还在于智能体是否沿着逻辑上合理的路径到达了该证据。
4.2 前进方向:混合智能体 RAG
下一个研究前沿在于将结构化推理与敏捷采样融合为一个 统一的智能体 RAG 框架。
- 双引擎处理: 未来系统可能会利用 小型语言模型(SLM) 进行本地高速重要性采样(Sirchmunk 风格),同时利用前沿大模型构建和导航 动态推理树(PageIndex 风格),用于处理高价值知识。
- 自主策略选择: 终极目标是一个 自主研究智能体。它将实时评估查询类型:
- 简单的事实查找? 触发快速的无索引启发式搜索。
- 复杂的逻辑审计? 启动深层级推理路径。
- 硬件加速 ICS: 与 NPU/GPU 加速文件系统的集成将缓解 I/O 瓶颈,即使在超大规模下也能实现"零索引"推理。
将 RAG 视为静态数据库查找的时代正在终结。通过拥抱 上下文搜索,PageIndex 和 Sirchmunk 等框架正在将上下文窗口转变为一个动态、进化的智能实验场。
参考文献
- Lewis, P., Perez, E., Piktus, A., 等. (2020). Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. NeurIPS 2020. arXiv:2005.11401
- Guo, Z., Qian, C., 等. (2024). LightRAG: Simple and Fast Retrieval-Augmented Generation. arXiv:2410.05779 | GitHub
- VectifyAI. (2025). PageIndex: Extracting and Understanding Financial Reports with LLM. GitHub
- ModelScope. (2025). Sirchmunk:一个无嵌入的、智能体驱动的原始数据搜索引擎。 GitHub
- Yao, S., Zhao, J., Yu, D., 等. (2023). ReAct: Synergizing Reasoning and Acting in Language Models. ICLR 2023. arXiv:2210.03629
- Anthropic. (2024). 模型上下文协议(MCP)规范。 官方文档
- Kaddour, J., Harris, J., Mozes, M., 等. (2023). Challenges and Applications of Large Language Models. arXiv:2307.10169
