DialogFlow CX 在 detectIntent 响应中忘记了事件。

huangapple go评论54阅读模式
英文:

DialogFlow CX forgets events in detectIntent response

问题

I'm using DialogFlow CX 在我的前端应用中使用 detectIntent 请求。在每个页面中,我添加了两个事件。

  1. sys.no-match-1 重新提示用户
  2. sys.no-match-2 允许用户在下一个不匹配的情况下转到下一个指定页面,而不是重新提示。
    但问题是,DialogFlow 在触发 no-match-1 后会忘记,下一次不是触发 no-match-2,而是一遍又一遍地触发 no-match-1。

DialogFlow CX 在 detectIntent 响应中忘记了事件。

是否有办法让 DialogFlow 记住上次的事件,并在下一个 detectIntent 请求中从下一个事件开始?

英文:

I'm using dialogFlow cx from my frontend application with detectIntent request.
In every Page I have added two events.

  1. sys.no-match-1 that re-prompts user
  2. sys.no-match-2 that allows user in case of next no-match to make transition to next specified page instead of re-prompting.
    But the behavior is that, the dialogFlow forgets after triggering no-match-1 and next time instead of triggering no-match-2 it again and again triggering no-match-1.

DialogFlow CX 在 detectIntent 响应中忘记了事件。

Is there any way to allow dialogFlow to remember the last event and start from next one in the next detectIntent request?

答案1

得分: 1

通常情况下,当用户输入与sys.no.match-1触发后的任何培训短语不匹配时,sys.no-match-2会触发。在不查看您的项目的情况下,很难回答为什么sys.no-match-2没有触发。因此,我建议您向Google Cloud支持提交工单。如果不行,可以使用此模板在Google的问题跟踪器中创建一个线程。您还可以将该问题标记为星号,以便自动接收更新,并通过引用此链接来提高其曝光度。

以下是一些解决问题的基本步骤:

  1. 确保分类阈值不是非常低的。
  2. 如果可能的话,使用高级NLU重新训练您的代理。
  3. 确保意图之间没有重叠。

作为一种解决方法,您可以尝试使用parameter($session.counters.noMatchCnt = 2)和no-match-default来满足您的需求。

在这里,当用户输入不匹配任何培训短语时,sys.no-match-default事件将触发。当再次触发sys.no-match-default事件时,它将满足条件$session.counters.noMatchCnt = 2,然后将路由到您提供的页面。

英文:

Normally sys.no-match-2 will trigger when user input does not match any of the training phrases after sys.no.match-1 triggered. Without looking into your project it is very difficult to answer why sys.no-match-2 is not triggering.So I recommend you raise a ticket with Google Cloud Support. If not, create a thread in Google’s Issue Tracker using this template. You can also STAR the issue to receive automatic updates and give it traction by referring to this link.

These are some basic steps you can follow to solve your issue:

  1. Make sure that the Classification Threshold is not very low.
  2. If possible, train your agent again using Advanced NLU.
  3. Make sure that there is no overlapping between intents.

As a workaround you can try using parameter($session.counters.noMatchCnt = 2) and no-match-default for your requirement.

DialogFlow CX 在 detectIntent 响应中忘记了事件。

Here the sys.no-match-default event will trigger when user input does not match any of the training phrases. When the sys.no-match-default event is triggered again, it will satisfy the condition $session.counters.noMatchCnt = 2 and then it will route to the page you have given

DialogFlow CX 在 detectIntent 响应中忘记了事件。

答案2

得分: 0

默认情况下,Dialogflow CX 将在下一个对话中(同一会话)中,如果代理程序未检测到任何路由,则触发下一个不匹配事件。请确保不填充 no-match-1 转换。

英文:

By default, Dialogflow CX will trigger the next no-match event if, in the next turn conversation (same session), the agent doesn't detect any routes. Please make sure the no-match-1 transition is not filled.

DialogFlow CX 在 detectIntent 响应中忘记了事件。

huangapple
  • 本文由 发表于 2023年2月16日 18:30:37
  • 转载请务必保留本文链接:https://go.coder-hub.com/75470949.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定