Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support new recognizer hierarchy #1978

Closed
3 tasks
luhan2017 opened this issue Feb 10, 2020 · 0 comments
Closed
3 tasks

Support new recognizer hierarchy #1978

luhan2017 opened this issue Feb 10, 2020 · 0 comments
Assignees
Labels
R10 Release 10 - August 17th, 2020

Comments

@luhan2017
Copy link
Contributor

luhan2017 commented Feb 10, 2020

Previously in BotFramework SDK, we only support two kinds of recognizers: LuisRecognizer and RegexRecognizer, users can choose either one of them to use in their bots. And also Composer don't support configure multiple language recognizers.

Now, there are some new recognier type introduced in the new SDK package,

  • RecognizerSet
  • CrossTrainedRecognizerSet
  • QnAMakerRecognizer
  • AdaptiveCardRecognzier
    Also, Composer needs to support multiple language scenarios.

Please refer to this doc to see how those recognizers work.

So here is our proposed recognizer hierarchy:

  • we always had a RecognizerSet includes MutiLanguageRecongizer and AdaptiveCardRecognizer on the top.
  • user need to config the default language, and for the locale don't a recognizer, it will fall back to default.
  • under each local, there is a CrossTrainedRecognizerSet, user can add multiple SingleRecognizers under this.
  • SingleRecognizers contains: LuisRecognizer, QnAMakerRecognizer, RegexRecognizer.

RecognizerSet: [
    {
        "$kind": "Microsoft.MultiLanguageRecognizer",
        "recognizers": [
            "en-us": {
                "$kind": "Microsoft.CrossTrainedRecognizerSet",
                "recognizers": [
                    "ToDoLuis.en-us.lu", //which maps to a AdaptiveLuisRecognizer
                    "ToDoLuis.en-us.qna", //which maps to a QnAMakerRecognizer
                    { "$kind": "Microsoft.RegexRecognizer"
                      "Intents": {...}
                    },
                    // add more SingleRecognizers (AdaptiveLuisRecognizer, QnAMakerRecognizer, RegexRecognzier)
                ]
            }
            "": {
                "$kind": "Microsoft.CrossTrainedRecognizerSet",
                "recognizers": [
                    "ToDoLuis.en-us.lu", //which maps to a AdaptiveLuisRecognizer
                    "ToDoLuis.en-us.qna", //which maps to a QnAMakerRecognizer
                    { "$kind": "Microsoft.RegexRecognizer"
                      "Intents": {...}
                    },
                    // add more SingleRecognizers (AdaptiveLuisRecognizer, QnAMakerRecognizer, RegexRecognzier)
                ]
            }
        ]
    },
    { "$kind": "Microsoft.AdaptiveCardRecognizer" }
]

Items to enable this new feature in Composer

  • UX design.
  • lubuild refactor.
  • E2E integration.
@luhan2017 luhan2017 added the Needs-triage A new issue that require triage label Feb 10, 2020
@luhan2017 luhan2017 changed the title feat: support new recognizer hierarchy Support new recognizer hierarchy Feb 10, 2020
@hibrenda hibrenda added Type: Enhancement and removed Needs-triage A new issue that require triage labels Feb 11, 2020
@hibrenda hibrenda added the R9 Release 9 - May 15th, 2020 label Feb 11, 2020
@cwhitten cwhitten added R10 Release 10 - August 17th, 2020 and removed R9 Release 9 - May 15th, 2020 labels Mar 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
R10 Release 10 - August 17th, 2020
Projects
None yet
Development

No branches or pull requests

4 participants