Assuming we have an idea of what intents (and potentially entities) we'd like to detect, we can look into training a LUIS model using the portal.
We can utilize this Getting Starting guide for creating a LUIS model in the portal.
Also, check this Tutorial for LUIS with C# Bot Framework. We're including the sample bot based on it, but this will also work through provisioning a new one in the Azure Portal.
- Getting Started With LUIS
- Tutorial for LUIS with C# Bot Framework
- Intents
- Utterances
- Entities
- Entity Types
- LUIS Development Lifecycle
We have included a sample LUIS model, but we'll assume that we're going to start with a brand new one.
First, determine some example Utterances, Intents, and even Entities. In this scenario, we'll start simple with some utterances and intents we'd like LUIS to detect.
For example, suppose we want to detect some intents like location, get invoice, talk to an agent, or get pay policy.
It would also be helpful to think about representative utterances (e.g. this is what a user will send to a LUIS model through a chatbot) to populate the LUIS model. We can use these utterances when we create the LUIS model.
We can create a LUIS Model based on the Getting Started With LUIS guide.
Login to https://wwww.luis.ai. The credentials should be tied to an Azure subscription.
Once logged in, navigate to the 'My Apps' and create a new app.
We can fill in the details for a new LUIS model. We can also select a different language besides the default.
We can now look into building the model.
We can provide the name for the intent.
Once we have the intent name, we can provide example utterances.
From the doc: Utterances are input from the user that your app needs to interpret. To train LUIS to extract intents and entities from them, it's important to capture a variety of different example utterances for each intent. Active learning, or the process of continuing to train on new utterances, is essential to machine-learned intelligence that LUIS provides. Collect utterances that you think users will enter. Include utterances, which mean the same thing but are constructed in a variety of different ways.
Once we add these utterances to the intent, we can repeat the process and additional intents / utterances.
Once satisifed, we can then look into training the model.
Note that with the None Intent, we can add examples that do not match the other intents. Example utterances with the None intent will affect the confidence score for the other intents with LUIS.
Once training is complete, we should see that the LUIS App is up to date.
The process of updating the model (intents, utterances, entities, etc.) and then retraining will affect how the model scores new inputs. It is helpful to make sure that the model's performance is revisited, especially with the appropriate content author.