CN117251547A - 用户提问应答方法及其装置、设备、介质 - Google Patents
用户提问应答方法及其装置、设备、介质 Download PDFInfo
- Publication number
- CN117251547A CN117251547A CN202311280817.4A CN202311280817A CN117251547A CN 117251547 A CN117251547 A CN 117251547A CN 202311280817 A CN202311280817 A CN 202311280817A CN 117251547 A CN117251547 A CN 117251547A
- Authority
- CN
- China
- Prior art keywords
- user
- question
- answer
- prompt
- latest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000004044 response Effects 0.000 title claims abstract description 29
- 230000006698 induction Effects 0.000 claims abstract description 77
- 239000012634 fragment Substances 0.000 claims abstract description 56
- 239000013598 vector Substances 0.000 claims description 28
- 238000010276 construction Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 7
- 230000001960 triggered effect Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 5
- 238000012216 screening Methods 0.000 claims description 5
- 230000000875 corresponding effect Effects 0.000 description 95
- 230000008569 process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 238000007726 management method Methods 0.000 description 11
- 238000012549 training Methods 0.000 description 11
- 239000000463 material Substances 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 239000000047 product Substances 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000013145 classification model Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 206010010356 Congenital anomaly Diseases 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000029087 digestion Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种用户提问应答方法及其装置、设备、介质,所述方法包括:基于当前用户与客服机器人之间的历史聊天记录和用户最新提问,构造诱导提示文档;调用大语言模型,输入诱导提示文档,获得重新表述了用户最新提问使其语义完整自洽而得到的用户规范提问以及初步答复文本;根据初步答复文本召回语义相匹配的多个解答知识片段,结合用户规范提问构造出实用提示文档;调用大语言模型,输入实用提示文档,获得实用答复文本进行应答。本申请利用多轮对话中的历史聊天记录与原始的用户最新提问之间的语义相关性,更为精准深入地命中与用户最新提问语义相关的解答知识片段,帮助大语言模型高效生成准确的实用答复文本以完成客服应答。
Description
技术领域
本申请涉及电商信息技术领域,尤其涉及一种用户提问应答方法及其装置、设备、介质。
背景技术
电商平台通常构建有相应的客服支持系统,用于提供客服机器人,通过客服机器人应答用户提问。文档问答系统是客服支持系统的一种,是一种基于大语言模型(LLM,Large Language Model)的人工智能系统,能够根据给定的文档和问题,用自然语言给出问题的答案。
基于大语言模型实现的文档问答系统,推理时主要采用两阶段的形式:
1、召回(recall):给定用户问题(query),对其调用向量编码模型,生成语义向量,然后通过向量相似度匹配的方式,从文档库中检索出数个与问题相关的段落;
2、机器阅读理解(MRC):根据提示模板,结合用户问题(query)和召回得到的多个文档片段(passages),生成提示,输入大语言模型,然后获得模型输出,作为答案(answer)。
在此基础上,若要实现多轮对话,一种显而易见的思路是:将本次会话中的历史对话记录直接拼接在一起,并附上最新一轮的提示,再次输入给LLM,以获得答案,这样,LLM可以结合历史对话去理解当前的用户问题。这种方案存在的一个问题是,在实际应用中,为了充分运用LLM的能力、尽可能地回答用户问题,提示的实际长度较长,达到会超过大语言模型的约束条件,会压缩大语言模型输出有效答案的能力。
改进的方式是对历史对话记录进行截尾处理以压缩提示的长度,这种方案虽然可行,但依然存在问题,表现为:
1、用户问题一般较短,而答案虽然没有提示长,但依然可能占用较大长度。多轮对话下来,几乎总会导致最终生成的提示超出系统预设的提示最大长度,不得不在左侧进行截断,从而导致部分历史对话不可见,这种情况称不上是合格的“多轮对话”,容易造成大语言模型无法给出有效的答案;
2、使用用户问题直接生成向量,去和文档片段的向量做相似度匹配,效果不佳,因为语义上有鸿沟——用户问题和可能存在答案的文档片段,在语义上不一定相似,也就影响答案对应用户问题的准确度。
由此可见,鉴于大语言模型本身存在处理能力上的限制,传统的多轮对话技术难以在较长会话中维持应答的有效性,需要做出相应的改进。
发明内容
本申请的目的在于提供一种用户提问应答方法及其相应的装置、设备,以及非易失性可读存储介质。
根据本申请的一个方面,提供一种用户提问应答方法,包括如下步骤:
基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;
调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;
根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;
调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
根据本申请的另一方面,提供一种用户提问应答装置,包括:
诱导构造模块,设置为基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;
诱导输出模块,设置为调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;
实用构造模块,设置为根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;
实用输出模块,设置为调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
根据本申请的另一方面,提供一种用户提问应答设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行本申请所述的用户提问应答方法的步骤。
根据本申请的另一方面,提供一种非易失性可读存储介质,其以计算机可读指令的形式存储有依据所述的用户提问应答方法所实现的计算机程序,所述计算机程序被计算机调用运行时,执行该方法所包括的步骤。
相对于现有技术,本申请包含有如下有益效果:
首先,在当前用户与客服机器人进行多轮对话的环境中,先根据当前用户的用户最新提问和历史聊天记录构造出诱导提示文档,然后借助大语言模型,基于该诱导提示文档中的历史聊天记录对该用户最新提问进行重新表述,确保得到语义完整自洽的用户规范提问以及与该用户规范提问相对应的初步答复文本。在这个过程中,诱导提示文档由于有了历史聊天记录的帮助,无需提供冗长的提示,因此可以容纳更多轮历史对话相对应的聊天记录,具有极小的截断风险,从而可使大语言模型基于更为完整的聊天记录来确定用户规范提问和初步答复文本。
进而,本申请在初步答复文本的基础上进行语义匹配召回多个解答知识片段,虽然初步答复文本是大语言模型根据历史聊天记录生成的,并不是直接来源于解答知识片段,但是,历史聊天记录却是根据解答知识片段生成的,包含有部分解答知识片段的内容,而原始的用户最新提问与历史聊天记录之间又有一定的逻辑关联,所以,初步答复文本实际上更容易以更宽广的视角通过历史聊天记录来承继解答知识片段的语义,也就是说,大语言模型得出的初步答复文本与本申请所期望的实用答复文本之间,实际上更容易存在语义相关性,例如在领域或内容上一致等,因此,利用初步答复文本去实现对解答知识片段的召回,所召回的解答知识片段与原始的用户最新提问之间反而具有更小的语义鸿沟,且更容易全面涵盖用户最新提问所蕴含的语义。
此外,由于原始的用户最新提问在用来由大语言模型生成实用答复文本之前,事先由该大语言模型进行重新表述而转化为用户规范提问,这个用户规范提问在历史聊天记录的帮助下,可以借助大语言模型所具备的指代消解、省略补全等技术能力,使其语义更为完整,逻辑更为自洽,所以,当其与所召回的多个解答知识片段共同构造为实用提示文档再次输入大语言模型之后,便能得到更为准确的实用答复文本。其中,不管历史聊天记录中存在多少轮对话,实用提示文档中所引用的各个解答知识片段都能够综合反映与用户最新提问之间的语义相关性,所以其文档长度始终和单轮对话一样可控,可以有效解决多轮对话方案受大语言模型原生预设的最大输入长度限制的问题,而不会丢失历史对话上下文,从而确保客服机器人以更精准的实用答复文本应答用户最新提问。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的示例性的电商平台的网络架构示意图;
图2为本申请的用户提问应答方法的一种实施例的流程示意图;
图3为本申请实施例中构造诱导提示文档的流程示意图;
图4为本申请实施例中过滤历史聊天记录的流程示意图;
图5为本申请实施例中构造问答知识库的流程示意图;
图6为本申请的用户提问应答装置的原理框图;
图7为本申请所采用的一种用户提问应答设备的结构示意图。
具体实施方式
如图1所示的网络架构中,电商平台82部署于互联网中以向其用户提供相应的服务,电商平台82的商家用户的设备80和消费者用户的设备81同理也接入互联网,以使用电商平台提供的服务。例如,电商平台可以通过配置客服支持系统为电商平台中的各家在线店铺的商家用户开放基于客服机器人的问答服务,消费者用户可以作为当前用户向客服机器人提交其用户最新提问,由客服机器人输出相应的实用答复文本,解答用户最新提问,从而确保在线店铺的服务满意度。
示例性的电商平台82,借助互联网基础设施而面向社会大众提供产品和/或服务的供需匹配,在电商平台82中,产品和/或服务是作为商品信息而提供的,为简化描述,在本申请中使用商品、产品等概念指代电商平台82中的产品和/或服务,具体可以是物理产品、数字产品、门票、服务订阅、其他线下履行的服务等。
现实中的各方实体可以用户的身份接入电商平台82,使用电商平台82提供的各种在线服务,实现参与电商平台82所实现的商务活动的目的。这些实体可以是自然人、法人或社会组织等。对应商务活动中的商家和消费者两类实体,电商平台82相应存在商家用户和消费者用户两大类用户。商务活动中产品流通链条的各方实体,包括厂家、卖方、零售商、物流提供方等,均可以商家用户的身份在电商平台82中使用在线服务,而商务活动中的消费者,包括现实或潜在的消费者,则可以其相应的消费者用户的身份在电商平台82中使用在线服务。实际商务活动中,同一个实体既可以商家用户的身份活动,也可以消费者用户的身份进行活动,对此应灵活变通理解。
用于部署电商平台82的基础设施主要包括后台架构和前端设备,后台架构通过服务集群运行各种在线服务,包括面向平台方的中间件或前端服务、面向消费者的服务、面向商家的服务等,来丰富和完善其服务功能;前端设备主要涵盖用户用来作为客户端接入电商平台82的终端设备,包括但不限于各种移动终端、个人计算机、销售点设备等。示例而言,商家用户可以通过其终端设备80来为其在线店铺录入商品信息,或者使用电商平台开放的接口生成其商品信息;消费者用户可以通过其终端设备81访问电商平台82所实现的在线店铺的网页,通过网页上提供的购物按键,触发购物流程,在购物流程中调用电商平台82所提供的各种在线服务,从而实现购物下单的目的。
在一些实施例中,电商平台82可以通过包括处理器和存储器的处理设施来实现,该处理设施存储一组指令,该指令在被执行时使得电商平台82执行本申请所涉及的电子商务和支持功能。处理设施可以是服务器、客户端、网络基础设施、移动计算平台、云计算平台、固定计算平台或其他计算平台的一部分,并且提供电商平台82的电子组件、商家设备、支付网关、应用开发者、营销渠道、运输提供商、客户设备、销售点设备等。
电商平台82可以实现为云计算服务、软件即服务(SaaS)、基础设施即服务(IaaS)、平台即服务(PaaS)、桌面即服务(DaaS)、托管软件即服务、移动后端即服务(MBaaS)、信息技术管理即服务(ITMaaS)等在线服务。在一些实施例中,电商平台82的各个功能部件可以被实现为适于在各种平台和操作系统上操作,例如,对于一个在线店铺来说,其管理员用户无论在iOS、Android、HomonyOS、还是网页等各种实施例中,都享有相同或类似的功能。
电商平台82可以为各个商家实现其相应的独立站,以运行其相应的在线店铺,为商家提供相应的商务管理引擎实例,供商家建立、维护、运行其在一个或多个独立站中的一个或多个在线店铺。商务管理引擎实例可以用于一个或多个在线店铺的内容管理、任务自动化和数据管理,可以通过接口或内建组件等方式配置在线店铺的各种具体业务流程以支持商务活动的实现。独立站是具有跨境服务功能的电商平台82的基础设施,商户可以基于独立站较为集中自主地维护其在线店铺。独立站通常具有商家专用的域名和存储空间,不同独立站之间具有相对独立性,电商平台82可以为海量的独立站提供标准化或个性化的技术支持,使得商家用户可以定制出自身相适应的商务管理引擎实例,并使用这个商务管理引擎实例来维护其拥有的一个或多个在线店铺。
在线店铺可以通过商家用户以管理员身份登录其商务管理引擎实例来实施后台配置和维护,在电商平台82的基础设施所提供的各种在线服务的支持下,商家用户可以其管理员身份对其在线店铺中的各种功能进行配置,对各种数据进行查阅等,例如,商家用户可以管理其在线店铺的各个方面,例如查看在线商店最近的活动、更新在线店铺产品目录、管理订单、最近访问活动、总订单活动等;商家用户还可以通过获取报告或度量来查看关于商业和对商家的在线商店的访问者的更详细的信息,例如显示商家的整体业务的销售摘要、活动销售营销渠道的特定销售和参与数据等。
电商平台82可以提供用于提供电子通信和营销的通信设施和相关联的商家接口,例如利用电子消息聚合设施来收集和分析商家、消费者、商家设备、客户设备、销售点设备等之间的通信交互,聚合和分析通信,例如用于增加提供产品销售的潜力等。例如,消费者可能有与产品有关的问题,这可能在消费者和商家(或代表商家的基于自动处理器的代理)之间产生对话,其中通信设施负责交互并向商家提供关于如何提高销售概率的分析。
一些实施例中,可以提供适合安装到终端设备的应用程序来服务于不同用户的访问需求,以便使各种用户能够在终端设备中,通过运行应用程序来访问电商平台82,例如电商平台82中的在线店铺的商家后台模块等,通过这些功能来实现商务活动的过程中,电商平台82可以将支持实现商务活动相关的各种功能实现为中间件或在线服务并开放相应的接口,然后将接口访问功能相对应的工具包植入到应用程序中来实现功能扩展和任务实现。商务管理引擎可以包括一系列基本功能,并通过API将这些功能暴露给在线服务和/或应用程序调用,在线服务和应用程序通过远程调用相对应的API而使用相应的功能。
在商务管理引擎实例的各个组件的支持下,电商平台82可以提供在线购物功能,使商家能够以灵活透明的方式与客户建立联系,消费者用户可以在线选购物品,创建商品订单,在商品订单中提供货物的送达地址,并完成商品订单的支付确认。然后,商家可以审查并完成或取消订单。商务管理引擎实例携带的审查组件可以实现商业流程的合规使用,以确保订单在实际履行之前适合履行。订单有时候也可能是欺诈性的,需要加以验证(例如身份证检查),有一种需要商家等待以确保收到资金的支付方法可以起到防患这种风险的作用,等等。订单风险可能由第三方通过订单风险API等提交的欺诈检测工具产生。在进行履行之前,商家可能需要获取支付信息或等待接收支付信息,以便将订单标记为已支付,至此商家才可以准备交付产品。诸如此类的情况都可进行相应的审查。审查流程可以由履行组件来实现。商家可以借助履行组件审查、调整工作,并触发相关的履行服务,例如:通过手动履行服务,当商家将产品挑选并包装在盒子中、购买运输标签并输入其跟踪号,或者仅将物品标记为已履行时使用;自定义履行服务,可以定义发送电子邮件进行通知;API履行服务,可以触发第三方应用程序在第三方创建履行记录;遗留履行服务,可以触发从商务管理引擎到第三方的自定义API调用;礼品卡履行服务。可以提供生成号码并激活礼品卡。商户可以使用订单打印机应用程序打印装运单。当物品被包装在盒子里并准备好运输、跟踪、交付、消费者收到验证等时,可以执行履行过程。
可以看出,电商平台通过客服机器人为消费者用户提供答疑,对于维持在线店铺的健康运营具有重要的作用,因而,优质的应答技术将有助于节省在线店铺乃至整个电商平台的资源开销,提升其商品交易总额,以及带来一系列良好的收益。
请参阅图2,根据本申请提供的一种用户提问应答方法,在其实施例中,包括如下步骤:
步骤S5100、基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;
电商平台中的在线店铺可以事先将由电商平台提供的客服支持系统配置为在线店铺的客户服务接口,当用户调用该客户服务接口时,进行相应的聊天界面,开始与客服支持系统实现的客服机器人聊天。基于聊天界面的对话通常是以一问一答的形式进行的,用户可以在聊天界面中输入语句表达某种意思,客服机器人可将用户输入的语句视为查询问句,而不管其所表达的实际内容是否包含疑问的意思,然后根据该查询问句进行对应作答,向聊天界面输出对应的答复文本。用户与客服机器人一来一回之间的一轮对话,便构成单次对话,相应的查询问句和答复文本便构成该次对话的对话问答文本。将每次对话答复文本都存储到客服支持系统中,便构成相应的历史聊天记录。
用户给出的查询问句,通常情况下,也视为用户提问。其中,用户已经输入等待客服机器人回复的查询问句,被视为用户最新提问。客服机器人需要针对用户最新提问提供对应的答复文本,该答复文本为实际应用到聊天界面的答复文本,故视为实用答复文本。
客服机器人可调用客服支持系统所提供的应答接口,由该应答接口可实现为根据用户最新提问确定相对应的实用答复文本,当然也包括如何根据用户最新提问确定实用答复文本的中间过程的实现。例如,本申请中,该中间过程将涉及对预设的大语言模型的两次调用,并且分别构造相应的提示文档,包括诱导提示文档和实用提示文档,其中,诱导提示文档用于指示大语言模型优化用户最新提问得到用户规范提问,以及生成对应的答复文本作为初步答复文本;实用提示文档则用于指示大语言模型根据用户规范提问和与初步答复文本语义相关的解答知识片段提供实用答复文本。
本申请的大语言模型(LLM),属于生成模型,指的是那些在大规模文本语料上训练、包含海量参数的语言模型,是一系列的人工智能模型,旨在理解和生成人类语言。它们在大量的文本数据上进行训练,可以执行广泛的任务,包括文本总结、翻译、情感分析等等。LLM的特点是规模庞大,可以包含数十亿的参数,帮助它们学习语言数据中的复杂模式。这些模型通常基于深度学习架构,如转化器(Transformer),这有助于它们在各种NLP(Natural Language Processing,自然语言处理)任务上取得令人印象深刻的表现。目前的大语言模型(如GPT和BERT)采用与小模型类似的Transformer架构和预训练目标(如Language Modeling),与小模型的主要区别在于增加模型大小、训练数据和计算资源。拿GPT来说,GPT其实出现了好几代,GPT-3有45TB的训练数据,数量庞大。
市场上各种成熟的大语言模型均可供本申请使用,典型的有如ChatGPT系列便可直接供本申请调用。应当理解,任何经事先训练而获得胜任本申请所需功能的大语言模型,均属于本申请对大语言模型所定义的范围。
大语言模型虽然具备强大的推理能力,但为了获得有效的答复文本,通常都需要为其提供有效的提示,在必要时还需要为其提供帮助其进行理解和推理所需的素材,本申请通过诱导提示文档和实用提示文档提供相应的素材和提示,以指导大语言模型正确工作以便驱动大语言模型输出有效的结果数据。
本申请的诱导提示文档,包含有历史聊天记录、用户最新提问,以及两项任务提示。其中:用户最新提问是指用户刚从聊天界面中输入且完成提交的查询问句。历史聊天记录是从当前用户和客服机器人聊天后形成的对话数据中提取的,属于在用户最新提问之前的多次对话的对话问答文本,在一些实施例中,历史聊天记录可以事先进行过滤,过滤掉与用户最新提问在主题和/或逻辑上不够相关的对话问答文本,以突出历史聊天记录与用户最新提问的语义相关性;在一些实施例中,历史聊天记录可以按聊天时间顺序排列。两项任务提示中,第一任务提示指示根据诱导提示文档中的历史聊天记录重新表述诱导提示文档中的用户最新提问得到语义完整自洽的用户规范提问,第二任务提示指示生成该用户规范提问相对应的初步答复文本。第一任务提示与第二任务提示均以自然语言表达即可,以下给出示例性的第一任务提示和第二任务提示的范例:
第一任务提示:请根据前文的历史聊天记录部分改写其在后一句的用户最新提问,补充省略的关键信息,使得改写后语义完整,任何人只需要阅读改写后的问题就可以完整、准确理解,不再需要历史聊天记录;
第二任务提示:根据历史聊天记录,结合常识,回答改写后的问题。
通过以上范例可以看出,由于已经在诱导提示文档中包含了历史聊天记录和用户最新提问作为大语言模型进行推理所依据的素材,所以,任务提示本身可以采用更简洁的文本进行描述,占用字符长度自然较少。
在一些实施例中,还可以在诱导提示文档中包含对大语言模型所输出的结果数据进行排版约束的规范性指示,按需实施即可。
在一些实施例中,可以适应本申请构造诱导提示文档所需,事先实现一个诱导提示模板,在其中规范各种素材和任务提示的格式,在需要基于历史聊天记录和用户最新提问构造诱导提示文档时,将相应的历史聊天记录和用户最新提问对应套入到诱导提示模板中,便可得到诱导提示文档。
在一些实施例中,考虑到大语言模型通常都存在对输入内容进行最大输入长度的约束,可以事先按照该最大输入长度控制用来构造诱导提示文档的历史聊天记录中的对话数据的数量,使得最终生成的诱导提示文档,其字符长度不超过大语言模型所约束的最大输入长度。这种情况下,虽然在实际上控制了历史聊天记录的字符长度,但由于历史聊天记录中包含有用户最新提问相关联的上下文,因而,仍然可以确保诱导提示文档有足够的素材来引导大语言模型执行相应的任务。
步骤S5200、调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;
准备好诱导提示文档后,便可对大语言模型进行调用。将诱导提示文档输入大语言模型,大语言模型便可根据自身习得的推理能力,对诱导提示文档进行理解和推理,根据其中的各个任务提示,生成对应的结果数据。根据本申请的诱导提示文档中所包含的两个任务提示可知,大语言模型在该两个任务提示的控制下,会对用户最新提问进行重新表述,使其语义完整自洽,从而得到相对应的用户规范提问,然后,再根据历史聊天记录和用户规范提问,生成相应的初步答复文本,因而,大语言模型最终将输出该用户规范提问和对应的初步答复文本。
大语言模型推理得到的用户规范提问,是根据历史聊天记录所提供的语义,对用户最新提问进行重写得到的。大语言模型可能对用户最新提问进行一种和多种方式的自然语言处理操作,但最终将保证所得到的用户规范提问语义完整,而且在逻辑上可自洽。例如,大语言模型可能对用户最新提问进行格式化处理,去除其中的冗余字符、无效字符等,或者,根据历史聊天记录提供的上下文语义对其中的指代信息进行指代消解,或者根据历史聊天记录中的上下文语义对其中省略的内容进行补全等任意一项或任意多项处理,由此得到的用户规范提问在语义上自然更为完整和自洽。
至此不难理解,本申请的诱导提示文档可用于控制大语言模型重写当前用户的用户最新提问,并且生成初步答复文本,而大语言模型推理所依据的素材则主要来源于当前用户的历史聊天记录以及大语言模型自身在训练过程中习得的常识性知识。尽管历史聊天记录并不是专用的客服指导文档,但由于在同一个会话期间,用户多轮对话之间常存在内容上的前后相关性,所以,大语言模型可以根据诱导提示文档中的历史聊天记录和自身习得的常识性知识,实现对用户最新提问的改写而得到用户规范提问,并且根据用户规范提问可以得到相应的初步答复文本,且使初步答复文本与用户最新提问和历史聊天记录之间都保持一定的语义相关性。
步骤S5300、根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;
初步答复文本是大语言模型根据历史聊天记录进行推理得到的,并不是依据专门提供的客服指导文档中的内容给出的,所以如果将其直接用于回复用户最新提问,其准确性可能偏低。但是,初步答复文本无疑已经从用户规范提问和历史聊天记录中承继了部分相关语义,因而,可以据此从预设的问答知识库中召回更为专业的解答知识片段,以便指导大语言模型利用所召回的解答知识片段生成该用户规范提问相对应的实用答复文本,用来答复用户最新提问。
本申请可以事先预备一个问答知识库,问答知识库中存储与在线店铺的商品和服务相关的各种解答知识片段,通常主要包含与订单的交易流程相关的各种解答知识片段,且事先借助预设的文本特征提取模型,对各个解答知识片段进行向量化表示,得到其相应的片段特征,将解答知识片段与其相应的片段特征关联存储在问答知识库中以便调用。
为了利用初步答复文本从问答知识库中召回语义相关的多个解答知识片段,同理可借助该文本特征提取模型对该初步答复文本进行向量化表示,得到相应的文本特征,然后,利用该文本特征与问答知识库中的各个解答知识片段的片段特征计算数据距离,将数据距离转换为语义相似度,然后,根据语义相似度筛选出其中语义高度相关的多个解答知识片段,实现匹配召回。不难理解,所召回的多个解答知识片段,是与初步答复文本语义相关的,自然也是与用户规范提问、用户最新提问语义相关的。这便实现了对问答知识库中的解答知识片段的查全和查准。
从问答知识库中召回的解答知识片段属于为用户规范提问提供相应语义的答复文本的素材,所以,可以将所召回的多个解答知识片段与已经在语义上完整自洽的用户规范提问相结合,构造成实用提示文档。实用提示文档可以用来驱动大语言模型根据多个解答知识片段生成用户规范提问相对应的答复文本,作为实用答复文本,用于应答原始的用户最新提问。
本申请的实用提示文档中,除包含根据初步答复文本召回的多个解答知识片段之外,还包括大语言模型生成的用户规范提问,除此之外,还可以添加任务提示,该任务提示可以用于指示大语言模型根据给定的多个解答知识片段生成给定的用户规范提问相对应的实用答复文本。在一些实施例中,实用提示文档还可以包括对大语言模型所输出的结果数据进行约束的格式规范,使其按照期望的格式输出相应的实用答复文本。而另外的一些实施例中,实用提示文档中的多个解答知识片段和用户规范提问可以按照预设的格式规范进行排版,例如,将多个解答知识片段前置,将用户规范提问后置,再在最后附加任务提示,由此使实用提示文档更具逻辑规范性,方便大语言模型进行高效推理。
同理,在一些实施例中,可以适应本申请构造实用提示文档所需,事先实现一个实用提示模板,在其中规范各种素材和任务提示的格式,在需要基于构造实用提示文档时,将相应的多个解答知识片段和用户规范提问对应套入到实用提示模板中,便可得到实用提示文档。
在一些实施例中,考虑到大语言模型通常都存在对输入内容进行最大输入长度的约束,可以事先按照该最大输入长度控制用来构造实用提示文档的解答知识片段的数量,使得最终生成的实用提示文档,其字符长度不超过大语言模型所约束的最大输入长度。这种情况下,虽然在实际上控制了多个解答知识片段的总体字符长度,但由于这些解答知识片段是根据初始答复文本得到的,与用户规范提问之间具有语义相关性,属于较为精准的素材,所以,仍然可以确保大语言模型据此推理出用户规范提问相应的实用答复文本。
步骤S5400、调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
确定出实用提示文档后,便可将实用提示文档再次输入大语言模型,大语言模型于是根据实用提示文档中的任务提示,以其中的多个解答知识片段为依据,为其中的用户规范提示进行推理,以推导出相应的答复文本作为实用答复文本。
大语言模型本身具有较强的自然语言推理能力,而所输入的各个解答知识片段又提供了丰富的解答知识,而且这些解答知识都是在语义上与用户规范提问直接或间接相关的,这样,只需根据当前用户的用户最新提问相对应的用户规范提问,与按照以上过程召回的多个解答知识片段,便可准确推理获得相应的实用答复文本。
可以看出,大语言模型在从当前用户提交用户最新提问到得到实用答复文本的过程中,虽然发生了两次调用,但每次调用都不需要针对每轮的对话数据提供独立对应的提示,而是提供更精简的提示即可,所以,在第一次调用时,历史聊天记录的数量可控,在第二次调用时,解答知识片段的数量也可控,也就是说,无论是诱导提示文档还是实用提示文档,其字符长度都可控,可以有效确保大语言模型针对每次提交的用户最新提问,都能基于当前用户与客服机器人之间的多轮对话的语义来提供对应的答复文本,使整个会话过程始终能够关联聊天上下文,真正起到智能多轮交互的效果。
至此,综合以上实施例可以知晓,本申请包含有如下有益效果:
首先,在当前用户与客服机器人进行多轮对话的环境中,先根据当前用户的用户最新提问和历史聊天记录构造出诱导提示文档,然后借助大语言模型,基于该诱导提示文档中的历史聊天记录对该用户最新提问进行重新表述,确保得到语义完整自洽的用户规范提问以及与该用户规范提问相对应的初步答复文本。在这个过程中,诱导提示文档由于有了历史聊天记录的帮助,无需提供冗长的提示,因此可以容纳更多轮历史对话相对应的聊天记录,具有极小的截断风险,从而可使大语言模型基于更为完整的聊天记录来确定用户规范提问和初步答复文本。
进而,本申请在初步答复文本的基础上进行语义匹配召回多个解答知识片段,虽然初步答复文本是大语言模型根据历史聊天记录生成的,并不是直接来源于解答知识片段,但是,历史聊天记录却是根据解答知识片段生成的,包含有部分解答知识片段的内容,而原始的用户最新提问与历史聊天记录之间又有一定的逻辑关联,所以,初步答复文本实际上更容易以更宽广的视角通过历史聊天记录来承继解答知识片段的语义,也就是说,大语言模型得出的初步答复文本与本申请所期望的实用答复文本之间,实际上更容易存在语义相关性,例如在领域或内容上一致等,因此,利用初步答复文本去实现对解答知识片段的召回,所召回的解答知识片段与原始的用户最新提问之间反而具有更小的语义鸿沟,且更容易全面涵盖用户最新提问所蕴含的语义。
此外,由于原始的用户最新提问在用来由大语言模型生成实用答复文本之前,事先由该大语言模型进行重新表述而转化为用户规范提问,这个用户规范提问在历史聊天记录的帮助下,可以借助大语言模型所具备的指代消解、省略补全等技术能力,使其语义更为完整,逻辑更为自洽,所以,当其与所召回的多个解答知识片段共同构造为实用提示文档再次输入大语言模型之后,便能得到更为准确的实用答复文本。其中,不管历史聊天记录中存在多少轮对话,实用提示文档中所引用的各个解答知识片段都能够综合反映与用户最新提问之间的语义相关性,所以其文档长度始终和单轮对话一样可控,可以有效解决多轮对话方案受大语言模型原生预设的最大输入长度限制的问题,而不会丢失历史对话上下文,从而确保客服机器人以更精准的实用答复文本应答用户最新提问。
在本申请的方法的任意实施例的基础上,请参阅图3,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档,包括:
步骤S5110、响应当前用户触发的问题提交事件,获取该问题提交事件相对应的用户最新提问以及该用户最新提问之前的历史聊天记录,所述历史聊天记录的字符长度小于预设的字符长度阈值;
在客服聊天界面的环境中,当前用户在输入框输入文字内容并按下发送控件后,便触发相应的问题提交事件,当前用户输入的文字内容便作为该用户最新提问,被包含到问题提交事件中,提交给客服机器人进行响应处理,以便由客户机器人返回相应的实用答复文本。
客服机器人接收到该问题提交事件后对其进行响应,具体可对问题提交事件进行解析,获得其中的用户最新提问,然后提交至预设的应答接口,由应答接口完成中间处理,以便最终得到实用答复文本。
应答接口首先读取该用户最新提问之交的历史聊天记录,历史聊天记录由用户多轮对话产生的多次对话问答文本构成,至于具体需要多少轮的对话问答文本,可以按照预设数量确定,或者受制于大语言模型的最大输入长度而确定,例如按照最大输入长度的50%作为预设的字符长度阈值采集多轮对话问答文本,使所采集的多轮对话问答文本的总字符长度不大于该字符长度阈值。
在一些实施例中,还可以事先或者在本步骤对这些历史聊天记录进行优选,例如根据历史聊天记录中各轮的对话问答文本与用户最新提问之间的主题相关性和/或逻辑相关性等,确定出其中与用户最新提问最为相关的若干个对话问答文本,去除最不相关的其他对话问答文本,由此可提升历史聊天记录与用户最新提问之间的语义匹配度。
步骤S5120、获取诱导提示模板,所述诱导提示模板包含有指示对待套入的历史聊天记录和用户最新提问进行排版的格式规范以及多个任务提示,其中,第一任务提示指示根据所套入的历史聊天记录重新表述所套入的用户最新提问得到语义完整自洽的用户规范提问,第二任务提示指示生成所述用户规范提问相对应的初步答复文本;
本申请预先设置有诱导提示模板,在该诱导提示模板中,事先定义了对待套入的历史聊天记录和用户最新提问进行排版的格式规范,并且附带有多个任务提示,多个任务提示中包含第一任务提示和第二任务提示,是分别对应生成用户规范提问和初步答复文本而设置的。
一个实施例中,诱导提示模板中的格式规范,可以是将历史聊天记录按照一问一答的次序,且按照聊天时实际发生的时间顺序,将历史聊天记录中的各轮对话问答文本进行有序排列,然后将用户最新提问追加其后,再在后续设置任务提示。必要时,诱导提示模板中,还可以包含对大语言模型所输出的结果数据进行规范的格式条件,可按需灵活设定。
步骤S5130、按照所述诱导提示模板的格式规范将所述历史聊天记录及所述用户最新提问套入所述诱导提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的诱导提示文档。
应答接口继而将步骤S5110中确定的历史聊天记录和用户最新提问套入诱导提示模板中,由此便在诱导提示模板的基础上派生出诱导提示文档,诱导提示文档除了植入了历史聊天记录和用户最新提示之外,还包含有任务提示及其他相关信息。
由于诱导提示文档的字符长度需要适配大语言模型的最大输入长度,所以,可以按照本申请前文的实施例所揭示,通过事先控制历史聊天记录的对话问答文本的数量进行控制,也可以在此步骤中进行调节,对时间较早的历史聊天记录进行适当截断,这样,使得整个诱导提示文档的字符长度小于大语言模型所约束的最大输入长度即可。
以上实施例中,通过事先实现一个诱导提示模板,可以在用户与客服机器人进行多轮对话的过程中,在每次用户提交其用户最新提问时,快速调用该诱导提示模板,将历史聊天记录和用户最新提问套入该诱导提示模板快速生成诱导提示文档,提高对诱导提示文档的生成效率,从而回速得到最终结果的处理速度。
在本申请的方法的任意实施例的基础上,请参阅图4,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档之前,或者,在前一实施例的步骤S5110获得历史聊天记录之后,可以对历史聊天记录进行过滤,其具体过程包括:
步骤S4100、确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的主题相关度;
当前用户与客服机器人聊天过程中产生的历史聊天记录,其包含有多轮的对话问答文本,而每一轮次的对话问答文本,所涉及的主题可能未必完全一致,同理,当前用户提交的用户最新提问,其所属的主题与各轮次的对话问答文本的主题的相关度也可能有所差异,在这种情况下,可以借助预设的主题分类模型来确定用户最新提问与各轮次的对话问答文本之间的主题相关度,以便量化用户最新提问与各轮次的对话问答文本之间的相关性。
一种实施例中,可以采用对应的训练样本对,训练出一个主题分类模型,使该主题分类模型能够根据给定的两个训练样本,提取出两个训练样本相对应的特征向量,再将该两个特征向量融合为同一综合特征向量,然后根据该综合特征向量预测其映射到相似和不相似两个类别相对应的分类概率,然后,将相似相对应的类别的分类概率作为两个训练样本之间的主题相关度。
另一实施例中,主题分类模型也可以沿用大语言模型来实施,基于大语言模型所具备的先天能力,只要将相应轮次的对话问答文本与用户最新提问提交给大语言模型并向其对应询问即可直接直到期望的主题相关度。
当使用该主题分类模型时,将历史聊天记录中每个单次的对话问答文本作为其一路输入,将该用户最新提问作为其另一路输入,由此便可确定出这两路输入相对应的主题相关度,用来衡量该次的对话问答文本与该用户最新提问之间的主题相关度。以此类推,将历史聊天记录中的各个单次的对话问答文本都陆续与该用户最新提问确定主题相关度即可。
步骤S4200、确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的逻辑相关度;
除了衡量各个单次的对话问答文本与用户最新提问之间的主题相关度,还可以进一步衡量两者之间的逻辑相关度。逻辑相关度主要是用来衡量用户最新提问与某次的对话问答文本之间在语意上是否具有相继性,所以,可以通过训练一个适于判定前后句逻辑关系的逻辑判定模型来实施。该逻辑判定模型以对话问答文本和用户最新提问拼接而成的文本信息为依据,首先提取该文本信息中深层语义特征,再通过分类器确定出映射到两者是否存在逻辑承继关系的两个类别得到相应的分类概率,将其中表征存在逻辑承继关系的类别相对应的分类概率,作为逻辑相关度即可。当然,该逻辑判定模型首先采用相应的训练样本实施分类训练获得。当需要确定各次的对话问答文本与当前用户的用户最新提问之间的逻辑相关度时,将每次的对话问答文本与该用户最新提问拼接后输入逻辑判定模型便可得到相应的逻辑相关度,以此类推,得到历史聊天记录中各次的对话问答文本相对应的逻辑相关度。
另一实施例中,逻辑判定模型也可以沿用大语言模型来实施,基于大语言模型所具备的先天能力,只要将相应轮次的对话问答文本与用户最新提问提交给大语言模型并向其对应询问即可直接直到期望的逻辑相关度。
步骤S4300、根据所述主题相关度和逻辑相关度确定每个单次的对话问答文本与所述用户最新提问之间的整体相关度;
为方便从总体上把握历史聊天记录中各次对话问答文本与用户最新提问之间的整体相关度,可以将各次对话问答文本的主题相关度与逻辑相关度进行加权融合或求均值,将所得结果作为整体相关度。整体相关度从主题相关和逻辑相关两个方面联合评分各次对话问答文本与用户最新提问之间的相关程度,更有助于对历史聊天记录进行过滤。
步骤S4400、过滤掉所述历史聊天记录中整体相关度低于预设阈值的对话问答文本,保留其他对话问答文本。
最后,不难理解,如果某次对话问答文本的整体相关度较低,则表明其中包含用户最新提问相对应的语义信息越少,两者在语义上的匹配性越低,据此,可借助一个预设阈值来决策如何过滤历史聊天记录中的对话问答文本。具体而言,当历史聊天记录中某次的对话问答文本的整体相关度低于该预设阈值时,便可将其从历史聊天记录中删除,后续不作为生成诱导提示文档的素材使用,而对于整体相关度不低于该预设阈值的其他轮次的对话问答文本,则可予以保留,以便套入诱导提示模板生成诱导提示文档。
根据以上实施例可知,在将历史聊天记录套入诱导提示模板以生成诱导提示文档之前,可以对历史聊天记录中各个轮次的对话问答文本,根据其与用户最新提问之间在主题和逻辑两方面的相关度,确定出整体相关度,然后利用整体相关度,可筛选出相对优质的对话问答文本,舍弃一些与用户最新提问语义不甚相关的对话问答文本,使最终所得的历史聊天记录中的语义与用户最新提问的语义更加容易对应,既有助于减小诱导提示文档的体积,还有助于降低大语言模型的运行开销,提高其响应速度,更为高效。
在本申请的方法的任意实施例的基础上,根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,包括:
步骤S5310、将所述初步答复文本的向量表示与预设的问答知识库中的各个解答知识片段的向量表示计算语义相似度;
如前所述,本申请可以预备有问答知识库,且其中预存储有大量的解答知识片段,以及各个解答知识片段的向量表示。据此,可以基于余弦相似度、欧氏距离、皮迩逊相关系数、杰卡德系数等数据距离算法,计算出每个解答知识片段的特征向量与初步答复文本的特征向量之间的语义相似度,以便衡量该解答知识片段与该初步答复文本之间的相似程度。
步骤S5320、根据所述各个解答知识片段对应获得的语义相似度,受制于所述大语言模型的最大输入长度筛选召回所述语义相似度满足预设条件的多个解答知识片段。
在问答知识库中各个解答知识片段都获取其相对应的初步答复文本的语义相似度的基础上,便可以按照构造诱导提示文档所需,根据语义相似度对应的预设条件,以及在受制于大语言模型的最大输入长度的条件下,从问答知识库中筛选出多个解答知识片段,用来构造诱导提示文档。
为此,可以大于预设语义阈值作为相应的解答知识片段可以被召回的预设条件,当一个解答知识片段的语义相似度达到该预设语义阈值时,便视为满足预设条件,可作为候选片段,以备用于构造诱导提示文档。
与此同时,考虑到诱导提示文档的整体字符长度不应超过大语言模型所设定的最大输入长度,再从已经确定的各个候选片段中,选取适量且语义相似度相对较大的部分候选片段,用来实际构造诱导提示文档,当然,所选取的部分候选片段,其套入诱导提示模板得到诱导提示文档之后,应确保诱导提示文档的总体字符长度不超过大语言模型预设的最大输入长度,否则,应适当减少个别已经选取的解答知识片段。
经过以上过程的筛选,在初始答复文本已经承继了历史聊天记录的语义的情况下,可以根据相应的语义,在问答知识库中实现对其中的解答知识片段的查全和查准,尽可以最大范围地搜索出与该初始答复文本语义相关的多个解答知识片段,再适应大语言模型的入参约束条件所需,选取相对最优的部分解答知识片段用来生成诱导提示文档,使诱导提示文档的素材质量最优化,可以进一步提升生成实用提示文档的精准度。
在本申请的方法的任意实施例的基础上,结合所述用户规范提问,构造出实用提示文档,包括:
步骤S5330、获取实用提示模板,所述实用提示模板包含有指示对待套入的多个解答知识片段和用户规范提问进行排版的格式规范及任务提示,所述任务提示指示根据所述多个解答知识片段生成所述用户规范提问相对应的实用答复文本;
如前所述,本申请可以预先构造一个实用提示模板,用来快速生成实用提示文档。适应指导大语言模型生成相应的实用答复文本所需,实用提示模板中,包含有指示对待套入的多个解答知识片段和用户规范提问进行排版的格式规范及任务提示,这个任务提示所起的作用,在于指示大语言模型根据所述多个解答知识片段生成所述用户规范提问相对应的实用答复文本。
在一些实施例中,实用提示模板中的格式规范,可以将各个解答知识片段罗列在前,而将用户规范提问罗列在后,并且,在最后添加相应的任务提示。示例性的任务提示可以表述为:请根据以上提供的各个片段生成最后一句所指的用户规范提问相对应的答复文本。可见,这里的任务提示仍然可以采用简洁的自然语句表述,占用尺度较小,指示清晰。
步骤S5340、按照所述实用提示模板的格式规范将所述多个解答知识片段和所述用户规范提问套入所述实用提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的实用提示文档。
最后,按照实用提示模板的格式规范,将所召回的各个解答知识片段、用户规范提问对应套入相应位置,即可在实用提示模板的基础上派生出实用提示文档。当然,与诱导提示模板中控制历史聊天记录中的对话问答文本同理,在本实施例中,也可以受制于大语言模型的最大输入长度,对所召回的各个解答知识片段进行优选,选取其中语义相似度较高的有限数量的解答知识片段,并且确保据此生成的实用提示文档的总体字符长度,不超过大语言模型所规定的最大输入长度。当超过这个最大输入长度时,适量删除其中语义相似度最低的一个或数个解答知识片段即可。
根据以上实施例可知,通过事先实现一个实用提示模板,有助于通过套用模板快速生成相应的实用提示文档,可以提升获得实用答复文本的效率。
在本申请的方法的任意实施例的基础上,获得实用答复文本应答所述用户最新提问之后,包括:
步骤S5500、将所述用户最新提问与其相对应的实用答复文本存储追加至所述历史聊天记录中;
本申请以上各实施例,主要以当前用户单次提出用户最新提问的情况进行说明,但不难理解,在当前用户与客服机器人持续进行的多轮对话中,每一轮均可应用本申请以上实施例的处理过程来实施。
所以,在本实施例中,当应答接口通过大语言模型获得与用户最新提问相对应的实用答复文本之后,由客服机器人将该实用答复文本输出至当前用户所处的聊天界面中,使当前用户获得相应的答复,并且,在后台,将当前用户的用户最新提问与该实用答复文本,作为一问一答相对应的单轮对话问答文本,存储到后台的历史聊天记录中,以备下一轮对话调用,以持续支持多轮对话,使每一轮对话都有最新近的对话问答文本用来构造诱导提示文档。
步骤S5600、响应当前用户再次触发的问题提交事件,回到所述基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档的步骤继续迭代。
当用户获得上一轮对话的实用答复文本之后,可以继续输入新的查询问句作为新的用户最新提问,由此,便回到本申请的步骤S5100继续循环迭代,从而为新的用户最新提问继续确定其对应的实用答复文本,以此类推,便可实现对多轮对话均应用本申请的方法来确定相应的实用答复文本,提升客服机器人回复用户最新提问的精准度。
根据以上实施例可知,通过为用户与客服机器人的每轮次的对话都应用本申请的方法,可以确保在多轮对话过程中都能够为用户的查询问句确定有效的实用答复文本,并且,可使实用答复文本始终能够关联于在先的多轮对话而确定,充分参考整个聊天会话的聊天上下文,提升客服机器人在应答过程中的拟人化程度,使双方的沟通更为自然顺畅和准确。
在本申请的方法的任意实施例的基础上,请参阅图5,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档之前,包括:
步骤S3100、获取在线店铺的客服指导文档,将所述客服指导文档分割为多个知识片段,每个知识片段用于说明所述在线店铺的交易流程相关的至少一个知识点;
本实施例中,可以适应电商平台的在线店铺的特点,借助在线店铺事先定制的客服指导文档,来提升问答知识库的知识性,从而提升大语言模型根据问答知识库中的解答知识片段生成的实用答复文本的有效性。
客服指导文档可以是各种文本存储格式,其中的内容,通常是用来说明在线店铺的交易流程相关的各个知识点。例如商品发货环节中,关于发货时间、物流单位等的知识点,又如,商品售前环节中,与商品价格、功能等相关的知识点等,再如,商品售后环节中,与商品维修相关的知识点等。按照人们通常表达事物的习惯,各个知识点通常独立成段进行描述,因而,客服指导文档一般是结构化的。
据此,可以对客服指导文档进行解析得到其结构化信息,然后,根据该结构化信息所表征的文档结构,将客服指导文档分割为多个知识片段,使得每个知识片段都可以相对完整的描述其中的一个知识点,同时,也可以允许每个知识片段也涉及到其他关联的知识点。这样,便可使各个知识点相对独立。
步骤S3200、对每个知识片段进行格式化处理,将每个知识片段转换为解答知识片段;
由于客服指导文档通常是用户定制的文档,各个知识片段可能存在某些格式上的不足,例如存在冗余字符、错别字、病句等,可能影响推理质量,因此,可以按照预设格式,对各个知识片段进行格式化处理,例如去除冗余字符、修正错别字或者修正病句等。
一种实施例,也可以调用大语言模型来完成各个知识片段的格式化处理工作,只要将相应的知识片段给任务提示输入至该大语言模型,便可得到其推理修正后的文本,该文本便可作为相应的解答知识片段使用。
步骤S3300、将所述解答知识片段转换为向量表示,与该解答知识片段关联存储到问答知识库中。
最后,适应构造问答知识库所需,结合前文对问答知识库的示例性说明可知,借助相应的文本特征提取模型,可将从客服指导文档生成的各个解答知识片段都转换为相应的向量表示,获得特征向量,然后将各个解答知识片段与其相应的特征向量关联存储到问答知识库中,该问答知识库即可服务于生成实用答复文本所需,为大语言模型提供与初始答复文本相匹配的解答知识片段,帮助客服机器人生成准确的答复文本。
根据以上实施例可见,对于在线店铺而言,只要按照自然语言习惯编写好客服指导文档,将与其在线店铺的交易流程相关的各个环节的知识点表述到其中,便可借助本实施例将其转换存储到问答知识库中,然后,在用户使用客服机器人进行多轮对话的过程中,便可通过该问答知识库中的各个相关解答知识片段,为用户最新提问生成对应的实用答复文本,提升客服支持系统的智能化程度。
请参阅图6,根据本申请的一个方面提供的一种用户提问应答装置,包括诱导构造模块5100、诱导输出模块5200、实用构造模块5300,以及实用输出模块5400,其中,所述诱导构造模块5100,设置为基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;所述诱导输出模块5200,设置为调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;所述实用构造模块5300,设置为根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;所述实用输出模块5400,设置为调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
在本申请的装置的任意实施例的基础上,所述诱导构造模块5100,包括:响应执行单元,设置为响应当前用户触发的问题提交事件,获取该问题提交事件相对应的用户最新提问以及该用户最新提问之前的历史聊天记录,所述历史聊天记录的字符长度小于预设的字符长度阈值;诱导模板调用单元,设置为获取诱导提示模板,所述诱导提示模板包含有指示对待套入的历史聊天记录和用户最新提问进行排版的格式规范以及多个任务提示,其中,第一任务提示指示根据所套入的历史聊天记录重新表述所套入的用户最新提问得到语义完整自洽的用户规范提问,第二任务提示指示生成所述用户规范提问相对应的初步答复文本;诱导模板套用单元,设置为按照所述诱导提示模板的格式规范将所述历史聊天记录及所述用户最新提问套入所述诱导提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的诱导提示文档。
在本申请的装置的任意实施例的基础上,本申请的用户提问应答装置,包括:主题量化模块,设置为确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的主题相关度;逻辑量化模块,设置为确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的逻辑相关度;综合评价模块,设置为根据所述主题相关度和逻辑相关度确定每个单次的对话问答文本与所述用户最新提问之间的整体相关度;记录优化模块,设置为过滤掉所述历史聊天记录中整体相关度低于预设阈值的对话问答文本,保留其他对话问答文本。
在本申请的装置的任意实施例的基础上,所述实用构造模块5300,包括:相似运算单元,设置为将所述初步答复文本的向量表示与预设的问答知识库中的各个解答知识片段的向量表示计算语义相似度;筛选召回单元,设置为根据所述各个解答知识片段对应获得的语义相似度,受制于所述大语言模型的最大输入长度筛选召回所述语义相似度满足预设条件的多个解答知识片段。
在本申请的装置的任意实施例的基础上,所述实用构造模块5300,包括:实用模板调用模块,设置为获取实用提示模板,所述实用提示模板包含有指示对待套入的多个解答知识片段和用户规范提问进行排版的格式规范及任务提示,所述任务提示指示根据所述多个解答知识片段生成所述用户规范提问相对应的实用答复文本;实用模板调用模块,设置为按照所述实用提示模板的格式规范将所述多个解答知识片段和所述用户规范提问套入所述实用提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的实用提示文档。
在本申请的装置的任意实施例的基础上,本申请的用户提问应答装置,包括:数据追加模块,设置为将所述用户最新提问与其相对应的实用答复文本存储追加至所述历史聊天记录中;响应迭代模块,设置为响应当前用户再次触发的问题提交事件,回到所述基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档的步骤继续迭代。
在本申请的装置的任意实施例的基础上,本申请的用户提问应答装置,包括:文档获取模块,设置为获取在线店铺的客服指导文档,将所述客服指导文档分割为多个知识片段,每个知识片段用于说明所述在线店铺的交易流程相关的至少一个知识点;处理转换模块,设置为对每个知识片段进行格式化处理,将每个知识片段转换为解答知识片段;数据存储模块,设置为将所述解答知识片段转换为向量表示,与该解答知识片段关联存储到问答知识库中。
本申请的另一实施例还提供一种用户提问应答设备。如图7所示,用户提问应答设备的内部结构示意图。该用户提问应答设备包括通过系统总线连接的处理器、计算机可读存储介质、存储器和网络接口。其中,该用户提问应答设备的计算机可读的非易失性可读存储介质,存储有操作系统、数据库和计算机可读指令,数据库中可存储有信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种用户提问应答方法。
该用户提问应答设备的处理器用于提供计算和控制能力,支撑整个用户提问应答设备的运行。该用户提问应答设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行本申请的用户提问应答方法。该用户提问应答设备的网络接口用于与终端连接通信。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的用户提问应答设备的限定,具体的用户提问应答设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行图6中的各个模块的具体功能,存储器存储有执行上述模块或子模块所需的程序代码和各类数据。网络接口用于实现用户终端或服务器之间的数据传输。本实施方式中的非易失性可读存储介质中存储有本申请的用户提问应答装置中执行所有模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有模块的功能。
本申请还提供一种存储有计算机可读指令的非易失性可读存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行本申请任一实施例的用户提问应答方法的步骤。
本申请还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被一个或多个处理器执行时实现本申请任一实施例所述方法的步骤。
本领域普通技术人员可以理解,实现本申请上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等计算机可读存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请能适应大语言模型的特点,利用多轮对话中的历史聊天记录与原始的用户最新提问之间的语义相关性,更为精准深入地命中与用户最新提问语义相关的解答知识片段,帮助大语言模型高效生成准确的实用答复文本以完成客服应答。
Claims (10)
1.一种用户提问应答方法,其特征在于,包括:
基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;
调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;
根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;
调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
2.根据权利要求1所述的用户提问应答方法,其特征在于,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档,包括:
响应当前用户触发的问题提交事件,获取该问题提交事件相对应的用户最新提问以及该用户最新提问之前的历史聊天记录,所述历史聊天记录的字符长度小于预设的字符长度阈值;
获取诱导提示模板,所述诱导提示模板包含有指示对待套入的历史聊天记录和用户最新提问进行排版的格式规范以及多个任务提示,其中,第一任务提示指示根据所套入的历史聊天记录重新表述所套入的用户最新提问得到语义完整自洽的用户规范提问,第二任务提示指示生成所述用户规范提问相对应的初步答复文本;
按照所述诱导提示模板的格式规范将所述历史聊天记录及所述用户最新提问套入所述诱导提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的诱导提示文档。
3.根据权利要求1所述的用户提问应答方法,其特征在于,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档之前,包括:
确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的主题相关度;
确定所述历史聊天记录中所包含的每个单次的对话问答文本与当前用户的用户最新提问之间的逻辑相关度;
根据所述主题相关度和逻辑相关度确定每个单次的对话问答文本与所述用户最新提问之间的整体相关度;
过滤掉所述历史聊天记录中整体相关度低于预设阈值的对话问答文本,保留其他对话问答文本。
4.根据权利要求1所述的用户提问应答方法,其特征在于,根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,包括:
将所述初步答复文本的向量表示与预设的问答知识库中的各个解答知识片段的向量表示计算语义相似度;
根据所述各个解答知识片段对应获得的语义相似度,受制于所述大语言模型的最大输入长度筛选召回所述语义相似度满足预设条件的多个解答知识片段。
5.根据权利要求1所述的用户提问应答方法,其特征在于,结合所述用户规范提问,构造出实用提示文档,包括:
获取实用提示模板,所述实用提示模板包含有指示对待套入的多个解答知识片段和用户规范提问进行排版的格式规范及任务提示,所述任务提示指示根据所述多个解答知识片段生成所述用户规范提问相对应的实用答复文本;
按照所述实用提示模板的格式规范将所述多个解答知识片段和所述用户规范提问套入所述实用提示模板,得到字符长度小于所述大语言模型所约束的最大输入长度的实用提示文档。
6.根据权利要求1至5中任意一项所述的用户提问应答方法,其特征在于,获得实用答复文本应答所述用户最新提问之后,包括:
将所述用户最新提问与其相对应的实用答复文本存储追加至所述历史聊天记录中;
响应当前用户再次触发的问题提交事件,回到所述基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档的步骤继续迭代。
7.根据权利要求1至5中任意一项所述的用户提问应答方法,其特征在于,基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档之前,包括:
获取在线店铺的客服指导文档,将所述客服指导文档分割为多个知识片段,每个知识片段用于说明所述在线店铺的交易流程相关的至少一个知识点;
对每个知识片段进行格式化处理,将每个知识片段转换为解答知识片段;
将所述解答知识片段转换为向量表示,与该解答知识片段关联存储到问答知识库中。
8.一种用户提问应答装置,其特征在于,包括:
诱导构造模块,设置为基于当前用户与客服机器人之间的历史聊天记录和所述当前用户的用户最新提问,构造诱导提示文档;
诱导输出模块,设置为调用大语言模型,输入所述诱导提示文档,获得重新表述了所述用户最新提问使其语义完整自洽而得到的用户规范提问,以及与该用户规范提问相对应的初步答复文本;
实用构造模块,设置为根据所述初步答复文本召回与该初步答复文本语义相匹配的多个解答知识片段,结合所述用户规范提问,构造出实用提示文档;
实用输出模块,设置为调用大语言模型,输入所述实用提示文档,获得实用答复文本应答所述用户最新提问。
9.一种用户提问应答设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至7中任意一项所述的方法的步骤。
10.一种非易失性可读存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至7中任意一项所述的方法所实现的计算机程序,所述计算机程序被计算机调用运行时,执行相应的方法所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311280817.4A CN117251547A (zh) | 2023-09-28 | 2023-09-28 | 用户提问应答方法及其装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311280817.4A CN117251547A (zh) | 2023-09-28 | 2023-09-28 | 用户提问应答方法及其装置、设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117251547A true CN117251547A (zh) | 2023-12-19 |
Family
ID=89134684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311280817.4A Pending CN117251547A (zh) | 2023-09-28 | 2023-09-28 | 用户提问应答方法及其装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117251547A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117573848A (zh) * | 2024-01-16 | 2024-02-20 | 北京数慧时空信息技术有限公司 | 对话方法、装置、电子设备及介质 |
CN117591662A (zh) * | 2024-01-19 | 2024-02-23 | 川投信息产业集团有限公司 | 基于人工智能的数字化企业服务数据挖掘方法及系统 |
CN118152521A (zh) * | 2024-05-08 | 2024-06-07 | 云南师范大学 | 一种基于文本改写的检索增强生成方法 |
-
2023
- 2023-09-28 CN CN202311280817.4A patent/CN117251547A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117573848A (zh) * | 2024-01-16 | 2024-02-20 | 北京数慧时空信息技术有限公司 | 对话方法、装置、电子设备及介质 |
CN117573848B (zh) * | 2024-01-16 | 2024-04-02 | 北京数慧时空信息技术有限公司 | 对话方法、装置、电子设备及介质 |
CN117591662A (zh) * | 2024-01-19 | 2024-02-23 | 川投信息产业集团有限公司 | 基于人工智能的数字化企业服务数据挖掘方法及系统 |
CN117591662B (zh) * | 2024-01-19 | 2024-03-29 | 川投信息产业集团有限公司 | 基于人工智能的数字化企业服务数据挖掘方法及系统 |
CN118152521A (zh) * | 2024-05-08 | 2024-06-07 | 云南师范大学 | 一种基于文本改写的检索增强生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117251547A (zh) | 用户提问应答方法及其装置、设备、介质 | |
US20210374749A1 (en) | User profiling based on transaction data associated with a user | |
CN108399169A (zh) | 基于问答系统的对话处理方法、装置和系统及移动设备 | |
CN112131358A (zh) | 场景流程结构及所应用的智能客服系统 | |
CN112559865A (zh) | 信息处理系统、计算机可读存储介质及电子设备 | |
CN110399473B (zh) | 为用户问题确定答案的方法和装置 | |
CN112434501A (zh) | 工单智能生成的方法、装置、电子设备及介质 | |
CN111612284B (zh) | 数据的处理方法、装置及设备 | |
CN110798567A (zh) | 短信分类显示方法及装置、存储介质、电子设备 | |
US11954138B2 (en) | Summary generation guided by pre-defined queries | |
CN117057873A (zh) | 商品描述内容生成方法及其装置、设备、介质 | |
CN111782793A (zh) | 智能客服处理方法和系统及设备 | |
CN112906361A (zh) | 文本数据的标注方法和装置、电子设备和存储介质 | |
WO2020242383A9 (en) | Conversational dialogue system and method | |
CN113553431B (zh) | 用户标签提取方法、装置、设备及介质 | |
CN111126071A (zh) | 提问文本数据的确定方法、装置和客服群的数据处理方法 | |
CN117743516A (zh) | 语言模型训练方法及其装置、设备、介质 | |
CN117911134A (zh) | 错误信息分析方法、装置以及计算机设备 | |
CN114722164A (zh) | 一种智能评论回复方法及装置 | |
CN109120509B (zh) | 一种信息收集的方法及装置 | |
CN112883183B (zh) | 构建多分类模型的方法、智能客服方法和相关装置及系统 | |
US11356398B2 (en) | Lens-focused channel presentation | |
CN114401346A (zh) | 基于人工智能的应答方法、装置、设备及介质 | |
CN112862327A (zh) | 一种服务标签生成方法、装置及介质 | |
CN118626619A (zh) | 电商客服应答方法及其装置、设备、介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |