语言人工智能指南

文档分块策略

文档分块是指在嵌入长文本进行搜索或 RAG 之前将其分割成可检索的片段的方法。

概述

文档分块是指在嵌入长文本进行搜索或 RAG 之前将其分割成可检索的片段的方法。块的大小和边界悄悄地决定了检索质量,因此正确地选择它们通常比选择更高级的模型更重要。

文档分块策略是语言 AI ​​堆栈的一部分,用于大规模读取、生成、分类和转换文本和语音。

深入探讨

分块将大文档变成适合嵌入模型并与提问方式保持一致的小段落。固定大小的分块按标记或字符数进行分割,通常有重叠,因此跨越边界的句子不会被孤立。递归分块沿着分隔符的层次结构(段落,然后是句子,然后是单词)进行分割,以尊重自然结构。语义分块通过嵌入相似性来对句子进行分组,打破主题的转移。文档感知分块遵循格式本身,根据 Markdown 标题、HTML 标签或代码函数进行拆分。核心张力是粒度:小块提供精确匹配,但会丢失周围的上下文,而大块则承载上下文,但会削弱相关性,并且可能会超出令牌限制。许多管道存储小块以供检索,但将扩展的父段落提供给模型。

技术洞察

重叠是最简单的可靠性技巧:在相邻块之间重复大约 10% 到 20% 的标记可确保跨边界分割的事实在至少一个块中仍然完好无损。语义分块更进一步,嵌入每个句子并测量邻居之间的余弦距离,然后在距离峰值高于阈值的地方进行切割。这会产生主题一致的可变长度块,但代价是在索引期间进行额外的嵌入计算。

掌握文档分块策略

文档分块是指在嵌入长文本进行搜索或 RAG 之前将其分割成可检索的片段的方法。块的大小和边界悄悄地决定了检索质量,因此正确地选择它们通常比选择更高级的模型更重要。文档分块策略是语言 AI ​​堆栈的一部分,用于大规模读取、生成、分类和转换文本和语音。为了建立深入的理解,请将文档分块策略视为一种操作模型,而不是单个功能:定义所需的结果,澄清假设,并将系统可以可靠地执行的操作与仍需要专家判断的操作分开。

在实践中,使用文档分块策略的强大团队将提示、检索和审查循环设计为一个集成的通信系统。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

语言工作流程可以在不牺牲一致性的情况下更快地移动。与此同时,幻觉事实可以悄悄地进入报告、支持流程或研究成果。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

语言工作流程可以在不牺牲一致性的情况下更快地移动。

语言工作流程可以在不牺牲一致性的情况下更快地移动。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

它扩展了跨语言和沟通方式的访问。

它扩展了跨语言和沟通方式的访问。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

团队可以花更多时间进行判断,而自动化则可以处理重复。

团队可以花更多时间进行判断,而自动化则可以处理重复。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

文档分块策略的未来

分块正在从固定的预处理步骤转向自适应和模型感知的步骤。像后期分块这样的方法首先嵌入整个文档,然后池化块向量,以便每个部分保留全局上下文。布局感知解析器越来越多地保留表格、标题和图形,而不是将它们扁平化为嘈杂的文本。随着上下文窗口的增长,一些管道检索更少但更大的块,但智能分块对于成本、延迟和精确定位仍然至关重要,而不是消失。

现实世界的实施

将 200 页的产品手册按章节标题分开,因此有关“保修条款”的问题只会检索该章节,而不是整本书。

使用句子重叠,这样跨越一个段落末尾和下一个段落开头的定义至少在一个块中保持完整。

从语义上对研究论文进行分块,使方法讨论和结果讨论成为独立的、主题连贯的段落。

按函数或类边界对代码库进行分块,以便开发人员的查询检索完整的、可运行的单元而不是半函数。

实施模式

实践中的文档分块策略

将 200 页的产品手册按章节标题分开,因此有关“保修条款”的问题只会检索该章节,而不是整本书。

将 200 页的产品手册按章节标题分开,这样有关“保修条款”的问题只会检索该章节,而不是整本书。当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力提升和错误成本时,通常会获得更好的结果。

实践中的文档分块策略

使用句子重叠,这样跨越一个段落末尾和下一个段落开头的定义至少在一个块中保持完整。

使用句子重叠,使跨越一个段落末尾和下一个段落开头的定义在至少一个块中保持完整。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

实践中的文档分块策略

从语义上对研究论文进行分块,使方法讨论和结果讨论成为独立的、主题连贯的段落。

从语义上对研究论文进行分块,使方法讨论和结果讨论成为独立的、主题连贯的段落。当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会得到更好的结果。

实践中的文档分块策略

按函数或类边界对代码库进行分块,以便开发人员的查询检索完整的、可运行的单元而不是半函数。

按功能或类边界对代码库进行分块,以便开发人员的查询检索完整的、可运行的单元,而不是半功能的团队在预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时通常会获得更好的结果。

风险与防护栏

!

幻觉的事实可以悄悄地进入报告、支持流程或研究成果。

!

及时的敏感性可能会在类似的请求中产生不一致的结果。

!

如果访问控制薄弱,敏感文本数据可能会暴露。

实施路线图

1

在推出之前定义输出格式、语气和质量标准。

在推出之前定义输出格式、语气和质量标准。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

当准确性很重要时,请使用可信来源进行地面响应。

当准确性很重要时,请使用可信来源进行地面响应。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

为高风险输出保留人工审查检查点。

为高风险输出保留人工审查检查点。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

跟踪故障模式并定期重新训练提示或工作流程。

跟踪故障模式并定期重新训练提示或工作流程。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索