1

在分析 > 用户对话中,我想过滤掉我的 Watson Assistant 在其对话中无法回答的消息,即,当它返回 any_else 回复时。

但由于anything_else既不是意图也不是实体,我无法在UI 中通过它过滤消息。因此,是否可以通过助手的回复过滤消息,就像您可以使用用户语句一样?这样,每次助手回答“我不明白”时,我都可以过滤掉。

4

2 回答 2

1

anything_else表示未找到意图,或置信度 < 0.2。

过滤寻找意图 = [],或第一个意图的置信度低于 20%

于 2019-04-20T16:41:16.520 回答
1

IBM Watson Assistant 在其 UI 的 Analytics 部分中提供日志,恕我直言,更强大的是,通过带有过滤器表达式的 REST API。使用该 API,您可以下载所有日志并“离线”过滤或应用一些表达式。我建议阅读有关如何查询包含用户响应的“其他”字段的文档。

我使用 V1 和 V2 API为 Watson Assistant 编写了 Python 工具。V1 工具可以下载或查询日志。一个选项是下载所有可用的日志,然后使用jq过滤它们。

python wctool.py -logs -config config.json.event -id 28ac4bcb-2aae-41aa-87ac-2e6074e1356a > logs201904.out

这为您提供了有关访问了哪些节点的信息:

cat logs201904.out | jq -r '.logs | .[]
       | .response.output.nodes_visited   '

过滤访问“任何其他”的日志记录:

cat logs201904.out | jq -r '.logs | .[] | .response | select( 
    .output.nodes_visited[] | contains("Anything else")) '
于 2019-04-18T17:08:16.400 回答