← 返回题库
第 035 题 · RAG · 困难

RAPTOR 如何构建层次化 RAG,什么时候比平铺 Chunk 检索更合适?

岗位专项 这代表什么?
✓ 资料核验 来源说明:公开面经题库主题;公司归属未独立核验,技术答案依据原论文或官方文档整理
RAPTOR层次检索摘要树
评论与补充 ↓
口述训练

先用自己的话答,再看参考说法

60 秒是练习上限,不是必须凑满。原理题讲清因果,设计题讲清约束,项目题只讲真实证据。

别照着背。参考说法只用于对照;直接回答问题,简单题说清楚就收尾。项目题只用自己的经历和数字。

面试时怎么答

先描绘 RAPTOR 的树:底层是原始 Chunk,相近节点聚类后生成摘要,再继续向上聚合。检索时可以同时命中细节节点和高层摘要,因此适合跨章节主题或不同粒度的问题。

边界也要讲清:层次构建和摘要更新成本高,摘要错误可能向上累积;对于精确事实、频繁更新的小文档,平铺检索往往更直接。

可以这样答:

RAPTOR 将原始 Chunk 的表示反复聚类,并为每个簇生成摘要,形成从细节到主题的树状索引。查询时既能检索叶子节点,也能命中较高层摘要,所以面对跨章节概括、长文档主题和多粒度问题时,比只搜平铺 Chunk 更容易拿到完整背景。代价是建树与更新更重,摘要还会损失细节,因此最终事实仍需回溯叶子证据。

核心回答

RAPTOR 先把文档分成叶子片段并计算向量,然后对语义相近片段聚类,使用模型为每个簇生成摘要;摘要本身再次被向量化、聚类和总结,递归形成不同抽象层级的树。查询时可以从多个层级检索,使宏观问题命中高层摘要,细节问题仍命中叶子原文。

它尤其适合单篇或一组长文档中的主题概括、跨章节关系和多步信息组合。对精确事实、短独立文档或高频更新语料,普通 Chunk + 重排可能更简单可靠。摘要节点不能作为无来源的“新事实”,必须携带子节点与页码血缘,最终回答优先引用原文证据。

展开说明

建树参数包括叶子粒度、Embedding、聚类方法、每簇规模、摘要模型和检索策略。Top-down Traversal 能减少候选,但早期选错分支可能漏召回;在所有树节点上做 Flat Retrieval 更直接,却增加候选与重复。应把两者作为可测试策略,而非声称层次检索必然更优。

增量数据会影响聚类与上层摘要。生产中可按文档或稳定分区独立建树,对变更子树重建,并通过版本化索引原子切换。

工程实践

先建立平铺 Chunk + Reranker 基线,再只在需要全局语义的切片评估 RAPTOR。测试细节、概括、多跳和时效问题,记录叶子 Recall@K、最终答案正确率、引用能否回到原文、摘要事实错误率、构建 Token/时间、索引体积和更新延迟。

常见追问

  1. 高层摘要可以直接作为最终引用吗? 不建议只引摘要;它是生成内容,可能压缩或改写事实,应沿血缘回到原文页码和片段验证。
  2. RAPTOR 与 GraphRAG 有什么区别? RAPTOR 主要按语义聚类形成摘要树;GraphRAG 显式抽取实体关系并构建图与社区,两者结构和适用问题不同。
  3. 为什么层次检索不一定胜过平铺检索? 精确事实可能在摘要中被省略,树路由还会产生级联漏召回;短文档和简单查询的额外成本可能没有回报。

一句话复习

RAPTOR 用递归聚类摘要补充全局语义,但必须保留原文血缘,并用业务切片证明它胜过平铺基线。

参考资料

无需账号 · 原地交流

评论与补充

评论会直接显示在这道题下面。可以写自己的答法、继续追问或指出错误,不需要 GitHub 账号,也不会跳转到 Issue;内容会公开,请勿填写个人隐私、公司机密或受保密约束的材料。

正在加载评论…