快速开始
随着AI技术和理念的兴起,很多产品都希望采用对话式的人机交互方式。然而对话系统(对话技能、对话机器人)的研发对于大多数开发者而言却是一个很困难的工作,对技术和数据的要求都很高。
为此,百度将积累多年的自然语言理解与交互技术对外开放,推出了智能对话定制与服务平台UNIT(Understanding and Interaction Technology),将业界领先的技术能力输出给广大的开发者,以便降低对话系统的研发门槛。
接下来,你只需花费3~5分钟的时间,即可配置出一个完整的对话技能了。
一个简单的对话技能从无到有需要以下四个步骤。
- 创建技能
- 配置意图及词槽
- 配置训练数据
- 训练模型
其中创建技能,配置意图和词槽这两步是为了定义对话能力。
比如创建一个叫做“查天气”的对话技能,查天气即为该技能的对话能力,这个技能里包含了查天气的对话意图,其中时间是这个对话意图的词槽,今天为时间这个词槽的字典值。
标注训练数据和训练对话模型是为了让UNIT理解你的对话能力。其中标注训练数据主要是通过编辑对话模板和对话样本来完成,可以配置对话模板或对话样本,训练模型则是最后一步,随后即可生成对话模型,此时就可以在UNIT上完成自己的对话了!
创建技能
注:技能即代表某一个对话场景下的对话能力,比如打开电视指令就是针对开电视的一个技能。
- 进入UNIT平台-我的技能,选择新建自定义技能,然后选择对话技能,例如取名为“查天气”。点击“创建技能”按钮完成技能创建。
配置意图及词槽
注:意图包括对话意图和问答意图,需要关键信息的应该使用对话意图,比如订购火车票意图,里面需要车次,出发时间等关键信息,则应该使用对话意图,问答意图更偏好于解决FAQ类型的问题。比如退票费怎么收?
- 点击进入查天气技能,选择新建对话意图。
- 进入新建对话意图以后,填写意图名和别名。本例中意图名取为WEATHER,别名为查天气。
- 在新建对话意图页面,可以添加词槽,这里添加以下几个词槽信息。 注:UNIT为大家提供了强大的系统词槽,并在不断丰富中,词槽的词典值可以一键选用系统提供的词典,也可以自己添加自定义词典。
词槽名 | 词槽别名 | 系统词典 | 词槽必填 | 澄清话术 |
---|---|---|---|---|
user_time | 时间 | sys_time(时间) | 必填 | 请澄清一下:时间 |
user_loc | 哪里 | sys_loc(地点) | 必填 | 请澄清一下:地点 |
-
配置答复
- 填写完意图和词槽之后,需要配置回复及触发规则,当满足相应规则之后,即可触发相应回复。
- 这里填写回复内容为:”正在为您查询天气...“
- 规则可以选择智能生成。
- 点击保存后,意图配置完成啦。
配置训练数据
简单而言,根据规则将一句话拆解成不同的部分标注好,再训练出对话模型,这样UNIT就可以理解用户的对话了。当你对话样本数据量不够多的时候,训练模板可以帮你快速搭建一个对话模型;当你有大量对话样本数据量时,可以使用对话模板+对话样本,使你的对话模型更加强大!
点击左边菜单栏训练数据-对话模板,新增一个对话模板,添加时间,地点词槽,还有文本”天气“,作为三个模板片段。 注意:这里user_loc和user_time的两个模板片段前面都选择了否,”天气“选择了是,意味着当一个Query进来时,进行模板匹配时,没有命中时间和地点,只要命中了天气,即命中了该模板。而且这里调节了模板的阈值,如果阈值0.7的话,有些Query就识别不了了哦,具体原因可以点击阈值旁边的问号查看阈值的详细解释哦~
点击保存,一个对话机器人马上就要诞生啦!
注:训练模板中可以配置特征词,来辅助匹配用户的Query,达到更好的理解效果,还可以通过调节模板的阈值,是否匹配等功能,以达到更强大的泛化能力,可以深入研究一下哦~
训练模型
选择左侧导航栏中的“技能训练”,点击训练并生成新模型。
验证效果
等待模型训练完成后,点击左侧导航栏的测试按钮,发送”明天北京天气如何?“试试吧!