Let's discuss intent best practices

In developing the educational assistant bot we’re often flustered by how to classify intents in a meaningful way. I find myself searching the web for experiences other people have had. I’ve never found intents best practices though. Let’s discuss them here.

I’ll start:

  • For the bot we’re building, we find that the user has to input data a lot (answers to bot questions, numbers, chapter he/she’s working on etc). I’ve put it all in an ‘inform’ intent, distinguishing them through using entities. However, I find the bot gets confused a lot. Would it be better to split it in multiple intents e.g. ‘inform-questionanswer’, ‘inform-chapter’, ‘inform-sourcetype’ etc.?

  • Is it better to be comprehensive in designing examples, or to leave an intent open to interpretation for the bot? (This regards the number of examples per intent and adding all the permutations of a certain sentence)

  • Should we label entities in examples even though they won’t be set in that particular intent? e.g. "I’ve found the word ‘king’ in chapter 4. What does that mean? In this example, chapter will not be used as a slot in the answer the bot utters.

Feel free to add any questions you might have on the topic!

1 Like

I know it’s an old topic but I’d love to find resources talking about these specific points.

I had the same wonders. I used a generic “inform” intent mostly based on entities which is mostly used inside a form while I have another intent to enter in the form. The confusion matrix for the nlu part is not very good but it works quite well in practice.

I would also like to have inputs and feedbacks on good practices about those points.

1 Like

Hi @Remy, I know it’s an old question but I wrote a blog post recently on best practices training intent-based chatbots, thought you might find it interesting: You might be training your chatbot wrong | Everything Chatbots Blog. Take care!