链载Ai

标题: RAG分块策略:主流方法(递归、jina-seg) 前沿推荐(Meta-chunking、Late chunking) [打印本页]

作者: 链载Ai    时间: 前天 16:58
标题: RAG分块策略:主流方法(递归、jina-seg) 前沿推荐(Meta-chunking、Late chunking)

RAG分块策略:主流方法(递归、jina-seg)+前沿推荐(Meta-chunking、Late chunking、SLM-SFT)

大多数常用的数据分块方法(chunking)都是基于规则的,采用 fixed chunk size(译者注:将数据或文本按照固定的大小进行数据分块)或 overlap of adjacent chunks(译者注:让相邻的数据块具有重叠内容,确保信息不会丢失。) 等技术。对于具有多个层级结构的文档,可以使用 Langchain 提供的 RecursiveCharacterTextSplitter,这种方法允许将文档按照不同的层级进行分割。

然而,在实际应用中,由于预定义的规则(比如数据分块大小(chunk size)或重叠部分的大小(size of overlapping parts))过于死板,基于规则的数据分块方法很容易导致检索到的上下文(retrieval contexts)不完整或包含 noise(译者注:指不需要的、干扰性的信息或数据,可能会对分析或处理造成干扰或误导的数据。) 的数据块过大等问题

通过对文本进行合理的分块,不仅可以提高向量化过程中的语义表达能力,还能在检索阶段取得更高的匹配精度,最终使得 RAG 系统能够为用户提供更优质的服务。

1.文本分块策略对大模型输出的影响

1.1 文本分块过长的影响

在构建 RAG(Retrieval-Augmented Generation)系统时,文本分块的长度对大模型的输出质量有着至关重要的影响。过长的文本块会带来一系列问题:

  1. 语义模糊:当文本块过长时,在向量化过程中,细节语义信息容易被平均化或淡化。这是因为向量化模型需要将大量的词汇信息压缩成固定长度的向量表示,导致无法精准捕捉文本的核心主题和关键细节。结果就是,生成的向量难以代表文本的重要内容,降低了模型对文本理解的准确性。

  2. 降低召回精度:在检索阶段,系统需要根据用户的查询从向量数据库中检索相关文本。过长的文本块可能涵盖多个主题或观点,增加了语义的复杂性,导致检索模型难以准确匹配用户的查询意图。这样一来,召回的文本相关性下降,影响了大模型生成答案的质量。

  3. 输入受限:大语言模型(LLM)对输入长度有严格的限制。过长的文本块会占据更多的输入空间,减少可供输入的大模型的文本块数量。这限制了模型能够获取的信息广度,可能导致遗漏重要的上下文或相关信息,影响最终的回答效果。

1.2 文本分块过短的影响

相反,过短的文本块也会对大模型的输出产生不利影响,具体表现为:

  1. 上下文缺失:短文本块可能缺乏必要的上下文信息。上下文对于理解语言的意义至关重要,缺乏上下文的文本块会让模型难以准确理解文本的含义,导致生成的回答不完整或偏离主题。

  2. 主题信息丢失:段落或章节级别的主题信息需要一定的文本长度来表达。过短的文本块可能只包含片段信息,无法完整传达主要观点或核心概念,影响模型对整体内容的把握。

  3. 碎片化问题:大量的短文本块会导致信息碎片化,增加检索和处理的复杂度。系统需要处理更多的文本块,增加了计算和存储的开销。同时,过多的碎片化信息可能会干扰模型的判断,降低系统性能和回答质量。

通过上述分析,可以得出结论:合理的文本分块策略是提升 RAG 系统性能和大模型回答质量的关键。为了在实际应用中取得最佳效果,需要在以下方面进行权衡和优化:

  1. 根据文本内容选择切分策略:不同类型的文本适合不同的切分方法。







欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5