了解RASA核心故事

问题描述 投票:4回答:2

我试图理解RASA核心git中给出的示例。我看过一个例子故事

  • 迎接
  • utter_ask_howcanhelp
  • 告知{“cuisine”:“italian”}
  • utter_on_it
  • utter_ask_location

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

问候

rasa-nlu
2个回答
6
投票

任何对话流程中最强大的功能之一就是故事。这就是您告诉模型会话对话的可能流程的方式。

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

在这里,您正在告诉机器学习引擎您正在寻找一个Intent'Inform',它将有一个名为cuisine的插槽。这里意大利就是一个例子。在运行时,它可以是任何东西。您还可以拥有另一个故事线,其中Intent通知没有美食槽。那个故事可能会在下一个对话框中要求烹饪。

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

有关使用插槽的更多细节可以在herehere找到


2
投票

这个故事描述了对话模型在用户说“我想吃意大利食物”之类的情况下的表现。如您所知,插槽“cuisine”设置为“italian”。

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

如果您希望插槽的值影响前进的对话,您可以使用不同的插槽类型,例如一个categorical slot