SAP Conversational AI 进阶

经过

https://blog.****.net/elikai/article/details/89215282 和 https://blog.****.net/elikai/article/details/89215352

两篇文章的介绍,我们对SAP Conversational AI有了初步的了解。接下来我们要完成一些复杂的对话功能,就需要进行更多的设计和开发工作。

我们想要设计的聊天机器人,是需要有互动聊天的功能的。如果在商业活动中,能够通过问答的形式,层层将客户的需要梳理出来,最终达到业务需要。幸运的是SAP Conversational AI拥有让这些愿望实现的功能,而且操作简单,极易上手。下面我们就来介绍下在SAP Conversational AI里面有哪些功能帮助我们实现问答机器人。

我们在build的tag下新建一个skill

SAP Conversational AI 进阶

点击这个skill,进入到这个skill的设置界面。

SAP Conversational AI 进阶

首先,我们看到triggers的tag下,这个配置的东西是触发此skill的前提条件。在这里以@开头的代表的是intent,#开头的代表的是当前语句的entity,_开头的是在系统中的数据(这个可能现在还不能理解,没关系,往下看)。在这里我们设置好对这个skill的触发条件后,当这个条件一旦满足,那么这个skill就会被触发,就可以完成你所想要的功能了。

SAP Conversational AI 进阶

再切换到requirements的tag下面。在对话中,我们需要机器能够记录我们之前说的话里面包含的具体信息。在这里,我们就可以将当前语句能够抽取出来的entity写入到内存中。下图中,我们将money entity存入到系统的内存中,右侧显示的是内存中存放的形式,可以发现是以json格式存放的。既然是json,聪明的童鞋也就知道了我们可以自己写js把它取出来。

SAP Conversational AI 进阶

再切换到最后一个tag:Actions。这个tag中,是我们主要编辑skill具体功能的地方。可以设定不一样的触发条件,来触发不一样的动作。

SAP Conversational AI 进阶

对于动作:

我们可以让它回复不同种类的信息

SAP Conversational AI 进阶

可以调用外部API

SAP Conversational AI 进阶

进行异常处理

SAP Conversational AI 进阶

跳转到在你当下bot中其它的skill

SAP Conversational AI 进阶

也可以对内存进行操作,你可以在内存里新建一个变量,然后将值赋给它。那么问题来了,值在哪里呢?

SAP Conversational AI 进阶

大家可以看到在页面的右下角有个bot,你可以在这里随时测试你的bot。让我们先随便和它聊一下天。

SAP Conversational AI 进阶

可以看到在bot回复的语句右上角有个感叹号,点击它。在这个对话中所有的信息都以json的格式显示在里面,这里就是我们取数据的地方。

SAP Conversational AI 进阶

然后我们回到Actions中,以js的格式取出你要的数据。例如:

{ "raw": "{{nlp.entities.duration_jp[0].raw}}" }。

通过这一系列的配置开发,就把一个skill设计好了。

 

要想完成一个功能强大的对话机器人,你需要先设计好整个流程,建好intents,打好entity的标记,然后根据流程设计对应的skill,最后再以大量的数据去和你的bot的进行测试聊天。慢慢的你的bot就会越来越强大了。