LLM-文档检索-召回

问题背景:

  • 痛点:文档切分粒度难以把控,过大导致噪声增多,过小导致语义信息丢失。粗略的文档切分使得模型在召回片段时可能只提供不完整的答案。
  • 关键问题:如何让LLM能够简要、准确地回答细粒度知识?

解决方案:

  1. 整体思路:基于LLM的文档对话架构分为两部分:

    • 检索:通过向量相似度计算,提高召回的准确性。
    • 推理:交给LLM来整合召回结果。

    检索部分的核心原则是:

    • 提高召回率:确保尽可能多的相关信息被检索到。
    • 减少无关信息:降低噪声,增强模型的准确性。
    • 加快速度:保持高效的处理流程。
  2. 二级索引架构

    • 第一级索引:关键信息,提供简洁的语义概述,用于检索。
    • 第二级索引:原始文本,结合召回的关键信息获取完整答案。
  3. 语义切分方法

    • 方法1:篇章分析工具:使用discourse parsing工具,根据段落之间的从属关系,将相关段落合并,以确保每段落包含一致的语义。
    • 方法2:基于BERT的切分:利用BERT模型的NSP任务,判断相邻句子或段落是否具有语义衔接关系,基于相似度阈值t,决定是否合并段落。
  4. 关键信息提取

    • 方法1:成分句法分析和命名实体识别(NER):通过句法分析提取核心名词短语和动词短语,结合NER提取重要实体。
    • 方法2:语义角色标注(SRL):通过谓词论元结构,提取句子的主要信息,如“谁对谁做了什么”。
    • 方法3:关键词提取工具:使用HanLP或KeyBERT进行关键词抽取。
    • 方法4:垂直领域自定义方法:例如训练KeyLLM模型,专注于生成领域相关关键词。

常见问题:

  • 冗余问题:多个语义段和句子召回时可能出现重复,但实际测试显示这对准确度影响不大,尤其在跨段落知识的回答上表现更好。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值