从昨天起,对话服务有时无法回复。它识别意图和实体,但响应中没有文本。这是我使用CURL时得到的结果:
{"input":{"text":"soporte"},"context":{"conversation_id":"4c700daf-6dd2-4308-be8
d-b76426278536","system":{"dialog_stack":["root"],"dialog_turn_counter":1,"dialo
g_request_counter":1}},"entities":[],"intents":[{"intent":"soporte","confidence"
:1}],"output":{"log_messages":[{"level":"warn","msg":"No dialog node matched for
the input at a root level!"},{"level":"warn","msg":"No dialog node condition ma
tched to true in the last dialog round - context.nodes_visited is empty. Falling
back to the root node in the next round."}],"text":[]}}
当我从Web界面测试对话时,它表明它识别出意图,但没有给出一个anwser。
对于我目前拥有的两种模型中的任何意图或实体,都会发生这种情况。我澄清这是一种间歇性的行为,有时它工作正常(它工作正常aprox.3次中有3次)
答案 0 :(得分:1)
说实话,如果没有看到您正在调用的示例会话脚本,这很难回答。所以这个答案是通用的。
首先让我们检查您的JSON响应。
在回复中我们可以看到:
"intents":[{
"intent":"soporte",
"confidence":1
}
这告诉你它找到了意图,但并没有对该意图采取任何行动。该操作由对话树定义。
主要错误信息是:
No dialog node matched for the input at a root level!
这意味着在您的顶级节点中没有找到匹配的条件。在您的情况下,您需要至少一个条件为#soporte
的节点来捕获意图。
你还应该添加一个" Anything Else"根节点(通常自动完成)。通过这种方式,您可以更轻松地查看匹配内容的时间。
这是一个示例树:
答案 1 :(得分:1)
对话"version_date": "2017-04-21"
仍然会发生这种情况。
就我而言,
- 无论Web还是Slack,intent都能正确匹配
- Web UI sometimes
生成匹配的响应
- 松弛的应用总是得到"没有对话节点匹配根级别的输入!"
附加日志消息:"在上一个对话框中没有对话节点条件与true匹配 - context.nodes_visited为空。在下一轮回落到根节点。"
<强>实施例强>