0

我创建了一个 HTTP(S)/JSON 连接器来连接我的 NLP 聊天机器人。但是我在写测试用例的时候遇到了一个问题。因为用户说一个问题可能有多个不同的回答。例如,我对机器人说“Hi”,机器人可能会说“Hello~guy”或“Hello”。因此,测试结果将失败。 这是测试结果图片。

我想也许我们可以用intent来判断这个问题,或者让Botium-box加“或”来判断。

而My Chatbot也可以响应表格,像这样,我可以点击按钮。

所以,我有两个问题要问。

  1. 如何确定意图是否使用 http(s)/json 连接器?
  2. 如何在 Botium 框上显示表单并确定聊天机器人按钮是否有效?

我已经阅读了wiki,但我做的不好,非常感谢。

4

1 回答 1

0

问题 1

在 Botium 中,有几个选项可以满足在断言聊天机器人响应时更加灵活的要求。

首先,您可以将匹配模式切换为不同的模式(请参阅Botium Wiki)- Botium 可以在几个选项之间切换文本断言的完成方式,您甚至可以在那里使用正则表达式。默认情况下这是wildcardIgnoreCase,这意味着您可以使用星号进行通配符匹配:

#me
Hi

#bot
Hello*

如果答案都或多或少相同,但有一些细微的偏差,则此方法有效。在 Botium 中执行此操作的推荐方法是使用话语列表:而不是拥有一个 convo 文件,而是将其拆分为一个 convo 文件和一个单独的 utterances 文件。在hello.convo.txt之前:

#me
Hi

#bot
Hello*

之后hello.convo.txt

#me
Hi

#bot
UTT_HELLO

UTT_HELLO.utterances.txt

UTT_HELLO
Hello
Hello guy
hi dude

现在 Botium 允许这三个答案中的任何一个,只要这个话语列表是引用的。您可以在Botium in a nutshell系列中阅读更多相关信息。

问题2

Botium 可以处理按钮、选项列表、轮播卡片等(参见Botium Wiki),但连接器必须为此类内容做好准备。这取决于聊天机器人技术是否支持 - 请参阅官方 Botium 连接器列表

在您的情况下,当您使用通用 HTTP/JSON 连接器时,您可以尝试SIMPLEREST_BUTTONS_JSONPATH功能,或者您可以添加自己的请求/响应挂钩作为 Javascript 代码 - 请参阅Botium Wiki

于 2020-08-18T23:00:28.803 回答