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

How do I create a multiline bot response in Rasa Core?

任何人都可以帮助如何在多行中获得机器人响应。 还有如何在 Bot 响应中获取项目符号。我尝试使用 >, * ,输入密钥。似乎没有任何效果。 Rasa 响应模板是否支持 HTML 标签?

消息的可视化取决于您使用的输出通道。 因此,只要您的输出通道可以正确呈现它,就应该可以在您的机器人答案中提供 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

我认为换行符不对应于“多个机器人响应”(我在即时 messaging/caht 频道上用多个框解释。例如,在 Telegram 中就是如此。所以我公平@Tobias 解决方案是'确定的。

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

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

例如,如果用户说:

Hello

机器人可以回复问候语并引入新的 question/prompt 让对话继续。 对于 2 个盒子的序列,这可能值得一个新盒子。

所以机器人回复最好是:

Hello!


How are you?