Introduction to Artificial Intelligence
Surely you have heard more than once about Artificial Intelligence or AI, but... do you know what it is and what it is for?
If the answer is no, don't worry!
With this guide, you will be able to understand the general concepts of AI and why we use it when developing a bot.
What is AI?
In short, artificial intelligence (AI) is the simulation of typically human intelligence processes, by machines or computer systems.
You must be wondering something like: And what does my bot use AI for?
In the case of our bots, AI is what gives them the ability to learn and "reason" to provide answers according to what the user has asked.
NLP (Natural language processing)
This ability that the bot has to “converse” like a human is thanks to the NLP (Natural language processing) language, which is a technique that allows computer systems to “understand” human communications. That is, it enables interaction between the user and the bot.
The answer to your question is that the bot uses Artificial Intelligence and this NLP language to process what the bot's users tell it and thus be able to start a "conversation."
Training 🦾
And how does the bot come to have all this knowledge? Training!
It is important to know how our bot understands so I know how I can teach it. Just like it happens to us humans, right?
The NLP language (or our bot) analyzes and identifies two types of entities. On the one hand the intents and on the other hand the keywords.
Intents
Intents talk about the user's purpose. Usually associated with an action. They determine what the person is trying to achieve.
Let's imagine the reception of a medical center.
Three different people approach and say: "I want to make an appointment with Dr. Lunza," "I would like to make an appointment for Tuesday," and "Do you have appointments available?"
If we compare these expressions, they are not identical, but they have something in common: their intention.
In the case of the example, we will create the intent "Take a turn" and we will feed it with different expressions to enrich it, since what will determine whether a bot understands a lot/little/nothing depends on the number of different ways of expressing the same thing as the bot can understand.
Keywords
Keywords are words that we are going to define as essential or strategic.
We want the bot to identify them and when it does, generate a specific action.
We can answer something in particular, redirect to some part of the flow, or even refer to customer service.
Keywords can also be used in combination with intents to create much more specific responses.
Let's imagine that we have already created the intent "I want to buy" and it redirects to the purchase flow.
Brilliant! Now, the user could also tell us: "I would like to buy chocolate" or "I would like to get ice cream."
In that case, we could create a group of keywords with the different products and thus redirect to a much more specific instance and improve the experience.
Conclusion
A good exercise to start understanding these concepts is to imagine a person entering a business.
Let's imagine you walk into a bank and shout "Money!" Whoever should attend to it will not know if the person wants to withdraw money, deposit money, make a payment or rob the bank!
This is why it is very important to do a good analysis when including information in our bot and understand through what type of entity we think it will be best for the bot to understand the content. And don't forget to train! 🦾