Have you ever met really stupid chatbots, that don’t understand what you want and thus pretend to have Intelligence? I do, and many people I am talking about chatbots have had the same experience.
Inflated expectations from AI bots
There’s a lot of buzz about AI chatbots that are mainly presented as robots that could provide a high level of human-like communication. Bots have they own characters and have their faces either human-like or robot-like.
So, a high level of expectations mostly driven by vendors of NLP engines who would love to promote their technology, which is still not that mature. If someone from the vendors is reading this post, could you share examples of general intelligence projects built based on your solutions? And yet clients expect to have true intelligence while talking to the bot.
Incorrect training methodology
AI bots require training. Training means helping a bot better recognize intent and context in which it is running a dialog. Practically a system administrator (NLP, Conversation expert — whatever you want to call him/her) should review the failovers and enhance the rules in NLP engine to better recognize user intents.
And that is the dead loop: on the one hand, you need to have a good corpus conversation to train your NLP engine on the relevant conversations and on the other. On the other, the user will not start talking to your bot until it is good enough and thus you could not get a good enough sense of the conversations.
So, what can be done with all of that?
Actually, there are 2 options:
- Have better tools and processes
- Avoid using AI chatbots
Better process of AI bot training
That’s something we can do right now without waiting for the big players to update their solutions or making costly investments in data science.
a) Use all of your existing conversations with end clients to train your NLP engine from day one. Whatever you have: call records, mail conversations or queries to live agent to you FB, everything could be used to train your NLP before the day zero.
b) If there is no corpus of historical conversations you can use live agents, who would follow the defined conversation scripts. Once enough training has been provided, you can slowly bring automatic responses.
c) Involving a live agent immediately when the intent is not recognized or a client is not happy with the response.
The approach is costlier but friendlier for end-users and differs from the advertised flow — launch your AI bot and train it once it gets going.
Improving the NLP engines
NLP Engines will also become better and better for example. For example the NLP engines should support common misspellings (which seems not to be the case https://www.quora.com/Natural-Language-Processing-APIs-for-common-misspellings)) work better while there is a growing number of intents in the system. In addition they should self-learn from the all conversations that are in the system (not only in one account) and provide recommendation of what is missing in the bot. I personally have started to lose the difference between NLP engines specially for English, they look almost the same from NLU perspective.
If you read all of that and still have a wiliness to read for another minute, please ask yourself — do I REALLY need an AI chatbot?
- Many users expect to get a very specific service from the bot (book an appointment, buy a ticket, issue the order and etc.) they do not expect a bot to handle all possible conversations. It’s like imagine yourself going to the supermarket — do you expect a salesperson to tell jokes or chat with you about Deep Learning? Probably not and the same goes with a bot. In case you can avoid having AI in your bot, why are you making things overly complicated?
- NLP for English and Western European Languages is good enough. It’s very much driven by the market demand and nature of the language itself (it is structured), while there is not many (or there are simply not available) engines for other languages, almost nothing exists for Ukrainian. So, what the language carefully before building a AI bot on that language.
- You need to have enough conversations to train the bot even from the very beginning. If you do not have a good corpus of conversation, refer to the tricks above or do not do AI bot. Recently one potential client contacted me to build AI FAQ bot for his new real-estate business. I clearly recommended to him to not do that, as lack of conversational data will lead to a poor experience and waste of time and money.
To be honest, there are cases when you need to equip your bot with AI for sure:
- The bot interface does not support any buttons. WhatsApp and SMS are the most common examples of that case. You will HAVE to use AI in that case.
- There is a lot of content to share with your end-users, so building a bot with the buttons and distinct conversation is not the issue For example, a big FAQ will need to have this kind of scenario.
We are building bots in Chatbots.Studio on a daily basis and we are excited about it. The key idea for this article was to help clients make a fully aware decision about the type of chatbot they need. We see each and every day how bots are taking a more prominent role in the digital worlds and it is our shared goal to make it better for our end-clients.
I would love to hear your cases and stories about the issues that your are facing while building AI chatbots.