EthanLab Software Development · Product Management · Tech Reviews
Back to research notes

[Conversational AI-9] 2020 Chatbot Framework Comparison

Updated

This is a 2020 chatbot framework comparison, resulting from months of research and updates. This table organizes 10 well-known chatbot frameworks, covering almost all current chatbot features. After a round of basic verification, I conducted deeper usage to address ambiguities, thereby obtaining a detailed comparison. A revision and update were made in October. To integrate the data into the AI column of this blog, I also overcame the issue of displaying tables on the blog, and I am sharing this with industry experts and enthusiasts.

Type Feature Description Google Microsoft Xiao-i Robot Xiao-i Robot IBM DYDU SAP Flow XO Meya Gupshup Hubspot
Dialogflow AzureBot iBot Enterprise
/ Pro
iBot International
/ Express
Watson DYDU Recast.ai Flow XO Meya Gupshup Hubspot
Operation & appearance Code-free backend Chatbots can be built by dragging flowcharts through the backend interface, without writing code. √ × √ √ √ √ √ √ × √ √
Structure & logic Knowledge-independent assistant Editing knowledge (skills) and creating assistants are independent of each other. × √ × × √ √ √ × × × ×
Bots collaboration A series of bots with unrelated knowledge can be defined, and then the overall output of an assistant is constructed by combining these bots. × × × √ × √ √ √ √ √ √
FAQ-based intent Supports FAQ-format intents and answers, where the answer for each intent is fixed. √ √ √ √ × × × × × × ×
Multi-language Multi-language Supports multilingual conversations. √ √ √ √ √ √ √ × √ × ×
Auto-language detection The system automatically detects the language, so users do not need to select it themselves. √ √ × √ × √ √ × √ × ×
Pre-build content Knowledge Pre-sets common general or industry knowledge, allowing customers to quickly build chatbots. √ √ √ √ √ √ √ √ √ √ √
Knowledge edit Intent — intent conflict resolution Uses AI technology to detect errors and conflicts generated when humans manually fill in intents/user samples. × × √ × √ × √ × × × ×
Intent — utterance Allows editing different phrasings (extended questions) for a specific intent. √ √ √ √ √ √ √ × × × √
Entity — my entity Entities can be defined manually (e.g., via synonyms). √ √ √ √ √ √ √ × × × ×
The system can automatically recommend synonyms. √ × × √ √ × × × × ×
Multi-turn Dialog If the question lacks sufficient information, the system can ask the user follow-up questions (multi-turn dialogue). √ √ √(ibot ui) √ (scene) √(5) √ √ √ √ √ √
× (workflow) √(50)
Dialog — slots The system can automatically extract and fill slots. √ √ √ √ √ √ √ √ √ √ √
Dialog — disambiguation When a user’s question matches more than 2 intent nodes in a dialog, the assistant asks the user to determine the correct intent. × √ × √ × × × × × ×
Dialog — Intent Recommendation When a user’s question is out of service scope or the intent cannot be recognized, the system can recommend related intents to the user. × √ √ √ × √ × × × × ×
Dialog — multi slots filling For multiple missing pieces of information for an intent, the system asks all questions at once, allowing the user to supplement all information in one go, rather than asking and replying item by item. √ √ × √ × × × × × ×
Dialog — multi reply For the same intent, there are multiple answers, allowing the system to randomly select one to produce a more natural conversational effect. √ √ √ √ × √ √ × √ √
Dialog — Digression Allows users to switch topics (nodes) within a dialog, for example, jumping from one process node to another, and allowing jumps back, etc. × √ √ × √ √ √ √ √ √ ×
Dialog — interruptions Allows users to temporarily discuss different topics during a conversation and then return to the original topic. × √ √ × × √ × √ (quit keyword) × × ×
Knowledge map Displays the relationships and connections between different knowledge bases. × √ √ × √ × × × × ×
Answer – variable Provides specific parameters for the system to obtain relevant information, such as username, IP, URL, etc., which can also be added directly to answers in variable form. √ √ × × √ √ √ √ × √
Sentiment Allows the system to make corresponding responses to positive, negative, and varying degrees of emotional states. × × × × √ √ × × × ×
Import/export Supports knowledge export and import. √ √ √ √ √ √ × × × × ×
Dashboard Analytics dashboard Provides reports for customers to perform data analysis. √ √ √ √ √ (7 D) √ √ √ (2 WK) √ (30 D) √ √
√ (30/90 D) √ (3 M) √ (increase)
Testing Tester Provides various tools for testing questions. √ √ √ √ √ √ √ √ √ √ √
Batch test Supports batch testing of questions. × √ √ × × × × × × ×
Improve Deep learning model Supports deep neural network models. √ √ √ √ √ × √ × × × ×
Active learning Collects conversations pending confirmation from logs, and learns them into the knowledge base after customer confirmation. √ √ √ √ √ √ √ × × × ×
Intent recommendation Recommends intents based on existing conversation data, thereby achieving faster training. × √ √ √ √ × × × × ×
Integration Custom plug-in Can customize integration with other APIs. √ √ √ × √ √ √ √ √ √ ×
Preview link Can provide a link to preview the chatbot. √ √ √ × √ √ √ √ × × ×
Service desk integrations Supports seamless transfer to human service. √ √ √ × √ × √ √ √ √ √
Versioning Allows version control for assistant editing results. √ √ × √ × √ × × × ×
Authorization Access control Can allow adding access personnel and managing corresponding permissions. × √ √ √ × √ × × × × √
Search skill Supports expanding the assistant’s knowledge by searching unstructured data. √ √ √ × √ × × × × × ×
Data Log data across instances Integrates insights from the production environment into the development environment. × √ √ × √ √ × × × × ×
Data isolation × × √ √ × × × × × ×
Service SLA 99.9% Service Level Agreement (SLA) achieves 99.9% uptime. × √ × × √ × × × × × ×
Mail subscription Supports subscribing to data such as comments via email. × × × × √ × × × × ×
Survey Can set up survey templates (for internal or external surveys). × × √ × × √ × × × × ×
Dialogue Preprocessing Through preset dialogue matching rules, simple scenarios can be quickly customized. × √ × × √ × × × × ×
Matching strictness Matching thresholds can be adjusted. × √ × × × √ × × × ×
Scheduled Tasks Supports scheduled synchronization of knowledge and words. × √ × × √ × × × × ×
Prefix and Suffix Processing Can automatically ignore specific words or short phrases located at the beginning or end of a sentence. × √ × × × × × × ×
Stop Words Can automatically ignore specific words at any position in a sentence. × √ × × × × × × × ×
Table QA Can dynamically load structured data and convert it into SQL statements through natural language interaction to query the database. × √ × × × × × × × ×
Quality Inspection Automatically analyzes interaction logs and provides conversations with potential erroneous responses to operations personnel for review. × √ × × × × × × ×
Regional Dimension Provides different answers based on the user’s location. × √ × × √ × × × × ×
Knowledge Editing Lock When an editor operates on a specific knowledge item, the system locks that knowledge group, preventing other personnel from editing it, thereby preventing conflicts. × √ × × × × × × × ×