What does Microsoft LUIS do and how it affects your AI Chatbot quality?
Enhance your Azure Bot with Microsoft LUIS
To improve our chatbot quality, we do not stop at a basic QNA Chatbot or a menu-driven chatbot. We need a technology to predict users’ overall intent and extract detailed information at the same time. This is when Microsoft Language Understanding (LUIS) comes into picture when building an AI Chatbot.
Microsoft LUIS is a cloud-based conversational AI service from Microsoft Azure which uses custom machine-learning intelligence. Basically, Microsoft LUIS allows your bots or applications to understand what a person wants in their own words. Yes, not only bots can use this cognitive service but other application as well since it has endpoints API. Some basic non-bot’s usage examples are extracting key information from a customer’s complaint email.
So, how did we use Microsoft LUIS to improve our AI Chatbot built with Microsoft Azure Bot Framework? Reads on to find out more.
Microsoft LUIS’s Intent
What is an intent? Intent is defined as something we plan or mean to do. Basically, it is the intention or purpose or a user when talking to the chatbot. The user might want to make an appointment, to find nearest petrol station or just want to greet the virtual assistant.
Microsoft LUIS makes it easy to detect the intent of a user. We just need to provide some user utterances and group them into intents. Utterances are inputs to the AI chatbot that need to be interpreted. To maintain a good chatbot, collect utterances that you think users will enter in the beginning and continue to monitor and train the chatbot. Over the time, the chatbot will understand the users more.
An example of chatbot understands the user’s intent to find nearest petrol station is shown in the image above.
An example of virtual assistant understands the user’s intent to submit a complaint in the image above.
Microsoft LUIS’s Prebuilt Entities
Entities are another information that we can extract from user’s input via Microsoft LUIS. First type of entities is the prebuilt entities which is very easy to use. We just need to enable it via the portal. Then, we can detect the prebuilt entities. Some examples of the prebuilt entities are person name, date time and email address.
In the example above, LUIS is used to extract person’s name, email, and phone number accurately from user’s input. This is important so that our virtual assistant can greet back the user using his name and confirmation of his phone number. If there is no entities detection, we can only greet the user with “Thanks, My name is Alex, our salesperson will contact you soon at my number is 012345678’, for example. This is because we have to assume the user’s reply is the name, email, and phone number.
The prebuilt datetime entities of LUIS is also very useful. If a user said next Monday, LUIS would return the exact date of next Monday. This makes the conversation more natural during an appointment making, for example.
There are many more prebuilt entities which you may refer to Microsoft’s documentation https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-prebuilt-model
You may ask, what if the entities you need are not available in the prebuilt entities? LUIS allows us to create our own entities. Most basic entity types would be list entity and regex entity. In list entities you can also provide synonyms. For example, an entity for small size can includes “sm, sml, tiny, smallest” as its synonyms.
Another example of entities would be BMW the brand entities which you can provide synonyms as “Bayerische Motoren Werke AG”, “BM”, “Bayerische Motoren Werke GmbH” and “Bavarian Engine Works Company”. As for regex entity, you can use it for fixed format such as identity card number.
There are many more ways you can enhance your chatbot with LUIS. Do check out Microsoft’s documentation at this link or check out some of our chatbots that are using Microsoft LUIS and Azure Bot Framework:
XIMNET is a digital solutions provider with two decades of track records specialising in web application development, AI Chatbot and system integration.
XIMNET is launching a brand new way of building AI Chatbot with XYAN. Get in touch with us to find out more.