A Comparison Of Nine Chatbot Environments
Discover Which Chatbot Framework Might Work Best For Your Organization
This research based on a ten point comparison matrix, here I look at the strengths, weaknesses and possible growth areas of each solution…
I have built prototypes with most of the commercial cloud and opensource Conversational UI & AI platforms currently available. Obviously there will be important aspects I will miss; any feedback in this regards will be much appreciated.
There are also a host of other design, development and design tools available; the idea here is to focus on the larger commercial and self-contained services.
For starters, there are six general chatbots trends emerging…
1️⃣ There has been growing activity in voice interfaces, particularly access via a phone call, and not necessarily a dedicated voice assistant device. IBM Watson Voice Agent was launched 2018, but from March 2021 it will be deprecated and fully integrated into Watson Assistant as the newly released phone integration. Also, Google DialogFlow CX and NVIDIA Jarvis were launched.
3️⃣ Intents and Entities continue to merge and contextual annotation of entities within the intent or utterance is becoming commonplace & very necessary. Compound entities are also becoming more important.
4️⃣ Data structures are introduced to Entities... This trend is visible with Rasa, Alexa Conversations tool and especially Microsoft LUIS. Rasa calls it Entities Roles & Groups. AWS calls it Slots with Properties. And Microsoft LUIS, ML entities which can be decomposed.
5️⃣ Edge installations are becoming more important…NVIDIA Jarvis and Rasa come to mind for install anywhere.
6️⃣ Deprecating of the State Machine is inevitable, Rasa is leading the charge here. IBM is introducing automation to their Dialog Management system with customer effort scores and auto disambiguation menus. Watson Actions need to be mentioned.
Overview Of Development Environment
Environments are generally very similar in their approach to tools available for crafting a conversational interface.
Considering what’s available, chatbot development environments can still be segmented into 4 distinct groups.
- Leading Commercial Cloud Offerings
- NLU / NLP Tools (mostly opensource)
- The Avant-Garde & Edge
- The Use-the-Cloud-You’re-In
Leading Commercial Cloud Offering
The leading commercial cloud environments attract customers and users to them purely for their natural language processing prowess and presence, ease of use without installation and environment management.
Among these I count IBM Watson Assistant, Microsoft Bot Framework / Composer / LUIS / Virtual Agents, Google Dialog Flow etc.
Established companies gravitate to these environments, at significant cost of course. These are seen as a safe bet, to meet their Conversational AI requirements.
They are seen as chatbot tools providers in and of their-self.
Scaling of any enterprise solution will not be an issue and continuous development and augmentation of the tools are a given. Resources abound with technical material, tutorials and more.
NLU /NLP Tools
There are also (some opensource) tools like Hugging Face, spaCy, Apache OpenNLP, RASA NLU and others which can be used to to process natural language in your environment.
Some organizations are creating their own chatbot framework making use of these tools.
This is the harder route and is more time consuming, but if you have an existing environment, augmenting it with natural language processing capability, making use of these tools is a viable option.
It is truly astonishing the power of most of these opensource tools. And with the documentation available, it can serve as a “no software cost” point of departure for a first foray into natural language processing. It needs to be noted that in some cases enterprise costs exist.
Here RASA really finds itself alone at the forefront. Recently from a speech access perspective, NVIDIA Jarvis arrived on the scene. Jarvis does have the two impediments; access to NVIDIA GPU based on their Turing or Volta architecture. And, secondly, the Jarvis dialog development and management feature is under development and has not been released yet.
Rasa follows a very unique path in terms of wanting to deprecate the state machine with its hard-coded dialog flows/trees. Together with their Conversation Driven Design (CDD) in the form of Rasa-X this is a very compelling option.
Their entities are contextually aware and they follow an approach where entities and intents really merge.
Compound entities are part of the offering. Entities can be segmented according to roles and groups.
Deprecation of intents have been announced and initiated.
Based on their expansion, funding, developer advocacy and events, this is a company to watch.
Hopefully the bigger players will emulate them. One of their strong points is developer advocacy and being the technology of choice for seed projects.
RASA has succeeded in creating a loyal developer following.
I cannot help but feel Amazon Lex with Oracle Digital Assistant (ODA) find themselves in this group. My sense is that someone will not easily opt for ODA or Lex if they do not have an existing attachment with Oracle or AWS from a cloud perspective.
Especially if the existing attachment is Oracle Cloud or Oracle Mobile Cloud Enterprise. Or with AWS via Echo & Alexa.
Another impediment with ODA is cost. Free access plays a huge role in developer adoption and the platform gaining that critical mass. We have seen this with IBM being very accessible in terms of their free tier with an abundance of functionality.
Microsoft has gone a long way in more accessible tools, especially with developer environments. RASA, even though a relatively late starter, has invested much time and effort in developer advocacy. Google Dialogflow is also popular and often a point of departure for companies exploring NLU and NLP.
ODA is not accessible enough and the existing impediments to experimenting and prototyping are not helping.
These trends include:
- Intent deprecation.
- Intent Disambiguation with auto learning menus.
- The merging of intents and entities
- Deprecation of the State Machine. Or at least, towards a more conversational like interface.
- Complex entities; introducing entities with properties, groups, roles etc.
There are both horizontal and vertical growth with chatbot technology. From the diagram above it is clear where this growth is taking place:
Vertical — Technology
The Conversational UI is moving away from a structured preset menu and keyword driven interface. With movement towards unstructured natural language input and longer conversational input. Allowing users to disambiguation when two or three intents are close in score. Using this as a mechanism for autolearning.
Horizontal — User Experience
In this dimension the bot is transforming from a messaging bot to a truly conversational interface. Away from click navigation to eventual unrestricted compound natural language.
The Digital Employee
The end-game is where the digital employee, emerging from the chatbot environment, has evolved into areas of text and speech.
With contextual awareness on four levels:
- Within the Current Conversation
- From Previous Conversations
- From CRM & Other Customer/User Related Data Sources
- Across different mediums
The digital employee with grow across different mediums and modalities. Mastering languages with detection, translation, tone, sentiment and automatically categorizing conversations.
Mediums will include devices like Google Home, Amazon Echo, traditional IVR and more. As we as humans can converse in text or voice; similarly the digital employee will be able to converse in text or voice.
Chatbot Offerings Rating Matrix
In rating the nine chatbot solutions I looked at nine key points. Obviously NLU capability is key in terms of intents and entities. I was especially harsh on the extend to which entities can be applied in a compound fashion, annotated and detected contextually with decomposition.
Dialog and state development and management are also a key points; ease of development is important and to what extend collaboration is possible.
The other elements are self explanatory.
For different organizations, disparate element are important and will guide their thinking and eventually determine their judgement. For instance, even-though Lex does not feature in many respects, if a company is steeped in AWS for other service, Lex might be the right choice.
The same goes for Oracle, MindMeld etc.
Graphic Call Flow / Dialog Development Tools
For larger organizations and bigger teams, collaboration is important. Ease of sharing portions of the dialog and co-creating is paramount. Hence organizations have a need for graphic development environments. Other teams prefer a more flexible native code approach.
IBM Watson Assistant made a big addition with the launch of Actions.
Rasa with their tool called Rasa-X is so unique that it is hard to accurately categorize with the other environments. Rasa-X is graphic, it allows for editing and development, but is far more comprehensive.
The Jarvis dialog development and management feature is under development and has not been released yet.
Natural Language Understanding underpins the capabilities of the chatbot. Without entity detection and intent recognition all efforts to understand the user come to naught.
On some elements of a chatbot environment, improvisation can go a long way. This is not the case with NLU. LUIS has exceptional entity categorization and functionality. This includes decomposable entities. IBM Watson Assistant can also be counted as one of the leaders, with RASA & NVIDIA Jarvis.
I also looked at the the integration of the NLU components into the other chatbot components. This is where Microsoft excels with their growing chatbot real-estate.
Maturity of any framework is tested in an enterprise environment where implementations with diverse use-cases and ever expanding scale are present.
Enterprise readiness is an evaluation criteria which does not enjoy the attention it deserves. Once vulnerabilities are detected, too much money and time have already been invested in the technology.
It is impossible to compare frameworks on a one-to-one basis, hence I created the five points of consideration as seen in the image below. It must be noted that one or more of these five elements, might be of higher importance to some organization than others. Hence that may draw them into a certain direction.
Again, if a company is already heavily invested in Oracle Cloud or AWS, then that will be a huge deciding factor for them. Overriding other considerations and easing the pain of other shortcomings.
Cost plays a big role, and this again speaks to the accessibility of environments like Cisco MindMeld and RASA; especially for initial prototyping.
This is a mere overview based on a matrix with points of assessment I personally deem as important.
And again, based in how important a particular point on the matrix is to you or your organization, will influence our judgement.
In the final analysis the software is to serve a purpose in your organization and current cloud landscape. The offering best suited for that purpose is the best choice for you.
Subscribe to my newsletter.
NLP/NLU, Chatbots, Voice, Conversational UI/UX, CX Designer, Developer, Ubiquitous User Interfaces, Ambient…