Chatbots and assistant programs designed to support conversations with human users rely on natural language processing (NLP). This is a field of scientific research that aims at making computers understand the meaning of sentences in natural language. The algorithms developed by NLP researchers helped power first generation of virtual assistants such as Siri or Cortana. Now the same algorithms are made available to the developer community to help companies build their own specialized virtual assistants. Industry products that offer NLP capabilities based on these algorithms are often called AI engines.
The most powerful and advanced AI engines currently available on the market are (in no particular order): IBM Watson, Google DialogFlow, Microsoft LUIS, Amazon Lex.
All these engines use intents and entities as primary pnguistic identifies to convey the meaning of incoming sentences. All of them offer conversation flow capability. In other words, intents and entities help to understand what the incoming sentence is about. Once the incoming sentence is correctly identified you can use the engine to provide a reply. You can repeat these two steps a large number of times, thus creating a conversation, or dialog.
In terms of language processing ability and simplicity of user experience IBM Watson and Google DialogFlow are currently above the pack. Microsoft LUIS is okay too; still, keeping in mind that Microsoft are aggressively territorial and like when users stay within their ecosystem, it is most efficient to use LUIS together with other Microsoft products such as MS Bot Framework.
Using AI engine conversation flow to create dialogs makes building conversations a simple, almost intuitive, task, with no coding involved. On the flip side, using AI engine conversation flow limits your natural tendency to make conversations natural. The alternative, delegating the conversation flow to the business layer of your chatbot, adds richness and flexibility to your dialog but makes the process more comppcated as it now requires coding. Cannot sell a cow and drink the milk at the same time, can you?
Amazon Lex lacks the semantic sophistication of their competitors. One can say (somewhat metaphorically) that IBM Watson was created by linguists and computer scientists while Amazon Lex was created by sales people. As a product it is well packaged and initially looks pleasing on the eye, but once you start digging deeper you notice the limitations. Also, Amazon traditionally excelled in voice recognition component (Amazon Alexa) and not necessarily in actual language processing.
The space of conversational AI is fluid and changes happen rapidly. The existing products are evolving continuously and a new generation of AI engines is in the process of being developed.
What Is AI Engine and Do I Need It?
Why Keywords Do Not Cut It on Social Search
Most of the online search is keywords-based. Same in social domain, a vast number of analytical tools, networking platforms and mobile apps use keyword-based technologies as well.
There is a difference, of course, between traditional internet search and social search. The former finds websites. The latter finds conversations, messages, posts. Keyword-based internet search is doing a decent job for us for over 20 years. Keyword-based social search is not doing a decent job at all.
Consider a basic example: finding on Twitter who is interested in buying jeans. We can start by typing ‘jeans’ but that brings up too much noise. Maybe ‘need jeans’? Less noise but then we people who use expressions like ‘looking for jeans’ or ‘want jeans’ or shopping for jeans’. Not to mention those who use ‘denim’, or brand names. So we have to run multiple searches or create a complex search string using logical AND and OR and hope it works. Neither option is simple, or convenient, and certainly not efficient.
The above example highlights the major flaw with keyword search - it does not capture the meaning of social conversations, and therefore cannot be a reliable source of information about conversations.
It does not provide too much of correct information. And it does provide lots of incorrect information. But the biggest problem is that it has extremely limited potential for improvement.
So as long as we stick with keyword-based social search the results are destined to be limited.
Why, then, we stick with keyword-based search in social search? Simply because there is no good alternative. Until recently, that is.
The advanced semantic technologies capable of capturing the meaning, or intent, of conversations are now offering an exciting alternative.
I will discuss these technologies on my next blog.
HOW TO MAKE A SUCCESSFUL CHATBOT (BUSINESS TIPS)
So you decided that your business needs a chatbot.
And you’ve probably heard conflicting opinions on chatbots - some praise them for the ease with which they can offer customer service, others criticize for their lack of true intelligence.
How to proceed?
At nmodes, we have been working on chatbots longer than most, starting long before they became popular.
Here is how we advise mainstream businesses to approach the chatbot quandary.
1. SET YOUR BUSINESS GOALS
Remember that users prefer to spend less time talking to your chatbot, not more. A user wants to resolve specific issues related to your brand, not engage in a soul searching chit chat about the meaning of life, politics or sports. A user expects your chatbot to provide the answer to a particular question, and the faster the chatbot can do it the more satisfying customer experience it will create.
All that means is that your chatbot does not need to have the capabilities of a Siri (generic conversational AI solution). Instead, it has to understand really well the conversational domains related to your business. It does not need to support much of the rest of the language.
And so you need to decide which business related topics you want your chatbot to cover and not to venture outside of these topics.
Typically chatbot topics revolve around sales process, customer support, sometimes they include lead generation, FAQs, problem resolution, and reputation management.
2. DEFINE THE DIALOGS
Chatbots are about conversations. After you have decided what kind of topics you want your chatbot to support it is time to get a bit more specific and define the dialogs. Ask yourself the following question: what do you want to achieve at the end of the chatbot’s interaction with the customer. For example, if you are dealing with the sales process, the end result could be a customer making a purchase, or a customer providing contact information for the sales team to follow up on, or when a customer indicates what product he or she is interested in.
Build a dialog with the end result in mind.
We sometimes call this creating the conversation flow.
Of course, you can create as many conversation flows as required to support your business model.
3. DECIDE IF YOU NEED AI
The are two types of chatbots - based on multiple choice buttons and based on natural language conversations.
Don’t discard buttons. Remember that a chabot is expected to make the user experience as enjoyable and as friendly as possible. Buttons often make conversation super easy and fun (the user simply clicks a button, what can be easier?). In many business cases buttons provide a fast and efficient way to ask relevant questions and keep the conversation flowing towards the desired conclusion.
Using buttons also makes chatbot development simpler and reduces the development costs.
The second option is to make a chatbot support natural language conversations, in which case you will need AI.
Pick the AI solution you want to work with.
The good news is that there are several decent products in the market so you have a choice.
The not so good news is that they all are relatively complicated and require a certain level of technical knowledge.
(And you can always talk to us - we provide AI solutions that do not require any technical knowledge).
4. DECIDE IF YOU WANT TO DEVELOP YOUR CHATBOT IN HOUSE OR OUTSOURCE
Unless you want to position your business as an AI company you likely do not want to develop it on your own. There are several reasons for that.
First, AI technology is complex and its complexity if often underestimated. You will need top AI expertise and will probably need more of it than you anticipate.
Second, as Cameron Schuler recently observed, there is a significant shortage of AI experts and it will be difficult for you to find one.
Third, and perhaps most importantly, if you are a mainstream business developing in-house AI expertise is not part of your business model.
Bringing in an AI partner to help with your AI needs is a reasonable option for many businesses. Of course, the downside is additional immediate costs.
Following the simple steps above and answering these questions will help you navigate the sophisticated world of AI, decide what kind of chatbot does your business require and how to approach the process of creating it.