一种基于微信小程序实现全双工智能语音对话的方法与流程

文档序号:17642227发布日期:2019-05-11 00:45阅读:1490来源:国知局
一种基于微信小程序实现全双工智能语音对话的方法与流程

本发明涉及智能语音对话领域,尤其涉及一种基于微信小程序实现全双工智能语音对话的方法。



背景技术:

随着计算机和人工智能技术的飞速发展,智能语音对话被广泛的开发和应用,微信小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,能够实现消息通知、线下扫码、公众号关联等功能,同时可以基于微信社交生态,发布、转发各种各样的内容,以更低地成本开发、获取用户和传播信息,微信小程序越来越成为人们日常生活和工作的助手。在此基础上,如何基于微信小程序进行高效率的交互成为亟需解决的问题。

现有的基于微信小程序的交互主要还停留在图文信息推送、异步语音等形式上,其通常使用http或者websocket协议进行数据传输,目前微信小程序交互的技术方案还存在有以下几个缺点:

1、交互方式复杂,用户需要点击小程序上特定的对话入口,在对话窗口中以文字或语音的方式发送消息或留言;

2、交互不及时,用户发送消息后,需要花时间等待对方回复,每一轮的交互都存在不确定时间的等待过程,交互不及时、效率低下;

3、交互不直接,部分小程序植入机器人辅助接待或机器人自动接待,其实现方式是先在后台配置问题关键词与答案,系统对用户发送的消息文本进行语义分析,匹配关键词后自动发送相应的答案,但用户与机器人仍是基于文本互动,需要互相发送消息,交互方式不够智能、直接;

4、交互内容有局限,目前的技术方案只实现了以图文、异步语音的形式来交互,关于操作类的问题,光靠单纯的图文或不及时的异步语音互动等是很难实现的,从而增加用户的使用成本。



技术实现要素:

为了提高微信小程序的交互智能水平,提升用户基于微信小程序的交互体验、交互效率、交互效果,实现用户基于微信小程序开展的交互更加贴近拟人化,本发明提出了一种基于微信小程序实现全双工智能语音对话的方法。

本发明采用如下技术方案:

一种基于微信小程序实现全双工智能语音对话的方法,所述方法包括:用户访问微信小程序,在所述微信小程序的页面发起语音对话,所述微信小程序包括用于传输实时音频流的实时消息传输协议、添加控制信令的websocket协议;所述微信小程序通过中继服务器将用户的实时音频流编码转换并经过软交换模块传递给sip服务器,所述微信小程序通过websocket协议全双工控制中继服务器中的实时音频流;所述sip服务器中的sip客户端将实时音频流转化能够被对话分析引擎识别的ai语音流;所述对话分析引擎对ai语音流进行识别和分析理解,并将分析结果发送至ai话术模块中;所述ai话术模块匹配合适的ai话术反馈至所述sip客户端,由所述sip客户端将ai话术依次通过所述软交换模块和中继服务器反馈至微信小程序、用户中。

作为优选,所述中继服务器将微信小程序采集的实时音频流编码转换的步骤如下:

所述微信小程序通过实时消息传输协议与实时消息服务器双向传递实时音频流;即时压缩模块接收实时消息服务器中传送的压缩格式的实时音频流,并将其转换为高保真格式的实时音频流;所述即时压缩模块与实时消息客户端双向传递高保真格式的实时音频流,所述实时消息客户端与所述软交换模块双向传递高保真格式的实时音频流。

作为优选,所述微信小程序通过websocket协议全双工控制中继服务器中的实时音频流的步骤如下:所述微信小程序通过websocket协议与websocket服务器双向传递全双工控制信令;所述websocket服务器向控制信令转换模块双向传递websocket信令,控制信令转换模块将websocket信令转换为实时消息信令;实时消息客户端与控制信令转换模块双向传递实时消息信令,实时消息客户端接收实时消息信令并作出应答和反馈。

作为优选,所述对话分析引擎包括语音识别模块、语义理解模块和知识图谱,所述语音识别模块对ai语音流进行识别,所述语义理解模块对ai语音流进行理解分析,所述知识谱图用于补充理解ai语音流语义层面上的用户意图。

本发明的有益效果是:1、针对现有方案的不足,本发明在小程序rtmp协议的基

础上组合websocket协议(基于tcp的全双工通信协议),为实时消息传输添加全双工控制信令,从而实现全双工语音对话的交互模式,以提升交互体验、提高交互效率、优化交互效果、丰富交互内容;2、人机能够实现连续对话,且无需用户每轮交互都说出唤醒词;3、用户进入小程序后,可随时唤起语音对话,ai机器人能实时进行语音识别与自然语言处理,并做出语音回复;4、对话过程中,ai机器人会主动响应用户问题并按照预设流程推进对话,不需用户使用特定唤醒词激活ai机器人,并且用户可随时打断ai机器人;5、如果对话过程中出现了机器人暂时无法回答的问题,系统可无缝切换到人工客服,人工客服可继续进行实时语音对话,保证了服务的连贯性与一致性;6、相比文本消息往来,全双工语音对话更接近自然人交流方式,大大降低了咨询门槛、提升了交互体验;7、另外,在语音对话过程中,系统仍可针对用户问题推送图文消息,或控制用户页面内容,为用户提供更直观的操作演示,进而提高效率与服务质量。

附图说明

图1是本发明的流程和结构的示意图。

图1中:1、微信小程序,10、实时消息传输协议,11、websocket协议,2、中继服务器,20、实时消息服务器,21、即时压缩模块,22、实时消息客户端,23、websocket服务器,24、控制信令转换模块,3、软交换模块,4、sip服务器,40、sip客户端,41、对话分析引擎,410、语音识别模块,411、语义理解模块,412、知识图谱,42、ai话术模块。

具体实施方式

下面通过具体实施例,并结合附图,对本发明的技术方案作进一步的具体描述:

实施例:如附图1所示的一种基于微信小程序实现全双工智能语音对话的方法,所述方法包括:用户访问微信小程序1,在所述微信小程序1的页面发起语音对话,所述微信小程序1包括用于传输实时音频流的实时消息传输协议10、添加控制信websocket协议11;所述微信小程序1通过中继服务器2将用户的实时音频流编码转换并经过软交换模块3传递给sip服务器4,所述微信小程序1通过websocket协议11全双工控制中继服务器2中的实时音频流;所述sip服务器4中的sip客户端40将实时音频流转化能够被对话分析引擎41识别的ai语音流;所述对话分析引擎41对ai语音流进行识别和分析理解,并将分析结果发送至ai话术模块42中;所述ai话术模块42匹配合适的ai话术反馈至所述sip客户端40,由所述sip客户端40将ai话术依次通过所述软交换模块3和中继服务器2反馈至微信小程序1、用户中。

所述对话分析引擎41包括语音识别模块410、语义理解模块411和知识图谱412,所述语音识别模块410对ai语音流进行识别,所述语义理解模块411对ai语音流进行理解分析,所述知识谱图412用于补充理解ai语音流语义层面上的用户意图。

在微信小程序1实时消息传输协议10的基础上组合websocket协议11(在单个tcp连接上进行全双工通信的协议),为实时消息传输添加控制信令,相当于在微信小程序1与软交换模块3之间建立一个中继服务器2,弥补现有技术无法实现全双工信息传输的不足,从而实现全双工实时智能语言对话。

当用户访问微信小程序1时,可在微信小程序1任意界面任意时刻发起对话,如咨询产品信息、咨询操作步骤等,中继服务器2将微信小程序1页面采集到的实时音频流编码转换并经过软交换模块3将语音数据传递给sip服务器4,sip服务器4基于sip信令控制实时音频流的传输,将实时音频流通过sip客户端40转化成能够被对话分析引擎41识别的ai语音流;并经过对话分析引擎41,基于语音识别、语义理解、知识图谱等技术,对用户的问答进行理解和分析,并将分析结果发送至ai话术模块42中,由ai话术模块42匹配应答用户咨询的智能语音ai话术返回给用户,返回的内容包含且不限于自然语言录音、nlg(机器语言生成)、tts(文本转语音)以及图文等多媒体信息。

所述中继服务器2将微信小程序1采集的实时音频流编码转换的步骤如下:所述微信小程序1通过实时消息传输协议10与实时消息服务器20双向传递实时音频流;即时压缩模块21接收实时消息服务器20中传送的压缩格式的实时音频流,并将其转换为高保真格式的实时音频流;所述即时压缩模块21与实时消息客户端22双向传递高保真格式的实时音频流,所述实时消息客户端22与所述软交换模块3双向传递高保真格式的实时音频流。

所述微信小程序1通过websocket协议11全双工控制中继服务器2中的实时音频流的步骤如下:所述微信小程序1通过websocket协议11与websocket服务器23双向传递全双工控制信令;所述websocket服务器23向控制信令转换模块24双向传递websocket信令,控制信令转换模块24将websocket信令转换为实时消息信令;实时消息客户端22与控制信令转换模块24双向传递实时消息信令,实时消息客户端22接收实时消息信令并作出应答和反馈。

中继服务器2同时包含实时音频流编码转换处理和全双工控制信令处理两个进程:

1、实时音频处理:基于实时消息协议10传输的来自微信小程序1的实时音频流,由即时压缩模块21完成实时音频流数据格式由acc_data压缩格式与pcm_data高保真格式之间的转换(aac,advancedaudiocoding,高级音频编码,是一种专为声音数据设计的文件压缩格式,能够压缩音频数据的大小;pcm,pulsecodemodulation,脉冲编码调制,数字通信的编码方式之一,主要过程是将话音、图像等模拟信号每隔一定时间进行取样,使其离散化,同时将抽样值按分层单位四舍五入取整量化,同时将抽样值按一组二进制码来表示抽样脉冲的幅值,具有高保真性。),从而实现在实时消息服务器20与实时消息客户端22之间的握手请求与应答。

2、全双工控制信令处理:基于websocket协议11,可在微信小程序1页面随时随地发起全双工控制信令(如页面停留时间超过3s,用户点击会话按钮,用户直接发起语言对话等),由控制信令转换模块24实现将websocket信令转换成能够被实时消息客户端22应答的实时消息信令;实时消息客户端22接收实时消息信令并对实时音频流进行控制与处理后,将反馈结果通过实时消息信令传输至控制信令转换模块24中,转换为websocket信令后传输至微信小程序1中,从而实现对实时音频流的全双工控制。

以上所述的实施例只是本发明的一种较佳的方案,并非对本发明作任何形式

上的限制,在不超出权利要求所记载的技术方案的前提下还有其它的变体及改型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1