Ibm cloud IBM Watson Assistant:如何允许从具有非条件子节点的对话节点中进行偏离?

Ibm cloud IBM Watson Assistant:如何允许从具有非条件子节点的对话节点中进行偏离?,ibm-cloud,watson-assistant,Ibm Cloud,Watson Assistant,我已经创建了一个聊天机器人来回答我网站上的一些几何问题。使用IBM课程中关于如何使其用户友好的示例,我有一个welcome节点询问用户名,然后在子节点中读取用户名,该子节点始终为true(“If assistant recognizes:”true),使用 然后我看到大多数用户忽略了欢迎节点中询问他们姓名的问题,直接开始提问。我想启用对回答问题的节点的偏离,但在对话框生成器中,父节点不允许偏离,因为 “此节点的子节点阻止偏离-此节点的子节点 条件,所以它总是在之前触发 离题发生了。” 在子节点

我已经创建了一个聊天机器人来回答我网站上的一些几何问题。使用IBM课程中关于如何使其用户友好的示例,我有一个welcome节点询问用户名,然后在子节点中读取用户名,该子节点始终为true(“If assistant recognizes:”true),使用

然后我看到大多数用户忽略了欢迎节点中询问他们姓名的问题,直接开始提问。我想启用对回答问题的节点的偏离,但在对话框生成器中,父节点不允许偏离,因为

“此节点的子节点阻止偏离-此节点的子节点 条件,所以它总是在之前触发 离题发生了。”

在子节点中,不启用偏离,因为

“此节点没有子节点如果节点具有 没有子项,因为流已结束。”


有什么办法解决这个问题吗?

如果您要询问用户的姓名,插槽是最好的选择。以下是如果未提供用户名,如何提示用户输入用户名

在使用slot之前,我建议您创建一个实体(@name)和一个可选的intent(#ask-for-name)。查看有关使用IBM Watson Assistant检测名称和位置的更多信息

  • 在欢迎节点上,单击自定义并启用插槽。这将向节点添加一个新节
  • 检查
    下,输入实体@name。将响应保存在上下文变量($name)中
  • 如果回答中没有姓名,请提示提问
    请在询问几何图形之前提供您的姓名Q
现在,当你尝试的时候。这是您看到的内容,当您单击
管理上下文
时,您可以看到响应中的名称已分配给
$name
,现在您可以在任何其他节点中使用$name来称呼此人


谢谢。如果您没有在对话框中使用可选意图(#询问名称),其目的是什么?这将在对话框中显示,而不是不相关的。确保有正确的意图,而不是表现出无关的意图