Ibm cloud IBM Watson Assistant:如何允许从具有非条件子节点的对话节点中进行偏离?
我已经创建了一个聊天机器人来回答我网站上的一些几何问题。使用IBM课程中关于如何使其用户友好的示例,我有一个welcome节点询问用户名,然后在子节点中读取用户名,该子节点始终为true(“If assistant recognizes:”true),使用Ibm cloud IBM Watson Assistant:如何允许从具有非条件子节点的对话节点中进行偏离?,ibm-cloud,watson-assistant,Ibm Cloud,Watson Assistant,我已经创建了一个聊天机器人来回答我网站上的一些几何问题。使用IBM课程中关于如何使其用户友好的示例,我有一个welcome节点询问用户名,然后在子节点中读取用户名,该子节点始终为true(“If assistant recognizes:”true),使用 然后我看到大多数用户忽略了欢迎节点中询问他们姓名的问题,直接开始提问。我想启用对回答问题的节点的偏离,但在对话框生成器中,父节点不允许偏离,因为 “此节点的子节点阻止偏离-此节点的子节点 条件,所以它总是在之前触发 离题发生了。” 在子节点
然后我看到大多数用户忽略了欢迎节点中询问他们姓名的问题,直接开始提问。我想启用对回答问题的节点的偏离,但在对话框生成器中,父节点不允许偏离,因为
“此节点的子节点阻止偏离-此节点的子节点
条件,所以它总是在之前触发
离题发生了。”
在子节点中,不启用偏离,因为
“此节点没有子节点如果节点具有
没有子项,因为流已结束。”
有什么办法解决这个问题吗?如果您要询问用户的姓名,插槽是最好的选择。以下是如果未提供用户名,如何提示用户输入用户名 在使用slot之前,我建议您创建一个实体(@name)和一个可选的intent(#ask-for-name)。查看有关使用IBM Watson Assistant检测名称和位置的更多信息
- 在欢迎节点上,单击自定义并启用插槽。这将向节点添加一个新节
- 在
检查
下,输入实体@name。将响应保存在上下文变量($name)中
- 如果回答中没有姓名,请提示提问
请在询问几何图形之前提供您的姓名Q
管理上下文
时,您可以看到响应中的名称已分配给$name
,现在您可以在任何其他节点中使用$name来称呼此人
谢谢。如果您没有在对话框中使用可选意图(#询问名称),其目的是什么?这将在对话框中显示,而不是不相关的。确保有正确的意图,而不是表现出无关的意图