## 5 State of the Art in Conversational AI Platforms
### Conversational AI Platforms Backed by Startup Companies  
5.1.1. Botpress (BP)  
Botpress is an open-source framework written in JavaScript (Node.js.). Botpress provides a user interface where developers can design and manage their chatbots after their deployment. Developers can fully customize chatbots, use built-in modules such as QA, analytics, flow editor and NLU, add business logic, or integrate third party APIs. Chatbots developed with Botpress can be deployed on Facebook, Slack, Telegram, Twilio, and on websites. Botpress framework is a dual-license framework (free and professional edition). The Botpress framework does not support by default the integration of KGs but provides flexibility to integrate them via API calls [106; 108]. Furthermore, there is no clear documentation whether the chatbots developed with Botpress could collaborate and continue to work in a distributed way. This architectural concept is not included in the initial concept of the platform.  
5.1.2. OpenDialog (OD)  
OpenDialog is an open-source framework for developing conversational applications to automate, scale and improve processes and interactions between humans and machines. OpenDialog is a Laravel application with a MySQL backend for user management and content management. OpenDialog uses NLU and ML techniques and can be connected to KG databases to store conversations and structure organizational knowledge. Specially, OpenDialog uses the Dgraph backend (a graph-based database written in Go) [109]. OpenDialog can be easily integrated in many different channels such as, spaCy, Facebook Messenger, WhatsApp and others. Additionally, it can communicate and collaborate with other chatbot platforms such as Google's Dialogflow, Amazon's Lex, Microsoft's Bot Framework, Rasa and others. Open dialog has recently released its updated beta version 1.0. with the aim to enrich its documentation and expand its user's community support. [107]. OpenDialog developers are stating in their manifesto that their platform is providing to the users the possibility to design multi-chatbots systems, which are considered autonomous entities that can collaborate with other chatbots and humans to solve common problems [48].  
5.1.3. Rasa Framework (RF)  
Rasa is an open-source conversational framework written in Python. It has two main open-source components: Rasa NLU and Rasa Core. Rasa Enterprise is a paid and more advanced version of Rasa platform. Rasa core allows more sophisticated dialogues trained by using interactive and supervised ML. Rasa core supports Facebook Messenger, RocketChat, Slack, Telegram, and Twilio. Rasa NLU component is responsible for the natural language understanding. Rasa can be connected with knowledge graph databases such as Grakn [110], Neo4j [111], OrientDB [112], GraphDB [113] and provide more specific and accurate knowledge to end-users. Additionally, developers can add different spoken languages to the framework. Rasa framework provides a strong documentation and a vivid open-source community. Rasa does not (currently) provide a user interface to its open-source version. A user interface is available with the Rasa X component installation and with the enterprise version [105; 114; 115; 116; 117; 118]. Furthermore, Rasa can support the distributed collaboration architecture and is allowing users to develop systems with multiple bots, which are named as metabots or multi-chatbots. However, the developers are facing many challenges, such as intent routing, context switching and server handling [49; 50]. Recently,Botfront.io platform (available from 30 August 2021, [[https://botfront.io/](https://botfront.io/)]([https://botfront.io/](https://botfront.io/))) was developed by Rasa community as a front-end that provides a sophisticated UI for the development of Rasa chatbots [119].