掌桥专利:专业的专利平台
掌桥专利
首页

智能问答方法、装置、电子设备及可读存储介质

文献发布时间:2023-06-19 11:57:35


智能问答方法、装置、电子设备及可读存储介质

技术领域

本发明涉及数据处理领域,尤其涉及一种智能问答方法、装置、电子设备及可读存储介质。

背景技术

随着科技的发展,智能问答在人们生活中的应用越来越广泛,例如,在商场、医院门口的智能问答机器人可对人们提出的路线、服务等相关问题进行解答。

当前的问答系统通常是将用户提出的问题与问题库中的标准问题进行相似度匹配,将相似度最高的标准问题对应的答案作为目标答案反馈给用户,这种方式给出的答案的准确度不高。因此,亟需一种智能问答方法,以提高答案的准确度。

发明内容

鉴于以上内容,有必要提供一种智能问答方法,旨在提高答案的准确度。

本发明提供的智能问答方法,包括:

接收用户基于客户端发出的待处理问题;

对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;

基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图;

基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句;

利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

可选的,所述实体类别包括时间实体类别、指标实体类别、人名实体类别、地名实体类别及机构名实体类别,所述对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称包括:

基于时间实体匹配规则判断所述待处理问题中是否存在时间实体类别,若是,则从所述待处理问题中获取所述时间实体类别对应的时间实体名称;

基于指标同义词库及正则表达式判断所述待处理问题中是否存在指标实体类别,若是,则从所述待处理问题中获取所述指标实体类别对应的指标实体名称;

基于实体识别模型识别所述待处理问题中的人名实体类别及人名实体名称、地名实体类别及地名实体名称、机构名实体类别及机构名实体名称。

可选的,所述基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图包括:

根据实体类别与意图词语的映射关系确定所述待处理问题对应的多个意图词语,将所述多个意图词语的集合作为第一意图词语集合;

从所述第一意图词语集合中筛选关键意图词语得到第二意图词语集合;

判断所述待处理问题中是否含有关键词实体,当判断所述待处理问题中含有关键词实体时,将含有的关键词实体添加至所述第二意图词语集合中,得到第三意图词语集合;

基于所述第三意图词语集合确定所述待处理问题对应的目标意图。

可选的,所述基于所述第三意图词语集合确定所述待处理问题对应的目标意图包括:

按照实体类别对应的实体名称在所述待处理问题中的位置顺序拼接所述第三意图词语集合中的意图词语,得到意图词语序列;

判断意图库中是否含有与所述意图词语序列匹配的实例;

当判断所述意图库中含有与所述意图词语序列匹配的实例时,将所述意图库中匹配的实例对应的意图作为所述待处理问题对应的目标意图。

可选的,在所述判断意图库中是否含有与所述意图词语序列匹配的实例之后,所述方法还包括:

若判断所述意图库中没有与所述意图词语序列匹配的实例,则将所述意图词语序列输入意图识别模型,识别得到所述待处理问题对应的目标意图。

可选的,所述基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句包括:

从模板库中获取所述目标意图对应的查询模板,判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段;

若是,从所述实体名称中获取每个查询维度对应的查询字段,将所述查询字段填入所述查询模板中,得到所述待处理问题对应的查询语句。

可选的,在所述判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段之后,所述方法还包括:

若所述实体名称中没有某一指定查询维度对应的查询字段,则从所述查询模板中删除所述指定查询维度对应的语句。

为了解决上述问题,本发明还提供一种智能问答装置,所述装置包括:

问题接收模块,用于接收用户基于客户端发出的待处理问题;

实体识别模块,用于对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;

意图识别模块,用于基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图;

语句生成模块,用于基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句;

答案查询模块,用于利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的智能问答程序,所述智能问答程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述智能问答方法。

为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有智能问答程序,所述智能问答程序可被一个或者多个处理器执行,以实现上述智能问答方法。

相较现有技术,本发明首先对待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;接着,基于实体类别对待处理问题执行意图识别处理,得到待处理问题对应的目标意图;然后,基于目标意图确定待处理问题对应的数据源,基于实体名称确定所述待处理问题对应的查询字段,根据查询字段生成查询语句;最后,利用查询语句从数据源中查询待处理问题对应的目标答案。本方案通过意图识别结果精准匹配待处理问题对应的数据源,通过实体识别结果准确确定待处理问题对应的查询字段,并生成查询语句,利用查询语句从数据源从查询待处理问题对应的目标答案,使得目标答案更为准确。因此,本发明提高了答案的准确度。

附图说明

图1为本发明一实施例提供的智能问答方法的流程示意图;

图2为本发明一实施例提供的智能问答装置的模块示意图;

图3为本发明一实施例提供的实现智能问答方法的电子设备的结构示意图;

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

本发明提供一种智能问答方法。参照图1所示,为本发明一实施例提供的智能问答方法的流程示意图。该方法可以由一个电子设备执行,该电子设备可以由软件和/或硬件实现。

本实施例中,智能问答方法包括:

S1、接收用户基于客户端发出的待处理问题;

S2、对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称。

本实施例中,所述客户端可以是用户的智能设备,例如,通过用户手机的问答系统交互界面输入待处理问题。电子设备(即本案的执行主体)接收到待处理问题后,对其执行实体识别处理,识别所述待处理问题中的时间、指标、人名、地名、机构名等实体信息。

所述实体类别包括时间实体类别、指标实体类别、人名实体类别、地名实体类别及机构名实体类别,所述对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称包括:

A11、基于时间实体匹配规则判断所述待处理问题中是否存在时间实体类别,若是,则从所述待处理问题中获取所述时间实体类别对应的时间实体名称;

本实施例中,预先设置了时间实体对应的匹配规则,例如,设置了“过去半年”、“前三个月”、“去年”等类似格式的词语为时间实体,通过该匹配规则可确定待处理问题中是否存在时间实体类别,若是,可获取时间实体类别对应的时间实体名称。

A12、基于指标同义词库及正则表达式判断所述待处理问题中是否存在指标实体类别,若是,则从所述待处理问题中获取所述指标实体类别对应的指标实体名称;

本实施例预先定义了指标同义词库,在指标同义词库中,每个指标名称对应多种表达形式,例如,指标名称“资产负债率”包括“负债率”、“负债信息”、“资产负债情况”等表达形式。

通过正则表达式可对待处理问题中的指标实体类别及指标实体名称进行识别,例如,正则表达式“负债率?”可以匹配到含有“负债率”的字段。

A13、基于实体识别模型识别所述待处理问题中的人名实体类别及人名实体名称、地名实体类别及地名实体名称、机构名实体类别及机构名实体名称。

本实施例中,所述实体识别模型是BERT模型。

融合时间、指标、人名、地名及机构名实体即可得到待处理问题对应的实体识别结果。

若待处理问题为“帮我查看一下,过去半年A集团的负债率是怎样的”,则识别出的实体包括:时间实体“过去半年”(其中,时间实体为实体类别,过去半年为时间实体名称),机构实体“A集团”,指标实体“资产负债率”。

S3、基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图。

若识别得到的实体名称及实体类别较多,则根据实体识别结果并不能快速、准确的确定待处理问题的真实意图,此时需要对实体识别结果执行筛选及简化处理。

所述基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图包括:

B11、根据实体类别与意图词语的映射关系确定所述待处理问题对应的多个意图词语,将所述多个意图词语的集合作为第一意图词语集合;

本实施例预先为实体类别设置了对应的意图词语,例如,实体类别“注册地址”、“机构类型”属于“机构基本信息”,“营业收入”、“营业利润率”属于“机构财务信息”。由于机构指标类别可以分为机构基本信息、机构财务信息、机构评级信息,本实施例设置了以上三种机构指标类别都可以通过意图词语“机构”来涵盖查询机构相关信息的问题,以对机构相关指标做进一步的抽象,即映射关系中实体类别“注册地址”、“机构类型”、““营业收入”及“营业利润率”对应的意图词语都是“机构”,而其它实体类别对应的意图词语即为实体类别本身,例如,实体类别“时间”、“机构名称”对应的意图词语分别为“时间”、“机构名称”。

对于待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”,其实体类别包括时间、机构名称、指标名称,则第一意图词语集合为{时间、机构名称、机构}。

B12、从所述第一意图词语集合中筛选关键意图词语得到第二意图词语集合;

本实施例中预先配置了关键意图词语词库,例如,配置了机构名称、机构为关键意图词语,时间为非关键意图词语,则第二意图词语集合为{机构名称,机构}。

B13、判断所述待处理问题中是否含有关键词实体,当判断所述待处理问题中含有关键词实体时,将含有的关键词实体添加至所述第二意图词语集合中,得到第三意图词语集合;

为了对意图进行更好的识别,本实施例自定义了无数据库数据对应的关键词实体,例如:持仓、担保人等,并通过正则表达式匹配待处理问题中是否含有关键词实体。含有“持仓”关键词的问题往往是查询某机构的持仓数据,但“持仓”并不属于实体,也没有对应的数据库字段,若仅根据实体识别结果进行意图识别,容易出现意图识别不准确的情况。

例如,问题1“xx集团所持的xx企业债券有多少”以及问题2“xx集团持有的xx债券有多少”都是查询集团持仓数据的,通过实体识别结果无法获悉其查询持仓数据的意图。

其中,问题1中“所持的”及和问题2中“持有”都可以作为“持仓”关键词被识别出来,“持仓”对应的正则表达式可以是“所持的|持有?”,则问题1及问题2对应的第三意图词语集合为{机构名称,持仓,机构}。

B14、基于所述第三意图词语集合确定所述待处理问题对应的目标意图。

第二意图词语集合中的意图词语都是关键词语,通过这些关键词语可确定出待处理问题对应的目标意图。

所述基于所述第三意图词语集合确定所述待处理问题对应的目标意图包括:

C11、按照实体类别对应的实体名称在所述待处理问题中的位置顺序拼接所述第三意图词语集合中的意图词语,得到意图词语序列;

当实体识别结果中各个实体名称对应的实体类别各不相同时,按照实体类别对应的实体名称在所述待处理问题中的位置顺序拼接所述第三意图词语集合中的意图词语,得到意图词语序列。

待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的的”对应的意图词语序列为“机构名称机构”。

若实体识别结果中有多个实体名称对应同一个实体类别,则将该实体类别对应的实体名称中排在待处理问题的最前的位置作为该实体类别对应的位置。

C12、判断意图库中是否含有与所述意图词语序列匹配的实例;

C13、当判断所述意图库中含有与所述意图词语序列匹配的实例时,将所述意图库中匹配的实例对应的意图作为所述待处理问题对应的目标意图。

本实施例中,意图库中预先设置了多个意图及每个意图对应的实例,例如,若意图库中意图“查询机构相关信息”对应的实例中包括“机构名称机构”,则待处理问题对应的目标意图为“查询机构相关信息”。

在所述判断意图库中是否含有与所述意图词语序列匹配的实例之后,所述方法还包括:

若判断所述意图库中没有与所述意图词语序列匹配的实例,则将所述意图词语序列输入意图识别模型,识别得到所述待处理问题对应的目标意图。

本实施例中,所述意图识别模型为以TextCNN、fasttext、SVM为基模型融合后的综合模型。

S4、基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句。

对于待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”,其目标意图为“查询机构相关信息”,则将存储有机构名称“A集团”信息的数据表作为待查询的数据源。

所述基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句包括:

D11、从模板库中获取所述目标意图对应的查询模板,判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段;

D12、若是,从所述实体名称中获取每个查询维度对应的查询字段,将所述查询字段填入所述查询模板中,得到所述待处理问题对应的查询语句。

所述查询模板可以是由多个SQL语句组成的,所述查询维度可以包括:查询范围、过滤条件、分布维度、排序条件、查询目标。

在所述判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段之后,所述方法还包括:

若所述实体名称中没有某一指定查询维度对应的查询字段,则从所述查询模板中删除所述指定查询维度对应的语句。

例如,待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”中的时间实体“过去半年”为查询范围对应的查询字段,指标实体“资产负债率”为查询目标对应的查询字段,而识别得到的实体名称中没有“过滤条件”、“分布维度”及“排序条件”对应的查询字段,则将查询模板中“过滤条件”、“分布维度”、“排序条件”对应的语句删除。

S5、利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

确定了待查询的数据源和查询语句即可查询到待处理问题对应的答案数据,该数据可以以表格、柱状图、饼图、折线图等多种方式展现到客户端界面。

由上述实施例可知,本发明提出的智能问答方法,首先,对待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;接着,基于实体类别对待处理问题执行意图识别处理,得到待处理问题对应的目标意图;然后,基于目标意图确定待处理问题对应的数据源,基于实体名称确定所述待处理问题对应的查询字段,根据查询字段生成查询语句;最后,利用查询语句从数据源中查询待处理问题对应的目标答案。本方案通过意图识别结果精准匹配待处理问题对应的数据源,通过实体识别结果准确确定待处理问题对应的查询字段,并生成查询语句,利用查询语句从数据源从查询待处理问题对应的目标答案,使得目标答案更为准确。因此,本发明提高了答案的准确度。

如图2所示,为本发明一实施例提供的智能问答装置的模块示意图。

本发明所述智能问答装置100可以安装于电子设备中。根据实现的功能,所述智能问答装置100可以包括问题接收模块110、实体识别模块120、意图识别模块130、语句生成模块140及答案查询模块150。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。

在本实施例中,关于各模块/单元的功能如下:

问题接收模块110,用于接收用户基于客户端发出的待处理问题;

实体识别模块120,用于对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称。

本实施例中,所述客户端可以是用户的智能设备,例如,通过用户手机的问答系统交互界面输入待处理问题。电子设备(即本案的执行主体)接收到待处理问题后,对其执行实体识别处理,识别所述待处理问题中的时间、指标、人名、地名、机构名等实体信息。

所述实体类别包括时间实体类别、指标实体类别、人名实体类别、地名实体类别及机构名实体类别,所述对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称包括:

A21、基于时间实体匹配规则判断所述待处理问题中是否存在时间实体类别,若是,则从所述待处理问题中获取所述时间实体类别对应的时间实体名称;

本实施例中,预先设置了时间实体对应的匹配规则,例如,设置了“过去半年”、“前三个月”、“去年”等类似格式的词语为时间实体,通过该匹配规则可确定待处理问题中是否存在时间实体类别,若是,可获取时间实体类别对应的时间实体名称。

A22、基于指标同义词库及正则表达式判断所述待处理问题中是否存在指标实体类别,若是,则从所述待处理问题中获取所述指标实体类别对应的指标实体名称;

本实施例预先定义了指标同义词库,在指标同义词库中,每个指标名称对应多种表达形式,例如,指标名称“资产负债率”包括“负债率”、“负债信息”、“资产负债情况”等表达形式。

通过正则表达式可对待处理问题中的指标实体类别及指标实体名称进行识别,例如,正则表达式“负债率?”可以匹配到含有“负债率”的字段。

A23、基于实体识别模型识别所述待处理问题中的人名实体类别及人名实体名称、地名实体类别及地名实体名称、机构名实体类别及机构名实体名称。

本实施例中,所述实体识别模型是BERT模型。

融合时间、指标、人名、地名及机构名实体即可得到待处理问题对应的实体识别结果。

若待处理问题为“帮我查看一下,过去半年A集团的负债率是怎样的”,则识别出的实体包括:时间实体“过去半年”(其中,时间实体为实体类别,过去半年为时间实体名称),机构实体“A集团”,指标实体“资产负债率”。

意图识别模块130,用于基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图。

若识别得到的实体名称及实体类别较多,则根据实体识别结果并不能快速、准确的确定待处理问题的真实意图,此时需要对实体识别结果执行筛选及简化处理。

所述基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图包括:

B21、根据实体类别与意图词语的映射关系确定所述待处理问题对应的多个意图词语,将所述多个意图词语的集合作为第一意图词语集合;

本实施例预先为实体类别设置了对应的意图词语,例如,实体类别“注册地址”、“机构类型”属于“机构基本信息”,“营业收入”、“营业利润率”属于“机构财务信息”。由于机构指标类别可以分为机构基本信息、机构财务信息、机构评级信息,本实施例设置了以上三种机构指标类别都可以通过意图词语“机构”来涵盖查询机构相关信息的问题,以对机构相关指标做进一步的抽象,即映射关系中实体类别“注册地址”、“机构类型”、““营业收入”及“营业利润率”对应的意图词语都是“机构”,而其它实体类别对应的意图词语即为实体类别本身,例如,实体类别“时间”、“机构名称”对应的意图词语分别为“时间”、“机构名称”。

对于待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”,其实体类别包括时间、机构名称、指标名称,则第一意图词语集合为{时间、机构名称、机构}。

B22、从所述第一意图词语集合中筛选关键意图词语得到第二意图词语集合;

本实施例中预先配置了关键意图词语词库,例如,配置了机构名称、机构为关键意图词语,时间为非关键意图词语,则第二意图词语集合为{机构名称,机构}。

B23、判断所述待处理问题中是否含有关键词实体,当判断所述待处理问题中含有关键词实体时,将含有的关键词实体添加至所述第二意图词语集合中,得到第三意图词语集合;

为了对意图进行更好的识别,本实施例自定义了无数据库数据对应的关键词实体,例如:持仓、担保人等,并通过正则表达式匹配待处理问题中是否含有关键词实体。含有“持仓”关键词的问题往往是查询某机构的持仓数据,但“持仓”并不属于实体,也没有对应的数据库字段,若仅根据实体识别结果进行意图识别,容易出现意图识别不准确的情况。

例如,问题1“xx集团所持的xx企业债券有多少”以及问题2“xx集团持有的xx债券有多少”都是查询集团持仓数据的,通过实体识别结果无法获悉其查询持仓数据的意图。

其中,问题1中“所持的”及和问题2中“持有”都可以作为“持仓”关键词被识别出来,“持仓”对应的正则表达式可以是“所持的|持有?”,则问题1及问题2对应的第三意图词语集合为{机构名称,持仓,机构}。

B24、基于所述第三意图词语集合确定所述待处理问题对应的目标意图。

第二意图词语集合中的意图词语都是关键词语,通过这些关键词语可确定出待处理问题对应的目标意图。

所述基于所述第三意图词语集合确定所述待处理问题对应的目标意图包括:

C21、按照实体类别对应的实体名称在所述待处理问题中的位置顺序拼接所述第三意图词语集合中的意图词语,得到意图词语序列;

当实体识别结果中各个实体名称对应的实体类别各不相同时,按照实体类别对应的实体名称在所述待处理问题中的位置顺序拼接所述第三意图词语集合中的意图词语,得到意图词语序列。

待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的的”对应的意图词语序列为“机构名称机构”。

若实体识别结果中有多个实体名称对应同一个实体类别,则将该实体类别对应的实体名称中排在待处理问题的最前的位置作为该实体类别对应的位置。

C22、判断意图库中是否含有与所述意图词语序列匹配的实例;

C23、当判断所述意图库中含有与所述意图词语序列匹配的实例时,将所述意图库中匹配的实例对应的意图作为所述待处理问题对应的目标意图。

本实施例中,意图库中预先设置了多个意图及每个意图对应的实例,例如,若意图库中意图“查询机构相关信息”对应的实例中包括“机构名称机构”,则待处理问题对应的目标意图为“查询机构相关信息”。

在所述判断意图库中是否含有与所述意图词语序列匹配的实例之后,所述意图识别模块130还用于:

若判断所述意图库中没有与所述意图词语序列匹配的实例,则将所述意图词语序列输入意图识别模型,识别得到所述待处理问题对应的目标意图。

本实施例中,所述意图识别模型为以TextCNN、fasttext、SVM为基模型融合后的综合模型。

语句生成模块140,用于基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句。

对于待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”,其目标意图为“查询机构相关信息”,则将存储有机构名称“A集团”信息的数据表作为待查询的数据源。

所述基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句包括:

D21、从模板库中获取所述目标意图对应的查询模板,判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段;

D22、若是,从所述实体名称中获取每个查询维度对应的查询字段,将所述查询字段填入所述查询模板中,得到所述待处理问题对应的查询语句。

所述查询模板可以是由多个SQL语句组成的,所述查询维度可以包括:查询范围、过滤条件、分布维度、排序条件、查询目标。

在所述判断所述实体名称中是否含有所述查询模板中每个查询维度对应的查询字段之后,所述语句生成模块140还用于:

若所述实体名称中没有某一指定查询维度对应的查询字段,则从所述查询模板中删除所述指定查询维度对应的语句。

例如,待处理问题“帮我查看一下,过去半年A集团的负债率是怎样的”中的时间实体“过去半年”为查询范围对应的查询字段,指标实体“资产负债率”为查询目标对应的查询字段,而识别得到的实体名称中没有“过滤条件”、“分布维度”及“排序条件”对应的查询字段,则将查询模板中“过滤条件”、“分布维度”、“排序条件”对应的语句删除。

答案查询模块150,用于利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

确定了待查询的数据源和查询语句即可查询到待处理问题对应的答案数据,该数据可以以表格、柱状图、饼图、折线图等多种方式展现到客户端界面。

如图3所示,为本发明一实施例提供的实现智能问答方法的电子设备的结构示意图。

所述电子设备1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子设备1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。

在本实施例中,电子设备1包括,但不仅限于,可通过系统总线相互通信连接的存储器11、处理器12、网络接口13,该存储器11中存储有智能问答程序10,所述智能问答程序10可被所述处理器12执行。图3仅示出了具有组件11-13以及智能问答程序10的电子设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。

其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子设备1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子设备1的内部存储单元,例如该电子设备1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子设备1的操作系统和各类应用软件,例如存储本发明一实施例中的智能问答程序10的代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子设备1的总体操作,例如执行与其他设备进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行智能问答程序10等。

网络接口13可包括无线网络接口或有线网络接口,该网络接口13用于在所述电子设备1与客户端(图中未画出)之间建立通信连接。

可选的,所述电子设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。

应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。

所述电子设备1中的所述存储器11存储的智能问答程序10是多个指令的组合,在所述处理器12中运行时,可以实现:

接收用户基于客户端发出的待处理问题;

对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;

基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图;

基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句;

利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

具体地,所述处理器12对上述智能问答程序10的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。

进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以是非易失性的,也可以是非易失性的。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。

所述计算机可读存储介质上存储有智能问答程序10,所述智能问答程序10可被一个或者多个处理器执行,以实现如下步骤:

接收用户基于客户端发出的待处理问题;

对所述待处理问题执行实体识别处理,得到多个实体类别及其对应的实体名称;

基于所述实体类别对所述待处理问题执行意图识别处理,得到所述待处理问题对应的目标意图;

基于所述目标意图确定所述待处理问题对应的数据源,基于所述实体名称确定所述待处理问题对应的查询字段,根据所述查询字段生成查询语句;

利用所述查询语句从所述数据源中查询所述待处理问题对应的目标答案,并将所述目标答案发送到所述客户端。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。

因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。

本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。

此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

相关技术
  • 智能问答方法、装置、电子设备及可读存储介质
  • 智能问答方法、装置、电子设备及计算机可读存储介质
技术分类

06120113117089