一种基于RAG的多轮对话处理方法、装置以及设备与流程

文档序号:37438791发布日期:2024-03-25 19:39阅读:97来源:国知局
一种基于RAG的多轮对话处理方法、装置以及设备与流程

本发明涉及人工智能,尤其涉及一种基于rag的多轮对话处理方法、装置以及设备。


背景技术:

1、人机对话是人工智能领域的重要内容,用户使用自然语言与系统或机器进行信息交流,进而为其提供对话服务。然而由于语言的连续型、多样性以及灵活性,单轮对话系统在交互中难以理解用户所提出的问题,因此多轮对话系统成为当前的研究重点,其核心是可以准确理解问题语义,返回高质量的回答。常见的多轮问答系统有两类:

2、第一类是基于常见问题(fqa,frequently asked questions)的多轮问答系统,该系统多由大语言模型直接提供服务,利用大语言模型的文本生成性能来直接生成回答,属于生成式问答,该方式存在回答准确率不高。

3、第二类是基于垂直领域的多轮问答系统。该系统多数基于知识库,在本地构建一个包含特定领域知识问答的知识库,对于用户的问题直接从知识库中检索,属于检索式问答。

4、然而,目前基于垂直领域如行业文档制度领域的多轮问答系统,主要面临两个问题:

5、第一个问题是多轮问答系统因涉及上下文理解使得问题的语义更复杂,答案更为多样,或是需要在获取多重相关信息后才可进行回答,导致难以为问题提出方提供准确的回答,准确率一直不高。

6、第二个问题是仅基于知识库的问答系统在垂直领域,如特定行业文档制度领域应用时,会存在一些问题:(1)因知识库的问答多由人为预先设定,用户在提问题时表述具有多样性,会因问题不匹配导致检索失败;(2)知识库中的问答对有限,只能覆盖部分问答;(3)用户有时会对一些常见问题进行提问并期待系统的回答,仅基于知识库的问答多基于垂直领域问题,导致回答失败。这些问题都会使得在垂直领域的问题上无法正常提供回答或回答准确率不高。


技术实现思路

1、有鉴于此,本发明的目的在于提出一种基于rag的多轮对话处理方法、装置以及设备,旨在解决现有针对行业知识制度领域的多轮问答系统的问题回答准确率低等问题。

2、为实现上述目的,本发明提供一种基于rag的多轮对话处理方法,所述方法包括:

3、获取第一问题,根据所述第一问题检索知识库中是否存在与所述第一问题相匹配的文档数据;

4、若是,将匹配到的第一匹配文档与所述第一问题进行拼接,将拼接得到的第一拼接问题输入至预设的rag推理大模型生成第一回答,若否,将所述第一问题输入至预设的问题转换大模型生成第一回答;

5、将所述第一回答返回给用户,并将所述第一问题以及所述第一回答添加至历史对话集中;

6、获取第二问题,通过所述问题转换大模型分析所述第二问题是否与所述历史对话集存在匹配关系;

7、若是,对所述第二问题进行预处理,得到第二处理问题,并采用所述rag推理大模型或者所述问题转换大模型基于所述第二处理问题生成第二回答,若否,采用所述rag推理大模型或者所述问题转换大模型基于所述第二问题生成第二回答;

8、将所述第二回答返回给用户,并将所述第二问题以及所述第二回答添加至所述历史对话集中。

9、优选的,所述根据所述第一问题检索知识库中是否存在与所述第一问题相匹配的文档数据,包括:

10、基于预设的rag模块根据词向量的相似度对所述第一问题在所述知识库中进行检索,将匹配到的文档数据按照向量相似度降序排列,选取前n段的文档数据作为所述第一匹配文档。

11、优选的,所述通过所述问题转换大模型分析所述第二问题是否与所述历史对话集存在匹配关系,包括:

12、通过所述问题转换大模型利用预设prompt的提示对所述第二问题与所述历史对话集进行分析,得到分析结果;

13、根据所述分析结果确定所述第二问题与所述历史对话集的所述匹配关系为问题主体相关或者回答内容相关。

14、优选的,所述问题主体相关为所述第二问题的主体与所述第一问题的主体存在指代关系;对所述第二问题进行预处理,得到第二处理问题,包括:

15、将所述第一问题的主体替换至所述第二问题的主体,得到所述第二处理问题。

16、优选的,所述问题主体相关为所述第二问题的主体缺失;对所述第二问题进行预处理,得到第二处理问题,包括:

17、根据所述第一问题的主体对所述第二问题进行主体补全,得到所述第二处理问题。

18、优选的,所述回答内容相关为所述第二问题与所述第一回答存在内容相关;对所述第二问题进行预处理,得到第二处理问题,包括:

19、根据所述第一回答对所述第二问题进行问题转换,以将所述第一回答的关联内容替换至所述第二问题中,得到所述第二处理问题。

20、优选的,所述采用所述rag推理大模型或者所述问题转换大模型基于所述第二处理问题生成第二回答,包括:

21、根据所述所述第二处理问题检索知识库中是否存在与所述第二处理问题相匹配的文档数据;

22、若是,将匹配到的第二匹配文档与所述第二处理问题进行拼接,将拼接得到的第二拼接问题输入至所述rag推理大模型生成第二回答,若否,将所述第二处理问题输入至所述问题转换大模型生成第二回答。

23、为实现上述目的,本发明还提供一种基于rag的多轮对话处理装置,所述装置包括:

24、第一获取单元,用于获取第一问题,根据所述第一问题检索知识库中是否存在与所述第一问题相匹配的文档数据;

25、第一生成单元,用于判断为是时,将匹配到的第一匹配文档与所述第一问题进行拼接,将拼接得到的第一拼接问题输入至预设的rag推理大模型生成第一回答,若否,将所述第一问题输入至预设的问题转换大模型生成第一回答;

26、第一返回单元,用于将所述第一回答返回给用户,并将所述第一问题以及所述第一回答添加至历史对话集中;

27、第二获取单元,用于获取第二问题,通过所述问题转换大模型分析所述第二问题是否与所述历史对话集存在匹配关系;

28、第二生成单元, 用于判断为是时,对所述第二问题进行预处理,得到第二处理问题,并采用所述rag推理大模型或者所述问题转换大模型基于所述第二处理问题生成第二回答,若否,采用所述rag推理大模型或者所述问题转换大模型基于所述第二问题生成第二回答;

29、第二返回单元,用于将所述第二回答返回给用户,并将所述第二问题以及所述第二回答添加至所述历史对话集中。

30、为了实现上述目的,本发明还提出一种基于rag的多轮对话处理设备,包括处理器、存储器以及存储在所述存储器内的计算机程序,所述计算机程序被所述处理器执行以实现如上述实施例所述的一种基于rag的多轮对话处理方法的步骤。

31、为了实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行以实现如上述实施例所述的一种基于rag的多轮对话处理方法的步骤。

32、有益效果:

33、以上方案,不仅可以用于单轮对话,同时也适用于多轮对话;在多轮对话中,每一轮对话都能去召回知识库内的相关知识,而且新一轮对话可以理解历史轮数对话的内容,在很大程度上提升多轮对话问答的准确性。

34、以上方案,通过基于rag模块的高检索增强性能以及rag推理大模型的强推理生成性能的充分结合,极大地提高了行业文档制度领域智能问答的准确率。

35、以上方案,通过预先设计了编写清晰、意图明确的提示词prompt,在多轮对话中能够引导问题转换大模型根据历史对话内容对当前问题进行有效转换,从而使问答系统得到更精确的回答。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1