文章简介:
本篇文章对UNIT的操作和注意事项进行详细说明,内容包括:
建立场景
配置对话单元/问答单元/高级设置
【配置对话单元】
【配置问答单元】
【更多设置】—【高级设置】
由于篇幅限制,本篇文章介绍一部分操作,下篇文章介绍其他部分的操作。
建立场景
后续将在场景中配置一系列相关的对话单元、问答单元、对话样本、对话模板、问答集来完成该场景的所有对话交互任务。例如,要实现机票服务的业务,我们建立一个名称为“电影票小助手”的场景。
配置对话单元/问答单元/高级设置
【配置对话单元】
一个对话单元代表一组特定意图的对话。例如“BOOK_TICKETS”代表用户意图为订电影票的一组对话,“HELLO”代表用户意图为打招呼的一组对话。在【技能管理】—【自定义技能】—【新建单元】—【对话单元】中建立对话单元,步骤如下:
1. 设置【用户问】——填写意图信息
2. 设置【用户问】——建立词槽
在“BOOK_TICKETS”的意图中,包含的关键信息有“电影名称”、“电影院”、“看电影日期”等,那么“电影名称”就是一个词槽,该词槽对应的关键词就是“《芳华》”、“《心理罪》”等;“电影院”也是一个词槽,该词槽对应的关键词就是“天幕新彩云影城”、“首都电影院”等;“看电影日期”也是一个词槽,对应的关键词是“x月x日”、“明天”、“周五”等。
1) 要添加的词槽在该场景下未建立,则【添加方式】选择“新建自定义词槽”:
设置词槽名称、描述、澄清话术
澄清话术用于词槽信息缺失时场景bot主动询问词槽信息的话术,如“哪天看电影呢”询问“日期”词槽。
下一步【选择词典】,可上传0个或1个自定义词典,可选择0个或多个系统词槽词典
自定义词典是配置者自行设置的词典,对话系统进行词槽识别时,会优先考虑自定义词典中的词汇;
自定义词典中支持正则表达式,正则表达式前面需要加$$$进行区分;
系统词槽词典是unit内建的部分常用词槽词汇,系统内建词槽是无法被查看和修改的。
2) 要添加的词槽在该场景下已建立,则【添加方式】选择“复用自定词槽”
在“词槽名称”中选择词槽、设置澄清话术
下一步【选择词典】,无需进行配置
3. 设置【用户问】——调整词槽澄清顺序
1) 词槽建立后显示在词槽列表中,【上移】【下移】按钮用于调整词槽澄清顺序;
2)【编辑】按钮用于修改词槽的澄清话术和词典;
3)【解除关联】按钮用于解除当前词槽与当前意图的关联,但不会从场景中删除词槽;
4) 彻底删除词槽,需先解除和所有意图的关联关系,再到【单元配置】—【列表总览】—【词槽】中完成;
5)【单元配置】—【列表总览】—【动作】中展示该场景中配置的答复动作、引导动作、词槽澄清动作、系统自动生成意图澄清动作;
4. 配置【场景bot回应】
以下3种回应方式选至少选择1个,选择多个时可配置优先级:
1) 选择【答复】(以下答复方式2选1)
选【文本内容】:设置bot“答复文本”和“触发规则”;
“答复文本”是一句话答复,如“好的,稍后将取票信息发送到你的手机”;
“触发规则”是场景bot答复的条件,当“触发规则”满足时场景bot用“答复文本”答复;“触发规则”可以设置多组触发规则,多组规则间的关系是“或”。
选【执行函数】:设置“执行函数名称”和“触发规则”;
“执行函数名称”是开发者在自身产品中定义的函数名,unit提供的API结果中显示应该执行函数“func()”,函数“func()”需要在开发者自身的产品中实现与执行;
“触发规则”是场景bot答复的条件,当“触发规则”满足时场景bot用“执行函数”答复;“触发规则”可以设置多组触发规则,多组规则间的关系是“或”。
2) 选择【引导至对话单元】(可添加多个引导)
对话系统除了直接答复用户,还可以通过配置引导动作,引导用户进一步明确需求。
设置【引导话术】
如上图例子“电影信息如下:是否确认信息(请回答“是”或“否”)?”
设置【标对话单元】(一个引导最多可添加3个目标对话单元)
如上图例子,当场景bot说“电影信息如下:是否确认信息(请回答“是”或“否”)?”用户回应“是”则转向“ASK_USER_INFO”对话单元,用户回应“否”则转向“NO”对话单元。
设置【触发规则】
最多只能添加1组触发规则,可以无触发规则。
3. 选择【引导至问答单元】
可添加多个问答单元引导,设置相应规则满足业务不同场景。
1) 设置【引导话术】
2) 选择【目标问答单元】(只能选一个)
3) 添加【触发规则】
【注】
未创建任何规则时将恒触发当前动作
一组触发规则内规则的关系是“并”,多组触发规则间的关系是“或”
引导至对话单元,触发规则只能添加一组,但是能添加多个对话单元
若触发条件满足,则执行相应的回应方式(回复、引导至对话单元、引导至问答单元)
若触发条件不满足,则澄清规则内的词槽,澄清顺序按照词槽列表中的“澄清顺序”进行
5. 点击【保存】
最后点击【保存】才可以保存该对话单元的配置。
【配置问答单元】
一个问答单元代表一类问答主题。创建后会在数据中心生成同名问答集,问答集可用于存储和编辑问答对。问答单元主要用于固定问答场景,配置简单(一键上传即可)但灵活性较差。对话单元可引导至问答单元。在【技能管理】—【自定义技能】—【新建单元】—【问答单元】中建立问答单元:
配置意图名称和意图别名
意图名称用于可用于描述当前问答单元主题的目的,如查询机票预订需要的信息
【更多设置】—【高级设置】
更多设置用于进行场景级配置,包括“对话状态重置”的配置(对话状态指词槽的填充信息,对话状态重置也就是遗忘规则)与“异常答复话术”的配置,修改后需重新训练模型才可生效。
1. 设置【重置对话条件时机】
即 “对话状态重置”的配置。可按照意图切换重置,或按照对话次数重置,满足其一即可重置对话状态;也可选择永不重置对话状态。
1)【切换意图时自动清空session】
选择“不重置”:切换意图(识别到用户输入内容对应意图与当前意图不一致)时,词槽信息保留到新的对话单元;
选择“重置”:切换意图时,词槽信息全部清空;
2)【固定对话次数清空session】
选择“不重置”:无论对话次数是多少,都不清空词槽信息;
选择“重置”,选择对话次数“x”:对话次数x之前的词槽信息被清空;
2. 设置【Bot意图识别异常答复话术】
用于场景bot在未准确识别终端用户输入内容时的话术,分为【识别异常话术】和【对话单元意图澄清话术】。
1)【识别异常话术】
用于场景bot未识别到用户意图(即fail_action)时,回复给用户的话术
2)【对话单元意图澄清话术】
用于场景bot从用户提供的内容中同时识别到多个意图,需要用户再次确认(即intent_clarify)时,回复给用户的话术
3. 设置【其他】
当用户问题与系统答案的匹配度高于阈值(或阈值选择“无”), 系统返回匹配度最高的唯一答案,反之,系统会提供近似问题对用户供选择。
由于篇幅的限制,本篇文章介绍一部分的操作。下篇文章将介绍UNIT的其他操作和注意事项。
专注于智能对话服务的创业公司
欢迎关注“BotOrange”
领取专属 10元无门槛券
私享最新 技术干货