最近项目需要语音上下文对话,找了几家都没有找到可以定制个性化上下文场景对话的技术,一般都是固定场景的对话,刚好,百度近期推出了UNIT技术,感觉刚好可以实现功能,可能需求与UNIT技术功能不是十分匹配,但是可以满足当前项目需求,于是就花了一天多的时间研究了一下百度UNIT技术并总结了一下简单的使用流程。这一块分两个部分来说,第一块是开发流程与自己的一点理解;第二部分是百度UNIT在线开发的一些简单界面介绍(如有不懂,具体请参见百度UNIT技术官网或者查看其文档)。
第一步:登录理解与交互平台UNIT官网
如下图1:点击UNIT,进入百度账号登录界面,登录之后,进入图2;
图 1
图 2
第二步:新建与编辑场景
如图2所示,进入之后就会出现已经创建过的场景,每一个创建过的场景有对应场景ID,场景名称,沙盒版本,模型生成时间,当前沙盒状态以及可执行操作等,也可以点击左上方的“新建场景”,出现下面图3编辑信息;编辑之后就开始场景的具体编辑了。(如果有操作问题,点击右上方的帮助中心)
图 3
图 4
如上图,是已经创建好的单元(自定义技能或者称之为意图),也可以点击“预置技能”,添加系统自带的“问候”和“电视剧指令”单元(图5所示:“问候”里面主要是简单问答单元;“电视指令”里面主要是对话单元等)
图 5
“自定义技能”里面的“对话单元”编辑我会单独介绍,里面有许多细节。
第三步:“数据中心”介绍与使用
点击图4左侧的“数据中心”,进入图6界面;可以测试自己编辑的场景对话,还可以编辑“对话样本”,“对话模板”和“问答集”;其中
场景bot:用于测试场景对话,添加对话样本,训练模型等
对话样本:用于场景机器人学习的对话材料;比如你在里面添加语料“我要办卡”“我想办卡”“我准备办卡”“我想办理银行卡”“我要办理银行卡”,把这些对话样本都与“办卡业务”这个意图绑定;机器人经过训练形成新的模型之后,下次你再说“我准备办理银行卡”,机器人可能就自动将这句话对应到“办卡业务”意图上,给出相应的答复;所以对话样本越全面越丰富,训练出来的机器人也就会越智能。(注:可以通过高级功能实现自动生成对话样本,具体请点击)
对话模板:用于场景机器人对话的固定对话规则,你可以通过普通文本与词槽组合形成。需要绑定到特定意图;有点类似问答集
问答集:场景机器人的简单问答,问题与答案可以是一对一,一对多或者多对一关系。
(注意:对话样本,对话模板必须要标注才能生效)
图 6
第四步:“更多设置”介绍与使用
点击“更多设置”展开,里面有“列表总览”和“高级设置”两个字列表;
列表总览:显示该场景下的所有词槽和动作(包括所有的意图和澄清话术,澄清话术类似于我在第一部分中说的中转意图)
高级设置:“重置对话条件时机”与“Bot意图识别异常答复话术设置”
(1)重置对话条件时机:设置在对话的过程中,意图切换的时候,是否清空session(session指一次网络会话,如果不了解,可以点击简单了解一下session概念-百度或者session概念-维基)
(2)Bot意图识别异常答复话术设置:有两种情况,一种是未识别到意图,给出相应答复;一种是识别到一句话绑定了多个意图,给出相应答复从而让提问者(人)换一种场景机器人可以识别提问
(3)其他:场景机器人识别阈值设定
图 7
图 8
第五步:“训练与验证”介绍与使用
点击“训练与验证”,出现图9界面;点击“训练并生效新模型”其中
(1)进度:“进度”会显示“生效中”,如图是生效完成的;最新的一个版本显示“已生效”,早期版本显示“已完成”;
(2)状态: 生效之后还需要启动,刚开始“状态”显示为“启动中”,启动完成之后显示“启动成功”,这个过程需要一点时间;如图9所示,因为我的场景模型三天没有使用了,该场景会自动停止。
图 9
第六步: 场景发布
图 10
方式1:通过百度云调用
点击“通过百度云调用”,进入图11界面,通过点击创建应用,配置应用信息,添加对应的场景(已经启动成功)到相应的应用;然后就可以通过AppID,API Key(AK),Secret Key(SK)访问使用了。
图 11
方式2:发布到DuerOS(目前没有使用过)
点击“发布到DuerOS”,进入图12界面,点击“发布”,弹出图13界面,然后配置API资源路径,具体参见资源API说明
图 12
图 13
总结:有任何疑问,以百度官方资料为准,请阅读百度官网帮助与文档资料;也可以看UNIT官方教学视频,但是建议再看之前多读读文档,还有官方论坛,QQ群:584835350等
注:欢迎扫码关注