Watson的Elementary:与Voximplant集成


使用自然语言(NLU,NLP)是IT巨头之间激烈竞争的领域。 以及AI的发展。 好吧,因此,这些集合的交集也是一个热门领域,观察和学习新事物很有趣。 Voximplant长期以来一直与Google Dialogflow成为朋友,而且效果如此之好,以至于我们为此集成程序Dialogflow Connector做了一个包装。 IBM有一个类似的产品,即基于Watson的语音代理程序,它可以执行与自动化与客户端进行充分,灵活的通信以替代传统IVR的相同任务。 我们在一个简单的演示中尝试了该技术,今天我们将一步一步地告诉您如何实现该技术。 同时,您将阅读本文,我们的开发人员将继续为该集成做包装...

我们该怎么办?


没有火箭科学-我们将创建一个我们称之为的简单机器人,他会打招呼,并提供两种选择:一种会循环对话,另一种会结束对话,而机器人会说再见。 注意:在撰写本文时,Watson仅支持四种语言-英语,阿拉伯语,葡萄牙语和中文(简体)-因此,该演示将以英语为最熟悉的语言。

资源创造


如果您没有IBM Cloud帐户,请在此处注册 。 转到您的帐户,在右上角单击创建资源,资源目录将打开。 在左侧,选择“ Web和应用程序”类别,然后在屏幕的右侧,单击“带有Watson的语音代理”。


您可以默认保留所有字段(服务名称,地区等)-在屏幕底部,单击“创建并去泡茶”(这是个玩笑,因为IBM Cloud并不总是很快转过来的)。 创建资源后,您将被带到这个新创建的资源的仪表板。 在这里,您将看到资源的名称,位置(华盛顿特区)以及资源管理菜单-它位于左侧。 很快我们将需要此菜单中的“管理”项目,但首先我们需要购买...

植体编号


座席需要一个可以联系到他的号码。 为此,请转到Voximplant面板的“号码”->“我的电话号码”部分,在右上角单击“购买新电话号码”。 虚拟号码适合我们的用途-选择“测试号码”开关,从列表中检查一个号码,然后单击底部的“购买”,然后在打开的窗口中单击“购买”。


您将立即在号码列表中看到该号码。 将其复制并返回到IBM Cloud,以及具有Watson资源的语音代理。

代理创建


提示。 如果您关闭了带有资源的选项卡,那么以下是从主页快速打开资源的方法。 在cloud.ibm.com 仪表板上,单击服务一词,将打开您帐户的当前资源列表。


同时,服务组将已经部署,并且语音代理将在其中可见。 单击它-欢呼,您再次打开了所需的资源。



在左侧菜单中,选择管理,然后在屏幕右侧,单击创建语音代理按钮。 输入代理的名称并插入购买的虚拟号码,向下滚动-创建语音代理。


IBM Cloud会稍作思考,并显示有关成功创建代理和3种嵌入式服务的消息。 好吧,现在我们需要教代理商如何...

与皮包聊天


在左上角,单击汉堡包图标,选择资源列表。 在资源列表中,选择VoiceAgent-WatsonAssistant(列表底部)。 在控制面板中,单击启动工具。 Watson Assistant控制面板将打开。 在顶部,选择“技能”选项卡。 您将看到已经有VoiceGatewayConversation技能-这是向导在创建代理时添加的一组短语和对话框流程图。 您可以使用此技能,但是为了您的兴趣,我们建议您创建自己的技能。

为此,在“技能”选项卡上,单击“创建技能”。 将其命名为“简单技能”,保留语言为“英语(美国)”,然后单击“创建对话技能”。


在技​​能内,您需要三个选项卡:
  • 意图-客户的意图。 从本质上讲,这些是短语及其变体。
  • 实体-用于识别的关键字及其同义词;
  • 对话框-对话框流程图。

在“意图”选项卡上,添加语句#whatcanido并为其写下几个选项(“我能做什么?”,“向我显示选项”等)。

在“实体”选项卡上,添加:
  • 继续使用同义词“继续”,“继续”;
  • 带有同义词“ options ”,“ option”,“ choices”的options
  • 使用同义词“ stopped”,“ quit”停止。

在“对话框”选项卡上,单击“创建”对话框,将出现“欢迎”和“其他”块。 打开“其他任何内容”,然后按照屏幕快照中的设置进行设置(文本:“您可以选择继续此无意义的对话,也可以停止它。说“继续”或“停止”。) 请注意,在识别条件下,我们不仅添加了意图,而且还添加了安全性关键字。


然后单击“其他”块上的三个点,选择“添加子节点”,创建一个继续块。 在其他内部创建,创建另一个子块-stop 。 阻止设置:



因此,机器人将在用户说“继续”时无休止地重复关于选择的文本,或者在用户说“停止”时结束对话。 确实,毫无意义的谈话。
如果您懒于执行所有这些操作,则可以下载我们的json文件并将其作为一种技巧导入。 为此,在“技能”选项卡上,单击“创建技能”,切换到“导入技能”选项卡,单击“选择JSON文件”,指定下载的文件,最后单击“导入”。

最后但并非最不重要的,在这个阶段:返回cloud.ibm.com ,打开“资源”列表,单击带有Watson的Voice Agent,转到“管理”选项卡。 在habr-watson代理中,单击三个点,然后选择“编辑代理”。 在“对话”部分中,更改“技能”名称以指示您刚刚创建的技能:


做完了,现在代理可以与人沟通了! 最后是接触,即...

Voximplant应用程序和脚本


Voximplant控制面板中,创建watson应用程序。 以下所有步骤必须在此应用程序内完成。 转到“方案”选项卡,并使用代码创建一个watson方案:
require(Modules.ASR) VoxEngine.addEventListener(AppEvents.CallAlerting, (e) => { let call2 = VoxEngine.callSIP("sip:699100484@us-east.voiceagent.cloud.ibm.com") const recognition = VoxEngine.createASR({ lang: ASRLanguage.ENGLISH_US }) let botSpeech = "" recognition.addEventListener(ASREvents.Result, e => { botSpeech += e.text botSpeech.includes("goodbye") ? VoxEngine.terminate() : Logger.write("There is no 'goodbye' yet.") }) call2.addEventListener(CallEvents.Connected, () => call2.sendMediaTo(recognition)) VoxEngine.easyProcess(e.call, call2) }) 

不要忘记用您先前购买的电话号码替换为在callSIP方法调用中的IBM代理设置中指定的电话号码!

然后转到“路由”选项卡并创建一个watson-rule。 指定watson-scenario脚本:

最后,转到“数字”选项卡,其中将有“附加”部分(到目前为止为空)和“可用”。 切换到“可用”,标记购买的号码,然后单击“附加”。


在打开的窗口中,指定watson-rule,然后附加。


现在,该数字将出现在“附件”部分中。 在这里,您将看到可以拨打的号码,然后以提示音模式输入购买的虚拟号码,并与IBM bot进行高度智能的对话。


Source: https://habr.com/ru/post/zh-CN452282/


All Articles