Author: Josip Osrecki
Artificial intelligence and fear of Skynet is the topic talked about for decades, but the end users in Croatia have recently (and yet shyly) come into contact with Siri, Google Assistant or Cortana. And mostly in English. Due to the small market, it is not expected that big players will invest considerable resources in the development of chatbots in our language. Although there is already some support for standard languages of “small” countries, including Croatia. Here we have seen the opportunity – to develop a platform that is very good in creating bots that “speak” our language well, and that is modular enough at the same time to easily upgrade to recognize foreign languages as well. That is how CROZ’s own cBot came to life.
Basic concepts of chatbots and mode of operation:
The intent is a user’s desire/goal/purpose.
The bot is trained on the user’s intent by introducing examples from which the intent can be “read”.
Bot understands the intent through dialogue, i.e., a conversation tree that defines the course of the conversation.
The bot catches the entity it wants to change.
What are NLP and Machine Learning, and why is it of interest now?
Before the development of machine learning, the behavior of applications had to be explicitly programmed. Now the computer can automatically acquire knowledge of abstract concepts or ways of problems solving through examples as people do. Natural Language Processing, i.e., NLP, uses machine learning methods for language analysis and processing. IBM Watson is probably the most famous example, which went so far as to win the American version of the television game show Jeopardy!.
How do NLP and chatbots work?
The sentence entered by the user in the chat is classified into one of the predefined groups of intent. This way we recognize what is the user’s intent and what he/she really wants (e.g., to find a branch, pay a bill, and find out which tariff is used). By further analyzing the text, we recognize entities – to whom or what his/her intent relates to. While chatbot provides navigation through the dialog, NLP takes care of finding the intent in the vector matrix, learning of new sentences, even to simpler things like correcting grammar errors or detecting cases.
It should be emphasized that there are two levels that ensure the recognition of words or sentences. The first is in the very heart of the platform, i.e., NLP neural network, and the second one appears by manual training of cBot to properly use accumulated knowledge on NLP. The simplest example is a greeting. If for defined intent we put 3 phases “Hello friend”, “Morning”, “Kind regards” as examples of a “greeting” to the chatbot, cBot will also recognize “Good evening” because NLP recognized that it is the same (or similar) user intent as the first 3 mentioned phrases.
How well does it understand Croatian language and is it possible to add other languages?
The platform’s great advantage is that we have been working on a product called Sentimenter over the past several years that has an aim to detect the emotions of users on social networks. We were compelled to develop an NLP matrix that knows a dialect, slang, and other forms of communication very well, such as writing in CAPS LOCK, smileys or using multiple exclamation marks, to ensure we defined user’s intent well. This served as the knowledge base also for the cBot project. Therefore, we can say we have excellent foundations that ensure our bot also understands other ways of writing besides the standard Croatian language.
At the same time, the application is scalable enough, so other languages can be easily added and with little effort.
How can I connect to a chatbot and where can I use it?
At this point, our chatbot can connect to a Facebook Messenger, and the platform can connect to any system (e.g., WhatsApp, Viber, or custom integration with the customer’s system) and the usage possibility is wide. Among interesting use cases, we can emphasize an advanced FAQ or replacement for customer support where direct savings are achieved, as well as the classification of user e-mails, navigation through products range or Internet banking.
What are the advantages of CROZ’s cBot compared to similar solutions?
The cBot platform is modular and has excellent NLP capabilities as the foundation, that we have “trained” in the Croatian language for years, as well as the chatbot that remembers the context with every user and learns user intentions to lead complex dialogues. The administration interface enables the definition of user intents and tree dialogues, and the ability to integrate with different platforms.