发明内容
为解决上述技术问题,本申请提供一种AI心理医生对话交互处理方法,能够提升AI心理医生系统对话的准确性和安全性。本申请还提供一种AI心理医生对话交互处理系统、终端及存储介质,具有相同的技术效果。
本申请的第一个目的为提供一种AI心理医生对话交互处理方法。
本申请的上述申请目的一是通过以下技术方案得以实现的:
一种AI心理医生对话交互处理方法,包括:
获取用户输入的第一对话文本;
对所述第一对话文本进行分析处理,得到第一用户标签;
根据所述第一用户标签,构建用户标签集合;
对所述第一对话文本进行编码处理,生成文本编码;
获取用户的状态序列;
利用预先训练好的状态转移模型,对所述用户标签集合、所述状态序列和所述文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点,其中,所述有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建;
利用所述有限状态机模型,基于所述目标状态节点,生成反馈文本,并将所述反馈文本返回至用户;
获取用户接收到所述反馈文本后输入的第二对话文本;
对所述第二对话文本进行分析处理,得到第二用户标签;
根据所述第二用户标签,更新所述用户标签集合;
对所述第二对话文本进行编码处理,重新生成所述文本编码;
根据所述目标状态节点,更新所述状态序列,然后返回重新执行所述利用预先训练好的状态转移模型,对所述用户标签集合、所述状态序列和所述文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点的步骤。
优选地,所述AI心理医生对话交互处理方法中,所述对所述第一对话文本进行分析处理,得到第一用户标签,包括:
利用预先训练好的大语言模型,对所述第一对话文本进行分析处理,得到第一用户标签;
所述对所述第二对话文本进行分析处理,得到第二用户标签,包括:
利用预先训练好的大语言模型,对所述第二对话文本进行分析处理,得到第二用户标签。
优选地,所述AI心理医生对话交互处理方法中,所述预设状态节点包括多个问询状态节点和多个开导状态节点。
优选地,所述AI心理医生对话交互处理方法中,所述状态转移模型采用基于注意力机制的序列模型。
本申请的第二个目的为提供一种AI心理医生对话交互处理系统。
本申请的上述申请目的二是通过以下技术方案得以实现的:
一种AI心理医生对话交互处理系统,包括:
第一获取单元,用于获取用户输入的第一对话文本;
第一处理单元,用于对所述第一对话文本进行分析处理,得到第一用户标签;
构建单元,用于根据所述第一用户标签,构建用户标签集合;
第二处理单元,用于对所述第一对话文本进行编码处理,生成文本编码;
第二获取单元,用于获取用户的状态序列;
转移单元,用于利用预先训练好的状态转移模型,对所述用户标签集合、所述状态序列和所述文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点,其中,所述有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建;
反馈单元,用于利用所述有限状态机模型,基于所述目标状态节点,生成反馈文本,并将所述反馈文本返回至用户;
所述第一获取单元,还用于获取用户接收到所述反馈文本后输入的第二对话文本;
所述第一处理单元,还用于对所述第二对话文本进行分析处理,得到第二用户标签;
所述构建单元,还用于根据所述第二用户标签,更新所述用户标签集合;
所述第二处理单元,还用于对所述第二对话文本进行编码处理,重新生成所述文本编码;
所述第二获取单元,还用于根据所述目标状态节点,更新所述状态序列。
优选地,所述AI心理医生对话交互处理系统中,所述第一处理单元,在执行对所述第一对话文本进行分析处理,得到第一用户标签时,具体用于:
利用预先训练好的大语言模型,对所述第一对话文本进行分析处理,得到第一用户标签;
所述第一处理单元,在执行对所述第二对话文本进行分析处理,得到第二用户标签时,具体用于:
利用预先训练好的大语言模型,对所述第二对话文本进行分析处理,得到第二用户标签。
优选地,所述AI心理医生对话交互处理系统中,所述预设状态节点包括多个问询状态节点和多个开导状态节点。
优选地,所述AI心理医生对话交互处理系统中,所述状态转移模型采用基于注意力机制的序列模型。
本申请的第三个目的为提供一种AI心理医生对话交互处理终端。
本申请的上述申请目的三是通过以下技术方案得以实现的:
一种AI心理医生对话交互处理终端,包括:存储介质和处理器;
所述存储介质内存储计算机执行指令;
所述处理器执行所述存储介质存储的计算机执行指令,以实现上述AI心理医生对话交互处理方法中任一所述方法。
本申请的第四个目的为提供一种计算机可读存储介质。
本申请的上述申请目的四是通过以下技术方案得以实现的:
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述AI心理医生对话交互处理方法中任一所述方法。
上述技术方案,通过获取用户输入的第一对话文本;对第一对话文本进行分析处理,得到第一用户标签;根据第一用户标签,构建用户标签集合;其中,通过构建用户标签集合,可以帮助后续计算模型理解用户;通过对第一对话文本进行编码处理,生成文本编码;其中,文本编码可以表征用户当前状态下的输入反馈;通过获取用户的状态序列,可以确定用户历史所经历的各个状态;进一步,利用预先训练好的状态转移模型,对用户标签集合、状态序列和文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点;利用有限状态机模型,基于目标状态节点,生成反馈文本,并将反馈文本返回至用户;其中,有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建,利用有限状态机模型进行心理咨询交互,其话术表达能够做到安全可控;利用状态转移模型,根据用户标签集合、状态序列和文本编码,可准确地从有限状态机模型中确定目标状态节点,以生成相应的反馈文本,实现与用户的交互处理。此外,通过获取用户接收到反馈文本后输入的第二对话文本,基于第二对话文本对用户标签集合、文本编码以及状态序列的更新,以开展下一轮的交互对话,能够有效提升下一轮交互对话的准确性和有效性。综上可知,上述技术方案能够提升AI心理医生系统对话的准确性和安全性。
具体实施方式
为了使本领域的技术人员更好地理解本申请中的技术方案,下面将对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请所提供的实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。以下所描述的系统实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
应当理解,本申请中如若使用了“系统”、“装置”、“单元”和/或“模块”,仅是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本申请的描述中,“多个”、“若干个”的含义是两个或两个以上,除非另有明确具体的限定。
本申请中如若使用了流程图,则该流程图是用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
还需要说明的是,在本文中,诸如术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的物品或者设备中还存在另外的相同要素。
本申请实施例采用递进的方式撰写。
如图1所示,本申请实施例提供一种AI心理医生对话交互处理方法,包括:
S101.获取用户输入的第一对话文本;
在S101中,具体地,可以在AI心理医生系统中预设一个引导话术,引导用户进行输入,以获取相应的第一对话文本;也可以直接从AI心理医生系统中获取用户输入的第一对话文本;本申请对此不作限制。
S102.对第一对话文本进行分析处理,得到第一用户标签;
在S102中,具体地,可以通过现有的语言模型(Language Model,LM),对第一对话文本进行分析处理,得到反映用户个人情况的第一用户标签,例如,第一用户标签可以是基于第一对话文本生成的性别标签、年龄标签、性格标签、兴趣标签、收入标签、行为标签、情绪标签、家庭标签、成长背景标签等标签中的一种或多种,本申请对此不作限制。
在另一些实施例中,本步骤的其中一种实现方式包括:利用预先训练好的大语言模型,对第一对话文本进行分析处理,得到第一用户标签;其中,大语言模型(LargeLanguage Models,LLMs)是指使用大量文本数据训练的深度学习模型,其可以生成自然语言文本或理解语言文本的含义。借助大语言模型的生成能力,将第一对话文本输入大语言模型,以提示大语言模型,可以直接生成第一对话文本对应的用户标签。
S103.根据第一用户标签,构建用户标签集合;
在S103中,具体地,利用第一用户标签,即可构建用户标签集合,用户标签集合作为刻画用户特征的标签集合,可以帮助后续计算模型理解用户,使计算模型提供给用户更高效和更有针对性的信息输送。在一些实施例中,用户标签集合可以采用标签序列的形式,标签序列中各用户标签的顺序可以按标签写入数据库的时间先后作为依据。用户标签集合还可以通过其他合理方式构建,本申请不限于此。
S104.对第一对话文本进行编码处理,生成文本编码;
在S104中,具体地,可以利用现有的文本编码器(例如基于Transformer架构的文本编码器),对第一对话文本进行编码处理,得到文本编码,以此可以过滤掉了冗余的、对当前轮对话无意义的信息,减轻后续模型计算的压力;根据第一对话文本生成的文本编码,可以表征用户当前状态下的输入反馈,同时还可以更好地适配后续模型计算。需要说明的是,S104的执行顺序可以与S102或S103互换,其不影响本实施例的实现。
S105.获取用户的状态序列;
在S105中,具体地,对于用户在AI心理医生系统对话交互过程中的每一轮对话,都可以设置一个唯一的状态ID,根据这些状态ID,即可构成用户的状态序列;用户的状态序列,包含了当前用户所在的状态ID是由哪些状态一步步转移过来的信息,通过获取用户的状态序列,可以确定用户历史所经历的各个状态;对于初次在AI心理医生系统进行对话交互的用户,其状态序列可以是预先设置的序列,本申请对此不作限制。需要说明的是,S105的执行顺序可以与S101至S104中任一步骤互换,其不影响本实施例的实现。
S106.利用预先训练好的状态转移模型,对用户标签集合、状态序列和文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点;
在S106中,具体地,可以将用户标签集合、状态序列和文本编码,输入预先训练好的状态转移模型,状态转移模型通过分析预测,可以从预先构建的有限状态机模型中确定目标状态节点,其中,有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建,目标状态节点,也就是有限状态机模型中下一个要转移的预设状态节点。
在一些实施例中,可以基于现有的心理诊疗知识以及心理医生的问询和开导话术,预先配置好大量的心理咨询对话文本和状态节点;然后通过预设心理咨询对话文本和预设状态节点,构建有限状态机模型,以此借助有限状态机,来模拟心理咨询的流程。其中,有限状态机模型,是表示有限个状态以及在这些状态之间的转移和动作等行为的数据模型,有限状态机模型中的预设状态,可以对应询问患者一个问题,或者使用一种话术去开导用户。使用有限状态机模型做心理咨询的好处是:每一个状态节点都是预先设置的,开导和询问的话术安全可控,并且比起大语言模型生成的询问和开导的话术更加专业。
在另一些实施例中,预设状态节点包括多个问询状态节点和多个开导状态节点;其中,有限状态机模型在进入问询状态节点后,可以自动输出一段文本来询问用户的某种情况,比如询问用户的收入、童年经历等;有限状态机模型在进入开导状态节点后,可以自动输出一段文本来对用户进行心理开导,比如“夏虫不可语冰,对于无知浅薄的人,没必要让他理解你”、“过好你自己的生活就行,没必要让别人理解你”等;在具体实施例中,基于预设心理咨询对话文本、问询状态节点、开导状态节点构建有限状态机模型,借助有限状态机模型来进行心理咨询的某一流程示意图,如图2所示;在具体实施过程中,可以根据需要心理咨询的用户群体,合理构建不同的有限状态机模型,本申请对其构建过程不作限制。在另一些实施例中,开导状态节点中可以包括一个结束状态节点,当有限状态机模型进入这个结束状态节点时,有限状态机模型会自动输出结束话术,然后结束本次心理咨询,本申请对此不作限制。
在一些实施例中,状态转移模型,可以采用基于注意力机制的序列模型,例如Transformer模型,Transformer模型仅使用自注意力机制来处理输入序列和输出序列,因此可以并行计算,可以极大地提高计算效率;状态转移模型用于根据用户标签集合、状态序列和文本编码,预测有限状态机模型下一个要转移的状态节点;在具体实施例中,状态转移模型可以通过如下方式构建:
获取用户在AI心理医生系统中的历史对话样本和状态序列样本,对历史对话样本进行标注,基于标注可以帮助序列模型进行状态节点的预测;对标注后历史对话样本进行上述相同处理后得到用户标签集合样本和文本编码样本;以状态序列样本、用户标签集合样本和文本编码样本为输入,有限状态机模型下一个要转移的状态节点的推荐概率为输出,构建基于注意力机制的序列模型,利用状态序列样本、用户标签集合样本和文本编码样本对序列模型进行训练,以此得到训练好的状态转移模型,模型训练过程可以采用现有的模型训练方法,本申请对此不作限制。
S107.利用有限状态机模型,基于目标状态节点,生成反馈文本,并将反馈文本返回至用户;
在S107中,具体地,在确定目标状态节点后,即可利用有限状态机模型,自动生成反馈文本,例如,若目标状态节点为某一问询状态节点,有限状态机模型即生成该状态节点对应的问询文本,若目标状态节点为某一开导状态节点,有限状态机模型即生成该状态节点对应的开导文本;最后并将反馈文本返回给用户,以此实现与用户的对话交互处理。在本实施例中,通过将有限状态机模型和状态转移模型结合,能够根据用户输入的对话文本,使用专业且安全可控的话术与用户进行交互,能够提升AI心理医生系统对话的准确性和安全性。
S108.获取用户接收到反馈文本后输入的第二对话文本;
在S108中,具体地,用户在接收到反馈文本后,可以在反馈文本的引导下,继续输入第二对话文本。例如,当目标状态节点为某一问询状态节点时,生成的反馈文本中包括询问用户的问题,用户在接收到反馈文本后,可以通过AI心理医生系统输入的对该问题的回答,即可获取对应的第二对话文本;第二对话文本还可以通过其他合理方式获取,本申请对此不作限制。
S109.对第二对话文本进行分析处理,得到第二用户标签;
在S109中,其具体实施详情,可以参考上述S102;在另一些实施例中,本步骤的其中一种实现方式包括:利用预先训练好的大语言模型,对第二对话文本进行分析处理,得到第二用户标签。
S110.根据第二用户标签,更新用户标签集合;
在S110中,具体地,在得到第二用户标签后,即可根据第二用户标签,对用户的用户标签集合进行更新。在另一些实施例中,用户标签集合可以采用标签序列的形式,本步骤的其中一种实现方式包括:将第二用户标签,按照时序写入标签序列,以此完成用户标签集合的更新。通过上述实施步骤,可以对用户每一次的对话输入,生成对应的用户标签,并可以按用户标签写入数据库的时间先后,形成新的标签序列,以此实现用户标签集合的动态更新,通过给用户不断的打上各种用户标签,可以帮助后续状态转移模型更准确地理解用户,使状态转移模型提供给用户更高效和更有针对性的信息输送。
S111.对第二对话文本进行编码处理,重新生成文本编码;
在S111中,具体地,通过对第二对话文本进行编码处理,可以重新生成文本编码,重新生成的文本编码,可以表征用户当前状态下的输入反馈;本步骤的具体实施详情,可以参考上述S104。
S112.根据目标状态节点,更新状态序列,然后返回重新执行S106。
在S112中,具体地,对于对话交互过程的每一轮对话,都可以设置一个唯一的状态ID,根据目标状态节点对应的状态ID,即可对状态序列进行更新;根据更新后的状态序列,即可确定用户历史所经历的各个状态;在一些实施例中,对于用户经历过的状态节点,状态转移模型可以根据更新后的状态序列,对这些状态节点进行过滤,以避免生成重复的交互反馈,本申请对此不作限制。在完成对用户标签集合、文本编码以及状态序列的更新后,即可返回执行S106,以进行下一轮的交互对话,直至用户或模型结束本次心理咨询。通过上述实施步骤,基于用户接收到反馈文本后输入的第二对话文本,完成对用户标签集合、文本编码以及状态序列的更新,以开展下一轮的交互对话,能够进一步提升下一轮交互对话的准确性和有效性。
现有的AI心理医生系统,一般基于大语言模型设计。大语言模型的工作模式是“一问一答”式的,用在心理诊疗中并不合适,而且这类技术产品的能力还无法取代心理健康专业人士,其话术表达无法完全做到安全可控。
上述实施例,通过获取用户输入的第一对话文本;对第一对话文本进行分析处理,得到第一用户标签;根据第一用户标签,构建用户标签集合;其中,通过构建用户标签集合,可以帮助后续计算模型理解用户;通过对第一对话文本进行编码处理,生成文本编码;其中,文本编码可以表征用户当前状态下的输入反馈;通过获取用户的状态序列,可以确定用户历史所经历的各个状态;进一步,利用预先训练好的状态转移模型,对用户标签集合、状态序列和文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点;利用有限状态机模型,基于目标状态节点,生成反馈文本,并将反馈文本返回至用户;其中,有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建,利用有限状态机模型进行心理咨询交互,其话术表达能够做到安全可控;利用状态转移模型,根据用户标签集合、状态序列和文本编码,可准确地从有限状态机模型中确定目标状态节点,以生成相应的反馈文本,实现与用户的交互处理。此外,通过获取用户接收到反馈文本后输入的第二对话文本,基于第二对话文本对用户标签集合、文本编码以及状态序列的更新,以开展下一轮的交互对话,能够有效提升下一轮交互对话的准确性和有效性。综上可知,上述实施例能够提升AI心理医生系统对话的准确性和安全性。
如图3所示,在本申请的另一实施例中,还提供一种AI心理医生对话交互处理系统,包括:
第一获取单元10,用于获取用户输入的第一对话文本;
第一处理单元11,用于对第一对话文本进行分析处理,得到第一用户标签;
构建单元12,用于根据第一用户标签,构建用户标签集合;
第二处理单元13,用于对第一对话文本进行编码处理,生成文本编码;
第二获取单元14,用于获取用户的状态序列;
转移单元15,用于利用预先训练好的状态转移模型,对用户标签集合、状态序列和文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点,其中,有限状态机模型,基于预设心理咨询对话文本和预设状态节点构建;
反馈单元16,用于利用有限状态机模型,基于目标状态节点,生成反馈文本,并将反馈文本返回至用户;
第一获取单元10,还用于获取用户接收到反馈文本后输入的第二对话文本;
第一处理单元11,还用于对第二对话文本进行分析处理,得到第二用户标签;
构建单元12,还用于根据第二用户标签,更新用户标签集合;
第二处理单元13,还用于对第二对话文本进行编码处理,重新生成文本编码;
第二获取单元14,还用于根据目标状态节点,更新状态序列。
需要说明的是,在实际应用中,当第一处理单元11、第二处理单元13、第二获取单元14在完成对用户标签集合、文本编码以及状态序列的更新后,转移单元15可以再次执行利用预先训练好的状态转移模型,对用户标签集合、状态序列和文本编码进行分析处理,以从预先构建的有限状态机模型中确定目标状态节点的动作,以开展下一轮的交互对话,以此可以进一步提升下一轮交互对话的准确性和有效性。
在本申请的其他实施例中,所述AI心理医生对话交互处理系统中,第一处理单元11,在执行对第一对话文本进行分析处理,得到第一用户标签时,具体用于:
利用预先训练好的大语言模型,对第一对话文本进行分析处理,得到第一用户标签;
第一处理单元11,在执行对第二对话文本进行分析处理,得到第二用户标签时,具体用于:
利用预先训练好的大语言模型,对第二对话文本进行分析处理,得到第二用户标签。
在本申请的其他实施例中,所述AI心理医生对话交互处理系统中,预设状态节点包括多个问询状态节点和多个开导状态节点。
在本申请的其他实施例中,所述AI心理医生对话交互处理系统中,状态转移模型采用基于注意力机制的序列模型。
如图4所示,在本申请的另一实施例中,还提供一种AI心理医生对话交互处理终端,包括:存储介质20和处理器21;
存储介质20内存储计算机执行指令;
处理器21执行存储介质20存储的计算机执行指令,以实现上述AI心理医生对话交互处理方法中任一所述方法。
其中,处理器21可以包括一个或者多个处理核心。处理器21通过运行或执行存储在存储介质20内的指令、程序、代码集或指令集,调用存储在存储介质20内的数据,执行本申请的各种功能和处理数据。处理器21可以为特定用途集成电路、数字信号处理器、数字信号处理装置、可编程逻辑装置、现场可编程门阵列、中央处理器、控制器、微控制器和微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器21功能的电子器件还可以为其它。
其中,存储介质20可用于存储指令、程序、代码、代码集或指令集。存储介质20可以包括存储程序区和存储数据区,其中存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令以及用于实现上述任一AI心理医生对话交互处理方法的指令等;存储数据区可存储上述任一AI心理医生对话交互处理方法中涉及到的数据等。
在本申请的另一实施例中,还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述AI心理医生对话交互处理方法中任一所述方法。
其中,计算机可读存储介质,可以为U盘、移动硬盘、只读存储器、随机存取存储器或者光盘等各种可以存储程序代码的介质。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。