启用 RAPTOR
一种用于长上下文知识检索和摘要的递归抽象方法,平衡广泛的语义理解与细节信息。
RAPTOR(树状组织检索的递归抽象处理)是在 2024 年论文 中介绍的一种增强型文档预处理技术。RAPTOR 专为解决多跳问答问题而设计,通过对文档块进行递归聚类和摘要生成来构建分层树结构。这使得在长文档中能够进行更具上下文感知的检索。RAGFlow v0.6.0 将 RAPTOR 集成到文档聚类中,作为数据预处理管道在数据提取和索引之间的一部分,如下图所示。

我们使用这种新方法的测试表明,在需要复杂多步推理的问答任务中取得了最先进(SOTA)的结果。通过将 RAPTOR 检索与我们内置的分块方法和/或其他检索增强生成(RAG)方法相结合,您可以进一步提高问答准确性。
启用 RAPTOR 需要大量的内存、计算资源和 token。
基本原理
在原始文档被分割为块后,块按语义相似性而不是在文本中的原始顺序进行聚类。然后,聚类通过系统的默认聊天模型被摘要为更高级别的块。这个过程递归应用,从下往上形成具有不同摘要级别的树结构。如下图所示,初始块形成叶节点(蓝色显示),并递归摘要为根节点(橙色显示)。

递归聚类和摘要捕获了多跳问答 所需的广泛理解(通过根节点)以及细节信息(通过叶节点)。
应用场景
对于涉及复杂多步推理的多跳问答任务,问题与其答案之间往往存在语义差距。因此,使用问题进行搜索往往无法检索到有助于正确答案的相关块。RAPTOR 通过为聊天模型提供更丰富、更具上下文感知和相关性的块来摘要,从而解决了这一挑战,实现了整体理解而不失去细节信息。
知识图谱也可以用于多跳问答任务。详情请参阅构建知识图谱。您可以使用其中一种方法或两种方法都使用,但请确保您了解所涉及的内存、计算和 token 成本。
前提条件
系统的默认聊天模型用于摘要聚类内容。在继续之前,请确保您已正确配置了聊天模型:
配置
RAPTOR 功能默认禁用。要启用它,请在知识库的配置页面上手动开启使用 RAPTOR 增强检索开关。
提示词
以下提示词将递归应用于聚类摘要,其中 {cluster_content} 作为内部参数。我们建议您现在保持原样。该设计将在适当时候更新。
Please summarize the following paragraphs... Paragraphs as following:
{cluster_content}
The above is the content you need to summarize.
最大 token 数
每个生成摘要块的最大 token 数。默认为 256,最大限制为 2048。
阈值
在 RAPTOR 中,块按语义相似性进行聚类。阈值参数设置块聚合在一起所需的最小相似度。
默认为 0.1,最大限制为 1。更高的阈值意味着每个聚类中的块更少,而较低的阈值意味着更多。
最大聚类数
要创建的最大聚类数。默认为 64,最大限制为 1024。
随机种子
随机种子。点击 + 更改种子值。