We are in the process of building an FAQ bot. Our bot should be able to answer +10k questions. Some of the questions will have similar wordings, for example:
# different account types
example: Tell me about saving accounts
example: tell me about checking accounts
# different fees
example: what is the Bank withdrawal fees?
example: what is my credit card annual fee?
Is it possible to have similar examples for different intents?
Is it possible to have thousands of intents?
What is the maximum number of intents?
Can we build it without entities and custom actions?
What is your recommendation on how to go about building it if it’s possible?
well, i don’t think there is a theoretical limit on the number of intents but you should have a robust evaluation framework dealing with large number of intents
Regarding your question about doing this without entities, nope. as I see the examples here, you should use entities and use them as slots to drive the conversation.
Important to understand the notable difference between intent and entities and how they shouldn’t be interchangeably used.
Intent is usually what the user is meaning to ask/say - in your case - user wants to ask about his accounts
Entities are pieces of information within what user is meaning to ask/say. different account types,different types of products (Transfer fees, credit card fees)
The whole point of intent classification is to build a diverse set of intents that your model fits. if you have too many similar examples for different intents, your model will drive poor results .
you could use response selector for FAQ questions so you won’t need custom actions but use entities and slots as they are extremely valuable in building good assistants.