如何在Rasa Core中创建多行机器人响应?

时间:2018-11-17 09:40:45

标签: rasa-nlu rasa-core

谁能帮助您获得多行机器人响应。 以及如何在Bot响应中获取项目符号。我尝试使用>*并输入key。似乎没有任何作用。 Rasa响应模板是否支持HTML标签?

2 个答案:

答案 0 :(得分:2)

消息的可视化取决于您使用的输出通道。 因此,只要您的输出通道可以正确呈现它,就应该有可能在您的漫游器答案中提供HTML标签。对于简单的换行符,请尝试在邮件中添加“ \ n”,例如:

utter_message:
  - text: "First line\nSecond line\Third line"

您还可以在yaml文件中使用多行字符串,然后生成包含换行符(see here for examples)的字符串。下面的块与上面的示例相同:

utter_message:
    - text: >
        First line
        Second line
        Third line

要包含项目符号,只需添加项目符号的unicode character,例如:

utter_message:
    - text: >
        • First line
        • Second line
        • Third line

答案 1 :(得分:1)

我认为换行符并不对应于“多个漫游器响应”(我在即时消息传递/聊天频道上用多个方框来解释。例如,在Telegram中就是这样。所以我认为@Tobias解决方案不是确定的。

具有单独的框式消息的解决方案可以是将原始的单个发音分成一系列发音,然后插入“故事”中,如以下RASA论坛回复所述:https://forum.rasa.com/t/split-utterances-templates-into-multiple-answers/1204/2?u=solyarisoftware

这是一个解决方法,但从对话设计的角度来看,这值得商bat。也许我想要不同的框,不仅是为了用换行符漂亮地打印文本,而且还要传达不同的语义。

例如,如果用户说:

你好

机器人可以回答问候,并引入新的问题/提示以使对话框继续。 这样就应该有一个新的盒子,由2个盒子组成。

所以机器人回复最好是:

你好!


你好吗?