These samples create a Study Bot chat client using QnA Maker (with Chitchat), LUIS and Bing Spell Check. Each query into the chat bot (v3 or v4) will be accompanied by relevant search results in an encyclopedia, Microsoft Academic, and News/Blogs sections as a study aid. Teachers are able to create their own question and answer FAQs to create a study guide as input for the chat bot if they want it to follow a preferred curriculum. However, demo FAQs are available for this sample, included in the Qna-Luis-Bot/FAQs folder. The focus of this app is to enable a more relevant experience of studying, where students can study a subject with a customized chat bot along with multiple web resources.
QnA Maker with LUIS: There are 3 knowledge bases (created from FAQs in qnamaker.ai) that LUIS directs the user to after a query is received in the chat bot. LUIS has utterances created (in luis.ai) that will allow the right knowledge base to be used. For instance, if the user types in "virus", LUIS knows to go to the biology knowledge base to retrieve a definition (answer) to the user's input. The QnA Maker feature Chitchat has been added to the bot v4 as a 4th knowledge base.
Bing Spell Check: This enables the user to make spelling mistakes for pre-defined words. For instance, from the sociology knowledge base, "Apartheid" can be recognized if the user inputs "apartide", "aparteid", "apartaid", etc.
The web resources will take a student query, like "virus", and return relevant information about it in an encyclopedia, Microsoft Academic, as well as a general Bing search that returns mostly news and blogs on the query.
Start with the Qna-Luis-Bot (either v3 or v4) sample. Once that is up and running, then build the Study Bot sample. The Study Bot depends on the bot you build in Qna-Luis-Bot. Follow the README files in each sample.
Visual Studio 2017+
Qna-Luis-Bot is a C# .NET Standard app
Study Bot is a C# UWP app
- QnA Maker Dcoumentation
- QnA Maker API V4.0
- Add Chitchat to a QnA Maker knowledge base - we don't use this method of enabling a knowledge base (KB) with Chitchat in this sample, because we have more than one knowledge base, so we create a stand-alone KB with Chitchat only. If you only have one KB, then it's preferred to enable it in that knowledge base. For more information on the stand-alone Chitchat KB, refer to the Qna-Luis-Botv4 sample's README.
- Language Understanding (LUIS) Documentation
- LUIS Programmatic APIs v2.0
- LUIS Endpoint API
- Bing Spell Check API Documentation
- Bing Spell Check API v7 reference
- Azure bot service
- Integrating QnA Maker and LUIS bot v3 tutorial
- Integrating QnA Maker and LUIS bot v4 tutorial, using Dispatch