6

我试图理解 RASA core git 中给出的示例。我看过一个例子

  • 迎接
  • utter_ask_howcanhelp
  • 通知{“美食”:“意大利”}
  • utter_on_it
  • utter_ask_location

但我不明白{"cuisine": "italian"}是什么。无论是插槽的默认值还是用户必须在输入字符串中提供意大利语。谁能帮我理解如何在 RASA 核心中写故事

问候

4

2 回答 2

9

任何对话流最强大的功能之一就是故事。这就是你如何告诉模型对话对话的可能流程是什么。

在您提出的问题中。显然意大利语不是默认值。通知{“美食”:“意大利”}

在这里,您告诉机器学习引擎您正在寻找一个 Intent 'Inform',该 Intent 'Inform' 将有一个名为美食的插槽。这里意大利语是一个例子。在运行时,它可以是任何东西。您还可以有另一个故事情节,其中 Intent 通知没有美食插槽。这个故事可能会在下一个对话中询问美食。

定义故事情节,不应与编程语言混淆。这只是机器学习算法的一个指示。

有关使用插槽的更多详细信息,请参见此处此处

于 2018-08-10T10:09:36.980 回答
3

这个故事描述了当用户说“我想吃意大利菜”之类的话时对话模型的表现。正如您所注意到的,插槽“cuisine”设置为值“italian”。

在餐厅示例中,美食插槽是一个简单的TextSlot. 这意味着对话模型只能查看槽是否有值。如果用户要求中国菜、泰国菜或其他任何东西,行为将完全相同。

如果您希望插槽的影响接下来的对话,您可以使用不同的插槽类型,例如分类插槽

于 2018-02-17T09:16:43.553 回答