一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对话内容的处理方法、装置和电子设备与流程

2022-02-20 07:16:30 来源:中国专利 TAG:


1.本公开涉及数据处理领域,尤其涉及社交产品技术领域,具体涉及一种对话内容的处理方法、装置和电子设备。


背景技术:

2.目前,用户在基于社交产品进行交流过程中,社交产品发布方通常需要对用户的对话内容中的不文明用语进行检测,以防止用户通过社交产品发布不文明用语,其中,所述不文明用语包括涉黄用语、涉恐用语、涉暴用语等。现有技术中,在对不文明用语进行检测时,通常采用关键词检测的方式进行排查。


技术实现要素:

3.本公开提供了一种对话内容的处理方法、装置和电子设备。
4.根据本公开的第一方面,提供了一种对话内容的处理方法,包括:
5.获取第一用户发送的初始对话内容,所述初始对话内容为所述第一用户向第二用户待发送的初始对话内容;
6.基于所述初始对话内容在预设数据库中进行查询,得到目标对话内容,其中,所述预设数据库包括多条候选对话内容,所述目标对话内容为所述预设数据库中,与所述初始对话内容的语义匹配的所述候选对话内容;
7.以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。
8.根据本公开的第二方面,提供了一种对话内容的处理装置,包括:
9.获取模块,用于获取第一用户发送的初始对话内容,所述初始对话内容为所述第一用户向第二用户待发送的初始对话内容;
10.查询模块,用于基于所述初始对话内容在预设数据库中进行查询,得到目标对话内容,其中,所述预设数据库包括多条候选对话内容,所述目标对话内容为所述预设数据库中,与所述初始对话内容的语义匹配的所述候选对话内容;
11.发送模块,用于以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。
12.根据本公开的第三方面,提供了一种电子设备,包括:
13.至少一个处理器;以及
14.与所述至少一个处理器通信连接的存储器;其中,
15.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面中所述的方法。
16.根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据第一方面中所述的方法。
17.根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面中所述的方法。
18.本公开实施例中,通过获取第一用户向第二用户待发送的初始对话内容,并在预设数据库中查询到与所述初始对话内容的语义匹配的所述目标对话内容,然后,以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。这样,可以使得不同用户之间通过预设数据库中的候选对话内容进行对话,从而可以避免用户在基于社交产品进行对话的过程中出现不文明用语的问题。
19.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
20.附图用于更好地理解本方案,不构成对本公开的限定。其中:
21.图1是本公开实施例提供的一种对话内容的处理方法的流程图之一;
22.图2是本公开实施例提供的一种对话内容的处理方法的流程图之二;
23.图3是本公开实施例提供的一种对话内容的处理方法的流程图之三;
24.图4是本公开实施例提供的一种对话内容的处理装置的结构示意图;
25.图5是本公开实施例提供用于实现对话内容的处理方法的电子设备的框图。
具体实施方式
26.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
27.请参见图1,为本公开实施例提供的一种对话内容的处理方法的流程图,所述方法包括以下步骤:
28.步骤s101、获取第一用户发送的初始对话内容,所述初始对话内容为所述第一用户向第二用户待发送的初始对话内容;
29.步骤s102、基于所述初始对话内容在预设数据库中进行查询,得到目标对话内容,其中,所述预设数据库包括多条候选对话内容,所述目标对话内容为所述预设数据库中,与所述初始对话内容的语义匹配的所述候选对话内容;
30.步骤s103、以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。
31.本公开实施例所提供的对话内容的处理方法可以应用于各种具有社交功能的软件的云端服务器。相应地,所述初始对话内容可以是第一用户基于所述云端服务器对应的软件发送的对话内容。其中,所述具有社交功能的软件可以是各种社交软件,或者,游戏软件中的互动对话框。
32.可以理解的是,由于上述初始对话内容为第一用户输入的内容,因此,所述初始对话内容中可能存在不文明用语。基于此,所述云端服务器在获取到所述初始对话内容时,并不会直接将所述初始对话内容发送至第二用户,而是在预设数据库中查询与所述初始对话内容的语义匹配的候选对话内容,也即查询得到所述目标对话内容,然后,以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。其中,所述目标对话内容可以为与所述初始对话内容的语义相同或相近的候选对话内容,且所述目标对话内容可以是预先经过审
核的、不包含不文明用语的候选对话内容。这样,既可以满足不同用户之间基于社交产品进行对话的需求,还可以避免在对话过程中出现不文明用语的问题。
33.上述预设数据库可以是预先构建的数据库,所述预设数据库中可以预先存储大量经过审核的日常用语,以满足用户之间的对话需求,其中,所述经过审核的日常用语可以作为所述候选对话内容。可以理解的是,所述候选对话内容为不包括不文明用语的对话内容。
34.上述第二用户可以是指特定的某一个用户,也可以是指一个群组中的所有用户。具体而言,当所述第二用户为特定的某一个用户时,所述以所述第一用户为发送方,向所述第二用户发送所述目标对话内容可以是指:以所述第一用户为发送方,将所述目标对话内容显示于所述第一用户与所述第二用户之间的私聊对话框中。相应地,当所述第二用户为目标群组中的所有用户时,所述以所述第一用户为发送方,向所述第二用户发送所述目标对话内容可以是指:以所述第一用户为发送方,将所述目标对话内容显示于所述目标群组的群聊对话框中。
35.上述初始对话内容可以是第一用户基于所述软件的对话框,以文字形式或语音形式输入对话内容。相应地,当所述初始对话内容为文字形式的内容时,所述目标对话内容也可以为文字形式的内容。当所述初始对话内容为语音形式的内容时,所述目标对话内容也可以为语音形式的内容。
36.该实施方式中,通过获取第一用户向第二用户待发送的初始对话内容,并在预设数据库中查询到与所述初始对话内容的语义匹配的所述目标对话内容,然后,以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。这样,可以使得不同用户之间通过预设数据库中的候选对话内容进行对话,从而可以避免用户在基于社交产品进行对话的过程中出现不文明用语的问题。
37.相对于现有技术中采用关键词检测的方式进行排查而言,由于采用关键词检测的方式需要预先构建一个不文明用语的关键词库,当用户输入的对话内容包括该关键词库中的关键词时,确定为不文明用语。然而,由于所构建的关键词库基本不可能包括现有的所有不文明用语的关键词,且随着时间的推移,不断有新兴词汇被创造,因此,基于关键词匹配的方式,可能由于预先未维护对应的不文明关键词,而导致检测结果错误的问题,进而导致用户在交流过程中出现不文明用语的问题。而采用本公开的方法,由于不同用户之间通过预设数据库中的候选对话内容进行对话,从而可以完全避免用户在基于社交产品进行对话的过程中出现不文明用语的问题。
38.此外,通过采用本公开实施例提供的对话内容的处理方法,有利于提高互联网社交的文明程度。且由于现有的很多具有社交功能的程序产品的用户通常为未成年人,因此,通过将本公开实施例提供的对话内容的处理方法应用于各种具有社交功能的程序产品,还有利于避免因在社交场景中出现不文明用语而导致的危害未成年人身心健康的问题。
39.可选地,所述基于所述初始对话内容在预设数据库中进行查询,得到目标对话内容,包括:
40.将所述初始对话内容与所述预设数据库中的每条所述候选对话内容进行文字匹配;
41.在基于所述文字匹配,匹配到第一对话内容的情况下,将所述第一对话内容确定为所述目标对话内容,其中,所述初始对话内容包括所述第一对话内容中的全部文字。
42.其中,上述初始对话内容包括所述第一对话内容中的全部文字可以是指:所述初始对话内容包括所述第一对话内容中的全部文字及语序。可以理解的是,所述初始对话内容可以与所述第一对话内容完全相同,此外,所述初始对话内容还可以包括除所述第一对话内容之外的其他对话内容。例如,所述初始对话内容可以是“我要用冲撞打对方”,而所述第一对话内容可以是“冲撞”。
43.在本公开一个实施例中,所述预设数据库可以包括如下四个候选对话内容:[冲撞,火焰拳,冰冻拳,树叶拳],当所述初始对话内容为“我要用冲撞打对方”时,可以查询到目标对话内容为“冲撞”,此时,可以以所述第一用户为发送方,向所述第二用户发送“冲撞”。相应地,当所述初始对话内容为“胡彦祖”时,由于所述初始对话内容并不包括预设数据库中的任意一条候选对话内容,因此,可以确定基于文字匹配无法查询到所述目标对话内容。
[0044]
该实施方式中,通过基于所述初始对话内容,以文字匹配的方式,在所述预设数据库中查询第一对话内容,当查询到所述第一对话内容时,由于所述初始对话内容包括所述第一对话内容中的全部文字,因此,可以认为所述初始对话内容的语义与所述第一对话内容的语义匹配,此时,可以将所述第一对话内容作为所述目标对话内容进行输出,从而实现所述目标对话内容的查询过程。
[0045]
可选地,所述将所述初始对话内容与所述预设数据库中的每条所述候选对话内容进行文字匹配之后,所述方法还包括:
[0046]
在基于所述文字匹配,未匹配到所述第一对话内容的情况下,获取所述初始对话内容的第一拼音文本;
[0047]
基于第一拼音文本在所述预设数据库中进行拼音匹配,得到所述目标对话内容。
[0048]
具体地,由于基于文字匹配无法查询到所述目标对话内容的原因可能是:所述初始对话内容中存在错别字,例如,用户基于语音输入所述初始对话内容时,云端服务器可能需要先将语音转换为文字,该转换过程中,可能使得转换后得到的内容中存在错别字。此外,用户在以文字形式输入所述初始对话内容时,也可能出现输入的文字中包括错别字的情形。当所述初始对话中包括错别字时,可能导致基于文字匹配,无法查询到目标对话内容的问题。
[0049]
因此,为缓解因初始对话内容中存在错别字而导致基于文字匹配无法查询到所述目标对话内容的问题。当基于所述文字匹配无法查询到所述目标对话内容时,可以进一步获取所述初始对话内容的拼音文本,然后,进一步基于所述拼音文本对所述目标对话内容进行模糊查询。
[0050]
具体而言,由于在将语音转为文字的过程中出现错别字的类型通常为:将待转换的文字转换为读音相同的错别字,在此情况下,二者的拼音文本相同。此外,在用户手动输入文字的过程中,也有可能输入读音相同的错别字,在此情况下,二者的拼音文本也相同。即在此情况下,包含错别字的文本与不包含错别字的文本的拼音文本相同,基于此,本公开实施例中,通过获取所述初始对话内容的第一拼音文本,然后,基于所述第一拼音文本进行模糊查询,以获取所述目标对话内容,从而可以缓解因初始对话内容中存在读音相同的错别字,而导致的基于文字匹配无法查询到所述目标对话内容的问题。
[0051]
上述初始对话内容的第一拼音文本即所述初始对话内容的拼音表达形式,例如,
所述初始对话内容为“胡彦祖”时,所对应的第一拼音文本为[huyanu]。
[0052]
该实施方式中,通过将所述初始对话内容转换为第一拼音文本,然后,基于所述第一拼音文本进行模糊查询,从而可以缓解因初始对话内容中存在读音相同的错别字,而导致的基于文字匹配无法查询到所述目标对话内容的问题。
[0053]
可选地,所述基于第一拼音文本在所述预设数据库中进行拼音匹配,得到所述目标对话内容,包括:
[0054]
获取所述预设数据库中,每条所述候选对话内容的第二拼音文本,得到与所述多条候选对话内容一一对应的多条第二拼音文本;
[0055]
分别计算所述第一拼音文本与所述多条第二拼音文本中每条所述第二拼音文本之间的相似度,其中,所述第一拼音文本与目标拼音文本之间的相似度为:目标字段的文本长度与所述目标拼音文本的文本长度之间的比值,所述目标字段为所述第一拼音文本与所述目标拼音文本之间的公共字段,所述目标拼音文本为所述多条第二拼音文本中的任意第二拼音文本;
[0056]
在所述预设数据库中包括第二对话内容的情况下,将所述第二对话内容确定为所述目标对话内容,所述第二对话内容为:所述多条第二拼音文本中,与所述第一拼音文本之间的相似度大于第一阈值的第二拼音文本对应的候选对话内容。
[0057]
具体地,在基于第一拼音文本在所述预设数据库中进行拼音匹配之前,可以先将所述预设数据库中,每条所述候选对话内容转换为第二拼音文本。例如,当所述候选数据库中包括如下四条候选对话内容时:[冲撞,火焰拳,冰冻拳,树叶拳],转换之后,得到的与所述多条候选对话内容一一对应的多条第二拼音文本为:[chongzhuang,huoyanquan,bingdongquan,shuyequan]。此时,由于所述初始对话内容与每条候选对话内容均为拼音文本,因此,可以计算所述第一拼音文本与每条第二拼音文本之间的相似度,当第一拼音文本与第二拼音文本之间的相似度越高,则二者的语义可能越接近。如此,可以预先设置一个阈值判断条件,当第一拼音文本与某个第二拼音文本之间的相似度超过该阈值时,确定二者的语义匹配,此时,可以将该第二拼音文本对应的候选对话内容确定为所述目标对话内容。
[0058]
上述相似度可以基于第一拼音文本与第二拼音文本之间的公共字段的长度,在所述第二拼音文本的总长度中的占比进行计算。例如,可以采用如下公式进行计算:
[0059][0060]
其中,所述s为目标拼音文本,所述q为第一拼音文本,所述lcs(s,q)为所述目标拼音文本与所述第一拼音文本之间的公共字段的文本长度,所述len(s)为目标拼音文本的文本长度。
[0061]
上述,公共字段在所述第一拼音文本和所述第二拼音文本中均不要求为连续的字段,但所述公共字段中每个字符出现的顺序在第一拼音文本与第二拼音文本中必须相同,例如,huyanzu与chongzhuang的公共字段为huan。又例如,huyanzu与zchongzhuang的公共字段同样为huan。上述第一阈值的取值可以是0-1之间的取值,具体可以根据实际情况进行选取,在此不做限定。
[0062]
例如,在本公开一个实施例中,所述第一阈值可以为0.5,所述第一拼音文本为huyanzu,所述与所述多条候选对话内容一一对应的多条第二拼音文本为:[chongzhuang,
huoyanquan,bingdongquan,shuyequan]。此时,所述第一拼音文本与第二拼音文本chongzhuang之间的公共字段为“huan”,即所述公共字段的文本长度为4,所述第二拼音文本的文本长度为11,因此,所述相似度为4/11=0.36,由于相似度0.36小于第一阈值0.5,因此,可以确定所述第二拼音文本chongzhuang对应的候选对话内容并非第二对话内容。
[0063]
相应地,所述第一拼音文本与第二拼音文本huoyanquan之间的公共字段为“huyanu”即所述公共字段的文本长度为6,所述第二拼音文本的文本长度为10,因此,所述相似度为6/10=0.6,由于相似度0.6大于第一阈值0.5,因此,可以将所述第二拼音文本huoyanquan对应的候选对话内容“火焰拳”确定为所述第二对话内容。
[0064]
同理,基于上述方法可以计算得到:所述第一拼音文本与第二拼音文本bingdongquan之间的相似度为0.25。所述第一拼音文本与第二拼音文本shuyequan之间的相似度为0.55。
[0065]
可见,经过计算所述第一拼音文本与第二拼音文本huoyanquan之间的相似度,以及,所述第一拼音文本与第二拼音文本shuyequan之间的相似度均大于0.5,在此情况下,可以从所述第二拼音文本huoyanquan与第二拼音文本shuyequan中任取一个第二拼音文本对应的候选对话内容作为所述第二对话内容。此外,由于所述第一拼音文本与第二拼音文本huoyanquan之间的相似度大于所述第一拼音文本与第二拼音文本shuyequan之间的相似度,因此,也可以将二者中的较大者对应的候选对话内容确定为所述第二对话内容,即将所述第二拼音文本huoyanquan对应的候选对话内容确定为所述第二对话内容。
[0066]
该实施方式中,通过计算拼音文本之间的相似度,由于拼音文本之间的相似度越高,则二者的语义可能越接近。如此,可以预先设置一个阈值判断条件,当第一拼音文本与某个第二拼音文本之间的相似度超过该阈值时,确定二者的语义匹配,此时,可以将该第二拼音文本对应的候选对话内容确定为所述目标对话内容。从而实现基于拼音匹配,查询到所述目标对话内容的过程。
[0067]
可选地,所述分别计算所述第一拼音文本与所述多条第二拼音文本中每条所述第二拼音文本之间的相似度之后,所述方法还包括:
[0068]
在所述预设数据库中不包括所述第二对话内容的情况下,获取所述初始对话内容的第一文本向量;
[0069]
基于所述第一文本向量在所述预设数据库中进行向量匹配,得到所述目标对话内容。
[0070]
由于现有技术中存在大量将字词转换为词向量的词向量转换模型,例如,现有的各种统计语言模型、神经网络概率语言模型、深度学习模型等,在经过大量文本语料进行训练之后,均能够将文本分词转换为对应的词向量。本公开对词向量转换模型的训练过程不作限制。因此,本公开实施例中,可以先对初始对话内容进行分词处理,得到至少一个分词,然后基于现有的词向量转换模型将所述至少一个分词转换为至少一个词向量,其中,一个分词对应一个词向量,然后,基于所述至少一个词向量即可得到所述初始对话内容的第一文本向量。
[0071]
该实施方式中,在基于上述文字匹配和拼音匹配均无法确定所述目标对话内容的情况下,可以进一步将所述初始对话内容转换为文本向量形式。由于两个文本之间的语义越接近,则二者之间的文本向量也越接近,因此,可以通过计算初始对话内容与每个候选对
话内容之间的文本向量的接近程度,以在所述预设数据库中查询得到与所述初始对话内容的语义匹配的目标对话内容。
[0072]
可选地,所述基于所述第一文本向量在所述预设数据库中进行向量匹配,得到所述目标对话内容,包括:
[0073]
获取所述预设数据库中,每条所述候选对话内容的第二文本向量,得到与所述多条候选对话内容一一对应的多条第二文本向量;
[0074]
分别计算所述第一文本向量与所述多条第二文本向量中每条所述第二文本向量之间的余弦相似度;
[0075]
将目标文本向量对应的候选对话内容确定为所述目标对话内容,其中,所述目标文本向量为所述多条第二文本向量中,与所述第一文本向量之间的余弦相似度最大的第二文本向量。
[0076]
具体地,在基于所述第一文本向量在所述预设数据库中进行向量匹配之前,可以按照上述方法将所述预设数据库中的每条候选对话内容转换为文本向量形式,即可以分别对每条候选对话内容进行分词处理之后,基于词向量转换模型将分词转换为词向量,然后,基于转换之后得到的词向量得到每条候选对话内容的第二文本向量。
[0077]
由于两个文本之间的语义越接近,则二者之间的文本向量也越接近,例如,“下雨”的词向量为(0.5,0.5),“下雪”的词向量为(0.6,0.6)。因此,可以通过计算文本向量之间的相似度,以确定文本之间的语义相似度。具体可以通过计算第一文本向量与每个第二文本向量之间的余弦相似度,以确定初始对话内容与每条候选对话内容之间的语义接近程度。所述余弦相似度的计算公式为:
[0078][0079]
其中,所述cosθ为第一文本向量与目标文本向量之间的余弦相似度,所述a为第一文本向量,所述b为目标文本向量,所述a
·
b为所述第一文本向量与目标文本向量之间的点积,所述||a||为所述第一文本向量的模长,所述||b||为所述目标文本向量的模长。
[0080]
在本公开一个实施例中,若所述预设数据集中包括的候选对话内容为[吃番茄,吃蛋糕],上述初始对话内容为“喂西红柿”。此时,基于上述文字匹配无法匹配得到所述第一对话内容。而基于上述拼音匹配,所述“吃番茄”与“喂西红柿”之间的相似度为0.333,所述“吃蛋糕”与所述“喂西红柿”之间的相似度为0.333,二者的相似度均小于第一阈值0.5,可见,基于拼音匹配也无法匹配得到所述第二对话内容。基于此,可以进一步通过上述向量匹配的方式,在所述预设数据集中确定所述目标对话内容,其具体过程如下:
[0081]
先进行分词,对两个候选对话内容的分词结果为[吃/番茄,吃/蛋糕],对所述初始对话内容的分词结果为“喂/西红柿”。
[0082]
经过词向量转换模型(也可以调用词向量接口),得到,“吃”的词向量为(0.3,0),“番茄”的词向量为(0.3,0.5),“蛋糕”的词向量为(0.6,0.2),“喂”的词向量为(0.32,0.04),“西红柿”的词向量为(0.32,0.48)。其中,由于“番茄”和“西红柿”词义几乎一样,因此他们的词向量十分接近。这也是词向量本身的特点。
[0083]
如此,可以计算得到:候选对话内容“吃番茄”的第二文本向量为(0.3 0.3,0 0.5)=(0.6,0.5);
[0084]
候选对话内容“吃蛋糕”的第二文本向量为(0.3 0.6,0 0.2)=(0.9.0.2);
[0085]
初始对话内容“喂西红柿”的第一文本向量为(0.32 0.32,0.04 0.48)=(0.64,0.52);
[0086]
然后,分别计算第一文本向量与每个第二文本向量之间的的余弦相似度:
[0087]
第一文本向量与第二文本向量“吃番茄”的余弦相似度为:
[0088][0089]
第一文本向量与第二文本向量“吃蛋糕”的余弦相似度为:
[0090][0091]
可见,第一文本向量与第二文本向量“吃番茄”之间的余弦相似度更大,因此,可以将第二文本向量“吃番茄”对应的候选对话内容“吃番茄”确定为所述目标对话内容。
[0092]
该实施方式中,通过计算文本向量之间的余弦相似度,由于文本向量之间的余弦相似度越高,则二者的语义可能越接近。因此,可以分别计算所述第一文本向量与每个第二文本向量之间的余弦相似度,然后,将所述预设数据库中,与第一文本向量之间的余弦相似度最高的第二文本向量对应的候选对话内容确定为所述目标对话内容,从而实现基于向量匹配,查询到所述目标对话内容的过程。
[0093]
可选地,所述多条候选对话内容包括第一候选对话内容,所述第一候选对话内容包括文本字段和属性字段,所述以所述第一用户为发送方,向所述第二用户发送所述目标对话内容,包括:
[0094]
在所述目标对话内容为所述第一候选对话内容的情况下,获取所述第一用户的目标属性信息;
[0095]
将所述目标属性信息替换所述目标对话内容中的属性字段,得到第一目标对话内容;
[0096]
以所述第一用户为发送方,向所述第二用户发送所述第一目标对话内容。
[0097]
具体地,由于上述预设数据库可以包括大量日常用语,因此,所述预设数据库中的候选对话内容基本可以覆盖用户聊天的需求。但是,在某些特定场景下,由于初始对话内容中可能包括一些特定的名称,例如,用户名称或者战队名称,而这些特定名称是由用户自行命名的名称,由于这些特定名称可能并非日常用语或常见的名词,因此,所述预设数据库可能无法覆盖全部用户自定义的特定名称。
[0098]
上述目标属性信息为与所述第一候选对话内容的属性字段形同的属性信息,例如,当所述第一候选对话内容的属性字段为用户的名称属性时,所述目标属性信息为第一用户的名称属性。当所述第一候选对话内容的属性字段为用户所属战队的战队名称属性时,所述目标属性信息为第一用户的所属战队的战队名称属性。
[0099]
基于此,本公开实施例中,可以在所述预设数据库中存储一些可扩展的候选对话内容,即所述第一候选对话内容。例如,所述第一候选对话内容可以是:“我叫{user_name},快来加我好友吧”或者“快来加入{team_name}战队吧,来了有惊喜哟。”等。其中,所述“我叫,快来加我好友吧”为所述第一候选对话内容的文本字段,所述{user_name}为所述第一候选对话内容的属性字段,在基于所述初始对话内容在预设数据库中进行查询的过程中,
仅匹配所述第一候选对话内容的文本字段,而不匹配所述第一候选对话内容的属性字段。
[0100]
例如,在本公开一个实施例中,所述预设数据库中包括“我叫{user_name},快来加我好友吧”,且所述初始对话内容为“我叫aaa,快来加我好友吧”,所述第一用户的用户名称为“aaa”。由于所述初始对话内容中包括“我叫,快来加我好友吧”,即所述初始对话内容中包括所述第一候选对话内容的文本字段的全部文字,因此,可以将所述“我叫{user_name},快来加我好友吧”确定为所述第一对话内容。又由于所述“我叫{user_name},快来加我好友吧”为第一候选对话内容,因此,可以获取所述第一用户的用户名称“aaa”,然后,利用“aaa”替换所述{user_name},从而得到“我叫aaa,快来加我好友吧”,并将“我叫aaa,快来加我好友吧”作为第一目标对话内容进行输出。可见,本公开实施例通过在预设数据库中存储可扩展的候选对话内容,从而可以提高最终输出的第一目标对话内容与初始对话内容之间的语义接近程度。
[0101]
可以理解的是,上述用户名称或战队名称在用户进行命名的阶段,通常需要经过人工审核,即所述用户名称和战队名称通常不会包括不文明用语,因此,在本公开实施例中,可以直接获取所述用户名称或战队名称,并直接替换第一候选对话内容的属性字段进行输出,而无需进一步审核所述用户名称或战队名称。
[0102]
该实施方式中,通过在预设数据库中存储可扩展的候选对话内容,从而可以提高最终输出的第一目标对话内容与初始对话内容之间的语义接近程度。
[0103]
可选地,所述获取第一用户发送的初始对话内容,包括:
[0104]
接收所述第一用户发送的对话内容;
[0105]
在所述对话内容为音频内容的情况下,将所述对话内容转换为文本内容,得到所述初始对话内容;
[0106]
在所述对话内容为文本内容的情况下,将所述对话内容确定为所述初始对话内容。
[0107]
在本公开一个实施例中,所述初始对话内容为文本内容,但所述第一用户发送实际发送的对话内容可以是文本形式,也可以是语音形式。当所述第一用户发送的为对话内容为语音形式的对话内容时,可以采用现有的语音转文字模型将所述对话内容转换为文本对话内容,然后,将转换得到的文本对话内容确定为所述初始对话内容。相应地,当所述第一用户发送的为文本内容的情况下,可以直接将所述对话内容确定为所述初始对话内容。
[0108]
该实施方式中,通过获取所述第一用户输入的对话内容对应的文本形式的对话内容,从而方便后续基于初始对话内容采用文字匹配、拼音匹配、向量匹配等方式在预设数据库中进行查询得到目标对话内容。
[0109]
请参见图2,为本公开一个实施例提供的一种对话内容的处理方法的流程图,所述方法具体包括以下步骤:获取第一用户发送的初始对话内容,所述初始对话内容为所述第一用户向第二用户待发送的初始对话内容;将所述初始对话内容与所述预设数据库中的每条所述候选对话内容进行文字匹配;在基于所述文字匹配,匹配到第一对话内容的情况下,将所述第一对话内容确定为所述目标对话内容;在基于所述文字匹配,未匹配到所述第一对话内容的情况下,获取所述初始对话内容的第一拼音文本;基于第一拼音文本在所述预设数据库中进行拼音匹配,得到所述目标对话内容;在基于所述拼音匹配,匹配到第二对话内容的情况下,将所述第二对话内容确定为所述目标对话内容;在基于所述拼音匹配,未匹
配到第二对话内容的情况下,获取所述初始对话内容的第一文本向量;基于所述第一文本向量在所述预设数据库中进行向量匹配,得到所述目标对话内容,输出所述目标对话内容。
[0110]
本实施例的具体实现过程与上述实施例类似,且能实现相同的有益效果,为避免重复,在此不再予以赘述。
[0111]
请参见图3,为本公开一个实施例提供的一种对话内容的处理方法的流程图,本实施例提供的对话内容的处理方法与上述图2所示的对话内容的处理方法的区别在于:在查询得到所述目标对话内容之后,进一步判断目标对话内容是否为第一候选对话内容,在所述目标对话内容为第一候选对话内容的情况下,获取所述第一用户的目标属性信息,将所述目标属性信息替换所述目标对话内容中的属性字段,得到第一目标对话内容;以所述第一用户为发送方,向所述第二用户发送所述第一目标对话内容。在所述目标对话内容不为第一候选对话内容的情况下,以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。
[0112]
本实施例的具体实现过程与上述实施例类似,且能实现相同的有益效果,为避免重复,在此不再予以赘述。
[0113]
请参见图4,为本公开实施例提供的一种对话内容的处理装置的结构示意图,所述装置包括:
[0114]
获取模块,用于获取第一用户发送的初始对话内容,所述初始对话内容为所述第一用户向第二用户待发送的初始对话内容;
[0115]
查询模块,用于基于所述初始对话内容在预设数据库中进行查询,得到目标对话内容,其中,所述预设数据库包括多条候选对话内容,所述目标对话内容为所述预设数据库中,与所述初始对话内容的语义匹配的所述候选对话内容;
[0116]
发送模块,用于以所述第一用户为发送方,向所述第二用户发送所述目标对话内容。
[0117]
可选地,所述查询模块,包括:
[0118]
第一匹配子模块,用于将所述初始对话内容与所述预设数据库中的每条所述候选对话内容进行文字匹配;
[0119]
第一确定子模块,用于在基于所述文字匹配,匹配到第一对话内容的情况下,将所述第一对话内容确定为所述目标对话内容,其中,所述初始对话内容包括所述第一对话内容中的全部文字。
[0120]
可选地,所述查询模块,还包括:
[0121]
第一获取子模块,用于在基于所述文字匹配,未匹配到所述第一对话内容的情况下,获取所述初始对话内容的第一拼音文本;
[0122]
第二匹配子模块,用于基于第一拼音文本在所述预设数据库中进行拼音匹配,得到所述目标对话内容。
[0123]
可选地,所述第二匹配子模块,包括:
[0124]
第一获取单元,用于获取所述预设数据库中,每条所述候选对话内容的第二拼音文本,得到与所述多条候选对话内容一一对应的多条第二拼音文本;
[0125]
第一计算单元,用于分别计算所述第一拼音文本与所述多条第二拼音文本中每条所述第二拼音文本之间的相似度,其中,所述第一拼音文本与目标拼音文本之间的相似度
为:目标字段的文本长度与所述目标拼音文本的文本长度之间的比值,所述目标字段为所述第一拼音文本与所述目标拼音文本之间的公共字段,所述目标拼音文本为所述多条第二拼音文本中的任意第二拼音文本;
[0126]
第一确定单元,用于在所述预设数据库中包括第二对话内容的情况下,将所述第二对话内容确定为所述目标对话内容,所述第二对话内容为:所述多条第二拼音文本中,与所述第一拼音文本之间的相似度大于第一阈值的第二拼音文本对应的候选对话内容。
[0127]
可选地,所述查询模块,还包括:
[0128]
第二获取子模块,用于在所述预设数据库中不包括所述第二对话内容的情况下,获取所述初始对话内容的第一文本向量;
[0129]
第三匹配子模块,用于基于所述第一文本向量在所述预设数据库中进行向量匹配,得到所述目标对话内容。
[0130]
可选地,所述第三匹配子模块,包括:
[0131]
第二获取单元,用于获取所述预设数据库中,每条所述候选对话内容的第二文本向量,得到与所述多条候选对话内容一一对应的多条第二文本向量;
[0132]
第二计算单元,用于分别计算所述第一文本向量与所述多条第二文本向量中每条所述第二文本向量之间的余弦相似度;
[0133]
第二确定单元,用于将目标文本向量对应的候选对话内容确定为所述目标对话内容,其中,所述目标文本向量为所述多条第二文本向量中,与所述第一文本向量之间的余弦相似度最大的第二文本向量。
[0134]
可选地,所述多条候选对话内容包括第一候选对话内容,所述第一候选对话内容包括文本字段和属性字段,所述发送模块,包括:
[0135]
第三获取子模块,用户在所述目标对话内容为所述第一候选对话内容的情况下,获取所述第一用户的目标属性信息;
[0136]
替换子模块,用于将所述目标属性信息替换所述目标对话内容中的属性字段,得到第一目标对话内容;
[0137]
发送子模块,用于以所述第一用户为发送方,向所述第二用户发送所述第一目标对话内容。
[0138]
可选地,所述获取模块,包括:
[0139]
接收子模块,用于接收所述第一用户发送的对话内容;
[0140]
转换子模块,用于在所述对话内容为音频内容的情况下,将所述对话内容转换为文本内容,得到所述初始对话内容;
[0141]
第二确定子模块,用于在所述对话内容为文本内容的情况下,将所述对话内容确定为所述初始对话内容。
[0142]
需要说明地,本实施例提供的对话内容的处理装置能够实现上述对话内容的处理方法实施例的全部技术方案,因此至少能够实现上述全部技术效果,此处不再赘述。
[0143]
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
[0144]
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0145]
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0146]
如图5所示,电子设备500包括计算单元501,其可以根据存储在只读存储器(rom)502中的计算机程序或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序,来执行各种适当的动作和处理。在ram 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
[0147]
电子设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0148]
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如对话内容的处理方法。例如,在一些实施例中,对话内容的处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到ram 503并由计算单元501执行时,执行上文描述的对话内容的处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行对话内容的处理方法。
[0149]
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0150]
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0151]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供
指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0152]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0153]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
[0154]
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0155]
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0156]
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献