假设我想在WIT.AI中实现这种对话:
- (1) Hi. I'm bot. What do you want?
- I want a cookie. [intent: cookie]
- (2) Are you sure you want a cookie?
- Yes [intent: yes]
机器人问第一个问题
- (1) Hi. I'm bot. What do you want?
我不希望机器人能够理解意图"yes"
。我想禁止检测到此意图,因为我们没有询问用户任何问题。
当机器人问(2)个问题
- (2) Are you sure you want a cookie?
我只想让机器人理解的唯一意图是"yes"
和"no"
。这是对话框的一种分支,在该对话框中,用户很可能不会说“是”或“否”以外的任何内容,因此我想禁止其他意图检测此特定请求。
为什么?如果只需要在对话的这一点上留下要检测的意图,则WIT.AI可以更轻松地检测到正确的意图。
在dialogflow中,这称为“输入上下文” 。如果在针对此意图的请求中未设置具有特定值的输入上下文,则 AI不会尝试检测该意图。
这是一个有用的技巧,可以在存在数百种防止误检测的意图时,将不同对话的临时不需要的意图隔离开。
如何在WIT.AI中仅使所有意图中的一部分能够被检测?