Indexing (索引)

索引负责将文档分割为可管理的内容块,这是构建系统的关键步骤

索引面临三个主要挑战:

  • 1)内容表达不完整。分割方式会影响块的语义信息,导致重要信息在较长的上下文中被丢失或忽略。
  • 2)块相似度搜索不准确。随着数据量增加,检索中的噪音变多,导致错误数据的匹配频率增加,使得系统不够可靠。
  • 3)引用链模糊。检索到的块可能来自不同文档,尽管内容在语义上相似,但实际可能涉及不同主题

块优化

块的大小和重叠程度直接影响 RAG 系统的性能。较大的块能提供更多上下文信息,但也会引入更多噪声,增加处理时间和成本。较小的块则噪声较少,但可能无法完整传达上下文。为了提升效果,使用带有重叠的滑动窗口可以改善语义过渡,但也有控制上下文尺寸困难和语义失准的缺点。元数据附加可以为块添加元数据,如页码、文件名等,帮助缩小检索范围,提高精度。Small-to-Big 方法将用于检索的小块和用于生成的大块分开,通过先检索小块再参考大块来提升整体检索效果。

结构化组织

建立分层结构是增强信息检索的一种有效方法。通过构建文档的分层结构,可以加快相关数据的检索与处理