你能在机器人作曲家的子对话框中添加意图触发器吗

can you add intent triggers to child dialog in bot composer

在 Microsoft Bot Composer 中,可以将意图添加到子对话框,还是只能添加到主对话框?

我看到一个在子对话框中添加意图的选项,但是当我测试(LUIS 或正则表达式)时,它们没有被识别。但是,当我将它们添加到主对话框时,它们会起作用。

这是否意味着所有意图都必须只加载到主对话框?那么intent recognized触发器有什么意义呢?

示例案例:

我创建了 2 个意图。 test2custom。我把 test2 放在主对话框中。对于 custom,我在主对话与子对话中测试了完全相同的意图(使用相同的短语)。

第一种情况,我得到了正确的识别。另一方面,它要么进入错误的意图(test2),要么给出 'not understood' 响应。

更新: 根据答案和进一步测试,似乎只有在对话已经打开时才能识别对子对话的意图。即,意图在对话开始时是不可见的,只有在某些东西打开子对话框并且对话框继续打开时才可见。

是的,您还可以为子对话框添加意图。 在子对话框中,您必须将“自动结束对话框”属性 设置为 false(默认为 true),直到调用结束对话框,所有意图(子对话框意图)都由子对话框处理。

两步:

  1. 转到触发子对话框的“开始新对话框”activity 设置,将“Activity 已处理”设置为 false
  2. 在子对话框中,删除默认创建的“BeginDialog”触发器。

这会将原始用户输入转发给子对话框及其 Luis,而无需再次询问用户。无需像其他答案那样设置错误的“自动结束对话框”。