发明内容
基于此,本发明提出了一种输入信息响应方法、装置、计算机设备和存储介质,以解决输入信息响应效率低的问题。
一种输入信息响应方法,包括:
当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存;
确定所述当前的输入文本句的输入时间;
判断自所述输入时间起算第一预设时长内是否接收到新的输入文本句;
若是,将所述新的输入文本句作为当前的输入文本句,返回所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存的步骤;
否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除所述缓存中存储的输入文本句;
根据所述输入文本段生成相应的输出文本段。
在其中一个实施例中,所述方法还包括:
当与用户终端之间建立通话链路时,确定所述通话链路的接入时间;
确定所述输出文本段的响应时间;
当自所述接入时间或所述响应时间起算第二预设时长内未接收到新的输入文本句时,拆除所述通话链路。
在其中一个实施例中,所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存包括:
当自所述接入时间或所述响应时间起算第二预设时长内接收到了输入文本句时,将接收到的输入文本句确定为当前的输入文本句。
在其中一个实施例中,所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存包括:
当基于HTTP协议接收到一个或多个语音识别应用发送的当前的输入文本句时,对所述当前的输入文本句进行缓存。
在其中一个实施例中,所述对缓存中存储的至少一条输入文本句进行拼接,得到输入文本段,包括:
根据所述输入时间对所述缓存中存储的多个输入文本句进行排序;
对所述输入文本句进行遍历;
判断当前顺序的输入文本句是否存在对应的下一顺序输入文本句;
若是,在当前顺序输入文本句后添加第一字符;
否则,在当前顺序输入文本句后添加第二字符,直至最后拼接输入文本句,得到输入文本段。
在其中一个实施例中,所述根据所述输入文本段生成相应的输出文本段,包括:
当所述输入文本段包含第二字符时,将预设应答库中与所述输入文本段相匹配的参考答复文本确定为相应的输出文本段。
在其中一个实施例中,所述方法还包括:
对所述输出文本段进行语音转换,得到对应的输出语音;
基于与用户终端之间的通话链路采用的通信协议,确定最大传输数据量;
根据所述最大传输数据量将所述输出语音进行拆分,得到多个语音片段;
将多个语音片段按照预设时间频率先后发送至所述用户终端。
一种输入信息响应装置,包括:
缓存模块,用于当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存;
输入文本句接收模块,用于确定所述当前的输入文本句的输入时间;判断自所述输入时间起算第一预设时长内是否接收到新的输入文本句;若是,将所述新的输入文本句作为当前的输入文本句,返回所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存的步骤;否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除所述缓存中存储的输入文本句;
输出文本段生成模块,用于根据所述输入文本段生成相应的输出文本段。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存;
确定所述当前的输入文本句的输入时间;
判断自所述输入时间起算第一预设时长内是否接收到新的输入文本句;
若是,将所述新的输入文本句作为当前的输入文本句,返回所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存的步骤;
否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除所述缓存中存储的输入文本句;
根据所述输入文本段生成相应的输出文本段。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存;
确定所述当前的输入文本句的输入时间;
判断自所述输入时间起算第一预设时长内是否接收到新的输入文本句;
若是,将所述新的输入文本句作为当前的输入文本句,返回所述当接收到当前的输入文本句时,对所述当前的输入文本句进行缓存的步骤;
否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除所述缓存中存储的输入文本句;
根据所述输入文本段生成相应的输出文本段。
上述应用更新方法、装置、计算机设备和存储介质,通过判断在第一预设时长内,是否接收到新的输入文本句,来判断用户是否已完成本轮次的语音输入,使得电话机器人能够在用户已完成本轮次的语音输入后,及时响应输入信息,从而提升了输入信息响应效率。由于电话机器人只需接收语音识别应用生成的输入文本句,因此相比于传统方法,只有通过语音识别应用提供方规定的通信协议,才能拿到带有标点符号的文本,上述输入信息响应方法可以不受语音识别应用的通信协议的束缚,当更换语音识别应用时,也不必基于通信协议重新开发改造接收输入文本句的功能模块,从而降低了输入信息响应成本,进而提升了输入信息响应效率。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的输入信息响应方法,可以应用于如图1的应用环境中。其中,用户终端110通过网络与服务器120进行通信;服务器120通过网络与电话机器人130进行通信;电话机器人130通过网络与用户终端110相连。用户终端110具有接入互联网以及接入电话网络的功能,可以但不限于是手机、固定电话、平板电脑或便携式可穿戴设备等。用户终端110可运行有用于建立语音通话链路的即时通讯应用,或用于建立语音通话链路的系统电话应用。用户终端110也可以通过为即时通讯应用提供服务的服务器或为系统电话应用提供服务的服务器与电话机器人130进行中转通信。服务器120可运行有用于对用户终端110发送的语音进行文本转换及标点符号添加的语音识别应用。服务器120具体可以由独立的服务器或者是多个服务器组成的服务器集群实现。电话机器人130可以是用于代替自动向用户拨打电话的终端或服务器。
当用户终端110与电话机器人130之间建立通话链路时,用户终端110接收用户输入的语音,并通过网络或通话链路,将用户输入的语音以语音流的方式发送至服务器120;服务器120接收用户输入的语音,将用户输入的语音转换为计算机可以直接识别的输入文本句,然后,通过网络,将输入文本句依次发送至电话机器人130;电话机器人130接收并缓存输入文本句,记录输入文本句的输入时间,根据输入时间确定是否拼接缓存中的输入文本句,得到输入文本段。上述输入信息响应过程,由于电话机器人只需接收语音识别应用生成的输入文本句,因此相比于传统方法,只有通过语音识别应用提供方规定的通信协议,才能拿到带有标点符号的文本,上述输入信息响应方法可以不受语音识别应用的通信协议的束缚,当更换语音识别应用时,也不必基于通信协议重新开发改造接收输入文本句的功能模块,从而降低了输入信息响应成本,进而提升了输入信息响应效率。
在一个实施例中,如图2所示,提供了一种输入响应的方法,以该方法应用于图1中的电话机器人为例进行说明,包括以下步骤:
步骤S210,当接收到当前的输入文本句时,对当前的输入文本句进行缓存。
其中,输入文本句为,对用户输入的语音中的一个语句的末尾或中间位置进行分割,形成小段输入语音,并将小段输入语音转换成计算机能够直接识别的文本句,为了描述方便,下文将文本句记作输入文本句。电话机器人确定缓存路径,在与缓存路径对应的内存中创建一个缓存队列。缓存队列用于存储输入文本句。
具体实现中,当电话机器人拨打用户的电话,并与用户终端建立通话链路时,用户通过用户终端输入语音,用户终端将用户输入的语音实时发送至语音识别应用,语音识别应用接收用户输入的语音,并将用户输入的语音转换成输入文本句,发送至电话机器人。当电话机器人接收到当前的输入文本句时,获取当前的输入文本句的数据长度,并将当前的输入文本句写入缓存队列的队尾。电话机器人判断写入缓存队列中的数据长度是否等于当前的输入文本句的数据长度,当写入缓存队列中的数据长度等于当前的输入文本句的数据长度时,确定当前的输入文本句已成功缓存。
步骤S220,确定当前的输入文本句的输入时间。
其中,输入时间为,电话机器人开始缓存输入文本句的时间。
具体实现中,当电话机器人开始对当前的输入文本句进行缓存时,获取开始缓存当前的输入文本句的网络时间,并根据网络时间确定输入文本句对应的时间戳,将时间戳与当前的输入文本句一起缓存至缓存队列中。
步骤S230,判断自输入时间起算第一预设时长内是否接收到新的输入文本句。
具体实现中,当电话机器人获取到当前的输入文本句的输入时间时,以当前的输入时间作为时间起点,计算第一预设时长内,是否接收到新的输入文本句。第一预设时长一般代表用户输入的语音中的语句与语句之间的间隔时间。容易理解,第一预设时长可以根据需求进行设置。例如,获取用户的语速,当用户的语速小于阈值时,增加第一预设时长;当用户的语速小于阈值时,减小第一预设时长。
步骤S240,若是,将新的输入文本句作为当前的输入文本句,返回当接收到当前的输入文本句时,对当前的输入文本句进行缓存的步骤。
具体实现中,当电话机器人在第一预设时长内,接收到了新的输入文本句,则认为用户还未完成本轮次的语音输入。电话机器人将新的输入文本句作为当前的输入文本句,按照上述方式对接收到的每个输入文本句进行缓存。
步骤S250,否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除缓存中存储的输入文本句。
具体实现中,当电话机器人在第一预设时长内,没有接收到新的输入文本句时,则认为用户已完成本轮次的语音输入。电话机器人获取缓存路径,并根据缓存路径确定缓存队列,从缓存队列中的输入文本句中提取输入时间,将输入时间按时间先后进行排序,在排序后的输入文本之间插入第一字符,以便后续分析输入文本段的意图,在输入时间最晚的输入文本句之后插入第二字符,以确定此时已接收完本轮次的输入文本句。更具体地,第一字符可以为逗号,第二字符可以为句号。
在另一个实施例中,电话机器人对排序后的输入文本句进行遍历,将相邻的两个输入文本句后序输入文本句的输入时间减去前序输入文本句的输入时间,得到间隔时长,将第一预设时长减去间隔时长,得到时间差,当时间差小于或等于阈值时,则认为前一个输入文本句与后一个输入文本句之间为连续的输入文本句,并删除前一个输入文本句与后一个输入文本句之间的逗号,从而避免单个语句之间出现误断句的情况,进而方便后续理解输入文本句的句意。
例如:设置第一预设时长3秒,阈值为1秒。电话机器人的缓存队列中有三个输入文本句,并且三个输入文本句的输入时间分别为12:00、12:01、12:04。对三个输入文本句按输入时间的时间先后进行排序,然后,在排序后的输入文本句之间插入逗号。将12:01减去12:00,得到间隔时长为1秒,等于阈值,则认为12:00接收到的输入文本句与12:01接收到的输入文本句为连续的输入文本句,删除12:00接收到的输入文本句与12:01接收到的输入文本句之间插入的逗号。将12:04减去12:01,得到间隔时长为3秒,大于阈值,保留在12:01接收到的输入文本句与12:04接收到的输入文本句之间插入的逗号,并在12:04接收到的输入文本句之后插入句号。比如三个输入文本分别为“今天”、“天气很好”、“阳光明媚”,对输入文本拼接之后,形成“今天天气很好,阳光明媚。”的输入文本段。
步骤S260,根据输入文本段生成相应的输出文本段。
其中,电话机器人部署了对应的预设应答库。预设应答库中存储了用于答复用户通话信息的参考答复文本。根据输入文本可能表达的意图,电话机器人从预设应答库中选取与输入文本段可能表达的意图相匹配的参考答复文本,作为相应的输出文本段。
具体实现中,获取尽可能多的输入文本段作为训练文本,根据训练文本生成意图识别模型,用以识别输入文本段中的意图。将输入文本段输入意图识别模型,得到识别结果,根据识别结果从预设应答库中选取与相匹配的参考答复文本,作为相应的输出文本段。当电话机器人生成相应的输出文本段后,电话机器人返回至当接收到当前的输入文本句时,对当前的输入文本句进行缓存的步骤,直至用户拆除用户终端与电话机器人之间建立的通话链路。
例如,从电话对话或网络等场景中尽可能多的收集输入文本段作为训练文本,并将输入文本段按类型进行分类,如将输入文本段分成闲聊类和问题类。根据不同类型的训练文本,生成不同类别的意图识别模型。获取输入文本段中的关键字,查看关键词中是否包含带有询问意图的词汇,如“吗”、“请问”,当包含带有询问意图的词汇时,判定输入文本段为问题类,并将输入文本段输入与文体类相对应的意图识别模型中进行意图识别,然后,根据识别出结,从预设应答库中选取与输入文本段可能表达的意图相匹配的参考答复文本,作为相应的输出文本段。
本实施例中,电话机器人接收并缓存输入文本句,可以缓解当语音识别应用识别速度大于智能机器人响应速度时,电话机器人来不及响应输入文本句,导致输入文本句丢失的情况;确定输入文本句的输入时间,可以根据输入时间确定自输入时间起算第一预设时长内是否接收到新的输入文本句;当没有接收到新的文本句时,可以认为当前用户已经完成了本轮次语音输入,电话机器人可以响应本轮次语音输入;然后,拼接缓存中的输入文本句,得到输入文本段,根据输入文本段生成相应的输出文本段。上述输入信息响应方法,通过判断在第一预设时长内,是否接收到新的输入文本句,来判断用户是否已完成本轮次的语音输入,使得电话机器人能够在用户已完成本轮次的语音输入后,及时响应输入信息,从而提升了输入信息响应效率。由于电话机器人只需接收语音识别应用生成的输入文本句,因此相比于传统方法,只有通过语音识别应用提供方规定的通信协议,才能拿到带有标点符号的文本,上述输入信息响应方法可以不受语音识别应用的通信协议的束缚,当更换语音识别应用时,也不必基于通信协议重新开发改造接收输入文本句的功能模块,从而降低了输入信息响应成本,进而提升了输入信息响应效率。
在一个实施例中,该方法还包括:当与用户终端之间建立通话链路时,确定通话链路的接入时间;确定输出文本段的响应时间;当自接入时间或响应时间起算第二预设时长内未接收到新的输入文本句时,拆除通话链路。
其中,第二预设时长大于第一预设时长。
具体实现中,当电话机器人与用户终端建立通话链路时,同步获取此时的网络时间,并将此时的网络时间作为通话链路的接入时间。当输出文本段转换成相应的输出语音并发送至用户终端时,获取开始发送输出语音的网络时间,然后,将发送输出语音的网络时间作为输出文本段的响应时间。当自接入时间起算第二预设时长内,没有接收到输入文本句时,则可以认为用户误拨打电话;当自响应时间起算第二预设时长内,没有接收到输入文本句时,可以认为用户已完成全部轮次的语音输入,无需再与电话机器人进行交互。当认为用户误拨打电话或已完成全部轮次的语音输入时,电话机器人拆除与用户终端建立的通话链路。
上述一种输入信息响应方法中,通过预先设置第二预设时长,并判断自接入时间或响应时间起算第二预设时长内是否接收到输入文本句,当未接收到输入文本句时,拆除与用户终端建立的通话链路,可以避免当用户误拨打电话或用户已完成全部轮次的语音输入时,电话机器人依旧与用户终端保持链路连接,从而造成资源浪费的情况。
在一个实施例中,该方法还包括:当自接入时间或响应时间起算第二预设时长内接收到了输入文本句时,将接收到的输入文本句确定为当前的输入文本句。
具体实现中,判断自接入时间或响应时间起算第二预设时长内是否接收到输入文本句,当接收到了输入文本句,则可以认为用户已开始新一轮的语音输入,电话机器人接收当前的输入文本句,并缓存至缓存队列中。
上述一种输入信息响应方法中,通过判断自接入时间或响应时间起算第二预设时长内是否接收到输入文本句,当接收到输入文本句时,保持与用户终端建立的链路连接,使得后续电话机器人可以继续接收输入文本句,并根据输入文本句返回相应的输出语音。
在一个实施例中,该方法还包括:当基于HTTP协议接收到一个或多个语音识别应用发送的当前的输入文本句时,对当前的输入文本句进行缓存。
具体实现中,语音识别应用可以为不同公司基于不同通信协议所研发的应用。当语音识别应用向电话机器人发起建立连接请求时,电话机器人接收请求并建立连接,然后,基于HTTP协议接收语音识别应用发送的输入文本句,并对输入文本句进行缓存。电话机器人不仅限于通过HTTP协议接收语音识别应用发送的当前的输入文本句,还可以通过其他通用协议接收语音识别应用发送的当前的输入文本句。
例如,电话机器人基于HTTP协议接收A语音识别应用发送的当前的输入语音文本。当语音识别应用由A语音识别应用更换至B语音识别应用时,电话机器人依旧可以基于HTTP协议接收B语音识别应用发送的当前的输入语音文本。
又例如,电话机器人通过一个或多个端口监控一个或多个语音识别应用,并开辟多个线程同时处理不同语音识别应用发送的输入语音包。电话机器人存储了语音识别应用的请求路径和与请求路径对应的端口号。电话机器人轮询各端口,当发现有端口接收到语音识别应用发送的请求建立连接指令时,电话机器人获取端口的端口号,并在配置文件中查询与端口号对应的请求路径,根据端口号和请求路径,与语音识别应用建立HTTP连接,并通过HTTP连接接收语音识别应用发送的当前的输入文本句。
上述一种输入信息响应方法中,电话机器人通过HTTP协议,接收一个或多个语音识别应用发送的当前的输入文本句,相比于传统的,当更换语音识别应用时,就必须根据更换的语音识别应用的通信协议,重新开发用于接收携带有标点符号的文本的功能模块的方式,不仅可以节省输入信息响应的成本,还可以提升输入信息的响应效率。
在一个实施例中,该方法还包括:根据输入时间对缓存中存储的多个输入文本句进行排序;对输入文本句进行遍历;判断当前顺序的输入文本句是否存在对应的下一顺序输入文本句;若是,在当前顺序输入文本句后添加第一字符;否则,在当前顺序输入文本句后添加第二字符,直至最后拼接输入文本句,得到输入文本段。
具体实现中,电话机器人提取缓存队列中输入文本句的输入时间,根据输入时间,对多个输入文本句按时间先后进行排序,并将排序后的多个输入文本句存放至数组中,数组的第一个元素存放输入时间最早的输入文本句,最后一个元素存放输入时间最晚的输入文本句。第一个元素开始遍历数组,确定当前顺序的输入文本句之后,还有下一个输入文本句,则在当前顺序输入文本句后添加第一字符,以表示在用户输入的语音的一个语句之后进行短暂停顿。当遍历至数组中的最后一个元素时,在最后一个元素对应的输入文本句之后添加第二字符,以表示用户已完成本轮次的语音输入。
上述一种输入信息响应方法中,通过对输入文本句进行排序,并对排序后的输入文本句之间添加第一标识符,可以对输入文本段进行断句,方便后续根据第一标识符理解输入文本段所表达的意图;通过在排序最后的输入文本句之后添加第二标识符,可以辅助电话机器人判断用户是否已完成本轮次的语音输入,从而确定响应客户语音输入的时机。
在一个实施例中,该方法还包括:当输入文本段包含第二字符时,将预设应答库中与输入文本段相匹配的参考答复文本确定为相应的输出文本段。
其中,参考答复文本可以是对输入文本包含问题的解答。
具体实现中,电话机器人中预先设置有应答库。电话机器人从输入文本段中提取关键词,根据关键词从预设应答库中挑选与输入文本段相匹配的参考答复文本,作为相应的输出文本段。
例如,确定输入文本段是否包含第二字符,如果包含第二字符,则提取输入文本段中关键词,通过检索关键词,在预设应答库中找到与关键词相关联的参考答复文本或包含关键词的参考答复文本,然后,将参考答复文本确定为相应的输出文本段。
上述一种输入信息响应方法中,通过提取文本段中的关键词,便于电话机器人根据关键词,从预设应答库中选取与输入文本段相匹配的参考答复文本,以对输入信息进行响应。
在一个实施例中,该方法还包括:对输出文本段进行语音转换,得到对应的输出语音;基于与用户终端之间的通话链路采用的通信协议,确定最大传输数据量;根据最大传输数据量将输出语音进行拆分,得到多个语音片段;将多个语音片段按照预设时间频率先后发送至用户终端。
其中,最大传输数据量为,通话链路在单位时间内,可以传输的最大语音数据包的大小。
具体实现中,获取输出文本段,并将输出文本段经TTS(从文本到语音,TextToSpeech)转换成对应的输出语音。电话机器人基于通话链路直接与用户终端相连。获取电话机器人与用户终端之间的通话链路采用的通信协议,根据通信协议,确定最大传输数据量和预设时间频率,基于最大传输数据量,拆分输出语音得到多个语音片段,并将多个语音片段按预设时间频率发送至用户终端。
上述一种输入信息响应方法中,基于通话链路采用的通信协议所建议的最大传输数据量,将输出语音拆分为多个语音片段,以便多个语音片段可以在路通信链路中稳定传输;通过确定语音片段的传输速率和语音片段的播放速率,可以设置预设时间频率,并将多个语音片段按预设时间频率依次发送至用户终端,使得用户可以收听到流畅的输出语音。
为了便于本领域技术人员的理解,如图3所示,提供一种输入响应的具体流程示意图。当电话机器人就开始接收本轮次的输入文本句时,电话机器人判断在第二预设时长内,是否接收到了输入文本句,当没有接收到输入文本句时,则可以认为当前轮次用户并没有输入语音,当接收到输入文本句时,则获取第一预设时长;当在第一预设时长内,接收到输入文本句时,则循环获取输入文本句,直至在第一预设时长内,没有接收到输入文本句,然后,拼接已接收到的输入文本句,得到输入文本段。
为了便于本领域技术人员的理解,如图4所示,提供了一种输入响应的具体应用场景示意图。当用户向用户终端输入语言时,用户终端通过基站和公共交换网络向语音识别应用发送实时的用户输入的语音。语音识别应用接收用户输入的语音,并通过内置的静音检测模块,将用户输入的语音转换成输入文本句,然后,推送至电话机器人。电话机器人接收输入文本句并按顺序缓存至缓存队列中,直至在第一预设时长内有没接收到输入文本句。电话机器人拼接缓存中的输入文本句,生成输入文本段,并根据输入文本段生成输出文本段,然后,将输出文本段通过TTS转换成输出语音,分割输出语音,得到输出语音片段,并将输出语音片段发送至用户终端。
在一个实施例中,如图5所示,提供了一种输入信息响应装置,包括:缓存模块510、输入文本句接收模块520、输出文本段生成模块530,其中:
缓存模块510,用于当接收到当前的输入文本句时,对当前的输入文本句进行缓存;
输入文本句接收模块520,用于确定当前的输入文本句的输入时间;判断自输入时间起算第一预设时长内是否接收到新的输入文本句;若是,将新的输入文本句作为当前的输入文本句,返回当接收到当前的输入文本句时,对当前的输入文本句进行缓存的步骤;否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除缓存中存储的输入文本句;
输出文本段生成模块530,用于根据输入文本段生成相应的输出文本段。
在一个实施例中,该装置还包括链路拆除模块540,用于当与用户终端之间建立通话链路时,确定通话链路的接入时间;确定输出文本段的响应时间;当自接入时间或响应时间起算第二预设时长内未接收到新的输入文本句时,拆除通话链路。
在一个实施例中,链路拆除模块540还包括当前的输入文本句确定模块5401,用于当自接入时间或响应时间起算第二预设时长内接收到了输入文本句时,将接收到的输入文本句确定为当前的输入文本句。
在一个实施例中,缓存模块510还包括连接建立模块5101,用于当基于HTTP协议接收到一个或多个语音识别应用发送的当前的输入文本句时,对当前的输入文本句进行缓存。
在一个实施例中,输入文本句接收模块520还包括拼接模块5201,用于根据输入时间对缓存中存储的多个输入文本句进行排序;对输入文本句进行遍历;判断当前顺序的输入文本句是否存在对应的下一顺序输入文本句;若是,在当前顺序输入文本句后添加第一字符;否则,在当前顺序输入文本句后添加第二字符,直至最后拼接输入文本句,得到输入文本段。当输入文本段包含第二字符时,将预设应答库中与输入文本段相匹配的参考答复文本确定为相应的输出文本段。
在一个实施例中,该装置还包括输出语音模块550,用于对输出文本段进行语音转换,得到对应的输出语音;基于与用户终端之间的通话链路采用的通信协议,确定最大传输数据量;根据最大传输数据量将输出语音进行拆分,得到多个语音片段;将多个语音片段按照预设时间频率先后发送至用户终端。
关于输入信息响应装置的具体限定可以参见上文中对于输入信息响应方法的限定,在此不再赘述。上述输入信息响应装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现输入信息响应方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
当接收到当前的输入文本句时,对当前的输入文本句进行缓存;
确定当前的输入文本句的输入时间;
判断自输入时间起算第一预设时长内是否接收到新的输入文本句;
若是,将新的输入文本句作为当前的输入文本句,返回当接收到当前的输入文本句时,对当前的输入文本句进行缓存的步骤;
否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除缓存中存储的输入文本句;
根据输入文本段生成相应的输出文本段。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当与用户终端之间建立通话链路时,确定通话链路的接入时间;
确定输出文本段的响应时间;
当自接入时间或响应时间起算第二预设时长内未接收到新的输入文本句时,拆除通话链路。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当自接入时间或响应时间起算第二预设时长内接收到了输入文本句时,将接收到的输入文本句确定为当前的输入文本句。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当基于HTTP协议接收到一个或多个语音识别应用发送的当前的输入文本句时,对当前的输入文本句进行缓存。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据输入时间对缓存中存储的多个输入文本句进行排序;
对输入文本句进行遍历;
判断当前顺序的输入文本句是否存在对应的下一顺序输入文本句;
若是,在当前顺序输入文本句后添加第一字符;
否则,在当前顺序输入文本句后添加第二字符,直至最后拼接输入文本句,得到输入文本段。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
当输入文本段包含第二字符时,将预设应答库中与输入文本段相匹配的参考答复文本确定为相应的输出文本段。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对输出文本段进行语音转换,得到对应的输出语音;
基于与用户终端之间的通话链路采用的通信协议,确定最大传输数据量;
根据最大传输数据量将输出语音进行拆分,得到多个语音片段;
将多个语音片段按照预设时间频率先后发送至用户终端。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
当接收到当前的输入文本句时,对当前的输入文本句进行缓存;
确定当前的输入文本句的输入时间;
判断自输入时间起算第一预设时长内是否接收到新的输入文本句;
若是,将新的输入文本句作为当前的输入文本句,返回当接收到当前的输入文本句时,对当前的输入文本句进行缓存的步骤;
否则,在对缓存中存储的至少一条输入文本句进行拼接得到输入文本段后,删除缓存中存储的输入文本句;
根据输入文本段生成相应的输出文本段。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当与用户终端之间建立通话链路时,确定通话链路的接入时间;
确定输出文本段的响应时间;
当自接入时间或响应时间起算第二预设时长内未接收到新的输入文本句时,拆除通话链路。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当自接入时间或响应时间起算第二预设时长内接收到了输入文本句时,将接收到的输入文本句确定为当前的输入文本句。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当基于HTTP协议接收到一个或多个语音识别应用发送的当前的输入文本句时,对当前的输入文本句进行缓存。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据输入时间对缓存中存储的多个输入文本句进行排序;
对输入文本句进行遍历;
判断当前顺序的输入文本句是否存在对应的下一顺序输入文本句;
若是,在当前顺序输入文本句后添加第一字符;
否则,在当前顺序输入文本句后添加第二字符,直至最后拼接输入文本句,得到输入文本段。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
当输入文本段包含第二字符时,将预设应答库中与输入文本段相匹配的参考答复文本确定为相应的输出文本段。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对输出文本段进行语音转换,得到对应的输出语音;
基于与用户终端之间的通话链路采用的通信协议,确定最大传输数据量;
根据最大传输数据量将输出语音进行拆分,得到多个语音片段;
将多个语音片段按照预设时间频率先后发送至用户终端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。