快速入门案例
快速入门介绍
本文介绍如何使用控制台快速创建一个智能对话机器人实例,并进行体验和测试,用时大约20-30分钟。需要注意的是,本文仅介绍创建一个机器人在各个模块中的最少必备环节,更多的功能使用请查阅操作指南。
基本操作流程如下图所示:
1.开始创建:创建agent,开始机器人配置。agent可以对应理解为租户的概念,每个agent下的数据和管理是独立使用的。
2.语义语料填充:创建实体、意图、问答、闲聊等语料。
3.基础资源建设:设置必须的基础资源内容。
4.会话流程配置:配置会话流程以实现多轮对话效果。
5.BOT装配调试:将配置的语料、资源、流程等内容在bot中进行装配,并进行测试。
6.发布使用:调试完成后,将BOT发布到正式环境,即可正式对外提供服务。
操作步骤
1.开始创建
点击新建agent,在弹窗中填写相应内容,保存后即创建成功
在列表页点击管理平台进入agent配置
进入后可以看到agent的管理菜单
2.语义语料填充
我们以一个[租车]的简单案例来进行语料填充的演示
第一步:实体
添加表示车型的实体
添加相应的实体值,并添加同义词以实现一定能力的泛化
开启一个日期实体和一个地点实体,以识别用户表达的时间和地点
第二步:意图
新建一个租车的意图
为这个意图添加一些意图示例以增加泛化能力
若仅想体验多轮对话的效果,可以直接跳到会话流程配置
第三步:问答(可选)
可以为租车配置一些特殊情况的问答
为刚才新增的标准问增加一些相似问以提升泛化能力
可以通过问题移动把此标准问移动到某一个目录下
第四步:闲聊(可选)
如果想要机器人响应一些业务无关的内容,可以统一添加到闲聊中
闲聊也可以添加相似问以实现语义的泛化
3.基础资源建设(可选)
变量管理
在流程中用到的变量可以在此页面进行注册,之后在会话流程中进行使用
接口指令
流程中可能要用到业务系统返回的值,可以在这里填写接口与业务系统对接,并依据业务系统定义的指令在此处声明,在流程中使用
声明了一个租车办理指令以返回办理结果
在指令中可以关联一个变量,声明一个办理结果变量(dealResult)并关联到指令上。这里的传入参数指的是业务系统可能会用到的变量,传出参数指的是业务系统可能会返回的变量。
绑定传入和传出参数
注:这里的绑定仅仅用于平台中使用,实际上不会对业务系统产生任何约束。变量都会通过context字段在会话接口中与业务系统进行数据交换,实际的交换实现参考业务系统对接
专业词库
专业词库在意图和问答识别时具备两个作用,一是在此处配置的词条在识别时不会被分词,二是用户表述该词条的同义词时与表述该词条具备相同含义和效果。
渠道管理
如果需要问答响应不同渠道的知识,可以在渠道管理中声明一个渠道,以实现多渠道答案,企业版支持多级渠道
4.会话流程配置
在建设好相应资源后,可以开始着手设计任务式对话的核心工作——会话流程的设计与配置。事实上,流程设计工作在准备语料之前就应该提前设计好,这样一方面可以提高整体设计的全面性提高工作效率,一方面也可以减少由于语料无规划导致的语义识别准确率不高的问题。
一般来说,在设计流程之前我们可以通过详细梳理业务流程,并绘制流程图,确定业务流程后再进行流程配置。
以一个简化的租车场景来搭建流程,首先建立一个流程片段
点击管理进入流程画布
双击节点条件,为其配置一个进入条件
注:为了方便阅读,可以给节点条件增加一个注释
双击创建出的根节点,对节点进行配置
由于是简化版租车,主要工作是进行实体采集,可以右键菜单选择实体创建模版,创建自动流程
在弹出对话窗口进行实体采集表单填写
确定后系统会自动创建实体采集流程。很容易发现规律,每一组实体采集流程是以三个节点为一组的形式,分别以话术引导、实体赋值和异常处理分工明确地完成了实体采集。
创建完成后,可以打开测试窗口,选择流程片段测试并选择刚才创建的流程片段。如此便可以测试会话的效果(在会话窗口打开调试模式可以跟踪节点并查看调试信息)
完整的对话效果如下
如果只是按照采集实体的模板创建流程,会发现在业务逻辑上有一些走不通,因此需要对流程进行一些调整。由于出发地目的地采用相同的实体,因此模板创建是自动创建了两组一样的采集流程,又由于判断条件相同,后执行的目的地采集的流程被跳过了。
首先需要修改两组节点的进入条件
看到系统自动创建了一个地点变量用来保存采集的地点实体值,可以分别将两组节点中的变量替换为之前定义的出发地变量(&start)和目的地变量(&end)。
将两组节点中使用到相应变量的地方进行替换
对话中就已经可以看到会增加对目的地的采集
但是最后结果输出时,并未正常显示
原因是没有对结果播报节点中的变量进行替换
将回复内容修改为:
信息收集完成,正在为您查询,请稍后...
您的租车信息如下:
日期:{% &sys_date %}
出发地:{% &start %}
目的地:{% &end %}
车型:{% &car_type %}
正在办理,请等待办理结果。
再次测试结果如下:
会话流程配置进阶(可选)
如果在上一部分基础资源中设置了接口指令,可以在流程结果播报节点勾选webhook,设置一个指令与业务系统通信,以返回业务办理结果。
业务系统可以通过直接返回结果(value)或者将结果以变量形式(context)返回给对话系统。可以给指令配置一些失败时兜底话术,或者在节点回复中将返回的结果拼接显示出来。同时可以将业务系统返回的结果变量(也需要提前在平台上定义声明)作为子节点进入条件,根据业务处理结果不同形成不同的分支。
注:对接业务系统的会话测试在第5节中会具体介绍
5.BOT装配调试
在准备好语义语料和会话流程以后,就可以把相应内容组装成BOT,以进行整体测试。组装主要有以下三个步骤:会话树装配、知识选择和BOT设置。
首先要新建一个BOT,选择会话BOT菜单进行新建。
点击管理BOT菜单,进入BOT装配页面
5.1 会话树装配
选择流程片段池中流程片段进行添加
5.2 知识选择
选择想要响应的问答目录
5.3 BOT设置
可针对各种情况对BOT进行一些事件或参数设置,或者对一些功能进行开关设置
以设置欢迎语为例,可以添加一个BOT欢迎语
或者是为用户设置推荐问题
甚至是个性化定义事件的回复或操作
还有对闲聊进行开关
同时可设置人设闲聊,当闲聊库无答案时,可基于人设配置回复答案
5.4 BOT调试
将BOT相关内容设置完成后,便可以开始对BOT进行调试。打开测试,选择BOT测试,选择刚才创建的BOT,并点击确定
由于刚才的设置,BOT会主动打招呼并推荐引导问题
可以继续测试租车的场景
也可以测试问答或者闲聊的效果
5.5 BOT调试进阶(可选)
如果之前有配置业务流程对接业务系统,可以在这里进行测试。点击mock配置,开启模拟调试
如果模拟业务系统返回value,结果如下
模拟业务系统仅返回变量不返回value,结果如下
读者可以探究如果业务系统二者都返回会有一些什么不同。
事实上,如果二者都返回,那么设置在返回节点处的节点回复会被value覆盖,但是在后续节点仍然可以使用返回的变量(dealResult)对应的变量值
另外,如果不对接业务系统,事实上也可以在变量mock中,直接模拟一个变量值。它与指令mock的区别在于无论该节点是是否勾选了启用webhook,这种变量mock都会生效,以确保流程的正常进行。这一点也留给读者自行去探索。
6.发布使用
当我们调试好一个BOT以后,确保使用正常以后,就可以提供对外服务了。在对外提供服务之前,要将其发布到正式环境,以确保后续修改配置时不会直接影响对外的服务。
首先提审BOT(如果是创建者本人,会自动通过审核)。
审核通过后才可以点击发布
点击发布,系统进入发布模式,此时的写操作都会被禁止。
发布过程中可以去执行别的读操作,发布完成后页面会自动刷新。
发布完成后可以在BOT卡片中看到正式环境中BOT的状态
也可以直接切换到正式环境去查看数据或进行测试
可以点击BOT服务窗,打开BOT服务页面对外提供服务