question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[MCS-DE-GO] Bug on LUIS results in child dialog

See original GitHub issue

When having a conversation within a child dialog, the UserInput is processed by the child dialog LUIS model as well as the root dialog LUIS model.

The “turn.recognized.intent” does not contain the highest scoring value but actually the result from the root dialog LUIS model.

Also it seems that the child dialog LUIS model is always called twice.

It appears as if only the last result from the LUIS calls is stored and not all results are considered when evaluating which has the highest score.

Is there a way to configure this via the Bot Design settings or the appsettings?

Here the details from Emulator:

image

Child dialog 1st LUIS call (1st. LUIS result):

{
  "recognizerResult": {
    "alteredText": null,
    "entities": {},
    "intents": {
      "Intent_ConfirmationUnsubscribed": {
        "score": 0.96476275
      }
    },
    "text": "ist abgemeldet"
  }
}

Child dialog 2nd LUIS call (2nd LUIS result):

{
  "recognizerResult": {
    "alteredText": null,
    "entities": {},
    "intents": {
      "Intent_ConfirmationUnsubscribed": {
        "score": 0.96476275
      }
    },
    "text": "ist abgemeldet"
  }
}

Root dialog LUIS result (3rd LUIS result):

{
  "recognizerResult": {
    "alteredText": null,
    "entities": {},
    "intents": {
      "Intent_None": {
        "score": 0.31199825
      }
    },
    "text": "ist abgemeldet"
  }
}

Result in ${turn.recognized} output: image

There is a second issue. The child dialog LUIS model is always queried twice which does not make sense.

I would like to add that there should be more best practice guidance on how to best configure and train LUIS Models. Having a separate LUIS Model per Dialog is decreasing overall performance and increasing LUIS cost plus adds complexity to the Bot maintenance.

@joaollq @goergenj @garypretty @benbrown @cwhitten

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:10 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
taicchoumsftcommented, May 12, 2021

Hi @goergenj , I think the root dialog is being consulted because you’ve got the allow interruptions flag on for this user input, and there is no trigger that was hit in the child dialog. There are hopefully some helpful details here.

So if you create a trigger in the child dialog called Intent_ConfirmationUnsubscribed, and fill it out with the same lu data from the userinput, this will prevent the root dialog from being consulted since this trigger will be hit first. Inside the new Intent_ConfirmationUnsubscribed trigger in the child dialog, ${turn.recognized} is populated correctly with the correct intent.

I’m investigating the child recognizer being invoked twice, I can repro this always when using interruptions. I’ll need some time to trace the events in the SDK to see why we’re doing this.

0reactions
taicchoumsftcommented, Jun 28, 2021

Closing this ticket, feel free to reopen if something still needs to be addressed.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Getting the Luis "topIntent" from a child dialog inside another ...
I have Luis working in my main bot.js file for top level intents. But i'd like to access Luis from other dialogs that...
Read more >
Untitled
Task planner template, Aaj tak live poll results 2014, Guggenheim foundation v lubell, Times square shopping mall brunei, Der krung menu, ...
Read more >
ghf - River Thames Conditions - Environment Agency - GOV.UK
Payam tabrizi md san jose, Tatung einstein disk images, Marquavius lewis twitter, ... Spdl cs go, Php get random element from array, Kaitlyn...
Read more >
Dialog management with QnA, LUIS, and Scorables
Shown below, in our RootDialog the bot will wait for an incoming message from a user, and we can cast that incoming message...
Read more >
News Lahr oVH - LinkUSA
Maymann rheine, Mailprogramma mac herinstalleren, Rafael luis breide obeid, ... baby name, Les masques theatre antique, Calvepen tabs 333mg side effects.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found