Choosing the right chatbot platform can be a daunting task, especially with so many compelling options available and their constant evolution. If you’re grappling with decisions like whether to go with Rasa, Google DialogFlow, or AWS Lex for your next project, you’re not alone. Each platform has its strengths and considerations, making the choice highly dependent on your specific needs and goals.
So, what should you consider when evaluating these platforms? How do you determine which one aligns best with your project requirements and future scalability? At Ideas2IT, we’ve navigated this decision process and recently found ourselves choosing Rasa over DialogFlow and Lex. Here’s a look into why we reached this conclusion and what you might want to consider in your own evaluation.
About Rasa
Rasa is an open-source Machine Learning (ML) framework for building chatbots. It supports both text and voice-based conversations. It can connect to messaging channels like Facebook, Slack, etc., and APIs.
Rasa also has an additional component called Rasa X, which helps in improving the chatbot using real conversations and also helps in building a chatbot.
There are a lot of frameworks and platforms to build a chatbot. The basic features are common in all the frameworks. Considering features and customization, in our opinion, Google Dialogflow and Rasa works better.
Rasa vs Dialogflow vs Lex - Chatbot Features Comparison
Intent/Entity Model
Rasa has a concept of a pipeline for this. They have added a recent state-of-the-art model - Bidirectional Encoder Representation from Transformer (BERT) into the pipeline which helps in developing better models. Rasa also provides an additional advantage of adding our own custom model into the pipeline for any task.
While Dialogflow from Google is a solid platform with good models and pre-trained entities, but it does not support custom models. The same goes for Lex.
Conversation Flow
For the conversation flows, Rasa uses a transformer model (recent state-of-the-art model) and it’s based on the data or conversation flow given.
In this way, we can create our own flow in a more generic manner.
In Dialogflow, conversations are driven by the context provided for intents (their own dialogue management), which is somewhat rule-based and not as flexible.
Model Tweaking
Since Rasa is open-source, we can evaluate the model and configure it based on our needs.
In Dialogflow or Lex, models are a black box, where we don’t have any option of improving or evaluating the models.
API Integration
In Rasa, any external API can be integrated, like SQL, graph db or our own API to keep up the conversation.
Dialogflow or Lex also provides API integration but Rasa additionally supports the Knowledge graph integration which is more useful in having a better conversation.
Language Support
Rasa provides language support using the pipeline concept since it is more customizable, we can add our own component to support multiple languages.
Dialogflow supports multiple languages as an inbuilt feature, but Lex currently supports only US English.
Deployment
It can be deployed in the cloud and also on-premise.Lex and Dialogflow are cloud-based platforms.
Customization
Rasa provides a lot of customization, in terms of business logic to be implemented, model, deployment and integration. Rasa provides its SDK where you can implement your own custom logic. Dialogflow and Lex don’t provide any kind of customization based on business needs, only the training data and the input rule-based dialog flow can be customized.
Pricing
There is an enterprise version in Rasa which provides additional features like Analytics, Expert support, Role-based access control, etc.
Dialogflow has a Freemium version and also an Enterprise version. In the enterprise version, it supports Text to Speech/Speech to Text features, Sentiment analysis feature, etc.
With Lex, it’s pay for what you use. The pricing is based on the number of requests.
Stability
Rasa has more than 8.5k GitHub stars with 300+ contributors, provides consistent and stable releases every month.
Documentation
Rasa also has good documentation, video tutorials, and examples for anyone to get started. They have a separate forum to resolve any issues and also a blog page to explain their features.
Project Adoption
Rasa supports a diverse range of industries like Healthcare, Insurance, Travel, HR, Banking, Telecom, and a lot more.Companies like HCA healthcare, Helvetia Insurance, Adobe, Orange SA telecom, Raiffeissen Swiss bank, Engie Utilities use Rasa to create their AI assistants.
Latest Improvement
Recently Rasa has added support for Tensorboard 2. Tensorboard is used to visualize training metrics on top of Tensorflow. It helps to understand if the model has been trained properly and you can make changes to your hyperparameters based on the metrics to improve your model.
Funding
Rasa has announced that it has raised $13 million in a Series A round of funding led by Accel, with participation from Basis Set Ventures, Greg Brockmon (co-founder & CTO OpenAI), Daniel Dines (founder & CEO UiPath) and Mitchell Hashimoto (co-founder & CTO Hashicorp).
Cons of Rasa
- Complex Setup: The initial setup of Rasa can be cumbersome due to extensive installations and configurations required. This complexity can be challenging for teams without dedicated DevOps resources.
- Technical Expertise Required: Rasa is not beginner-friendly; it demands prior knowledge of Python and conversational AI principles. This steep learning curve can be a barrier for teams without experienced developers.
- Resource Intensive: Rasa relies on NLP libraries like spaCy, which can be memory-intensive and may slow down server performance, particularly in environments with limited resources.
- Cost Implications: While Rasa is free for low traffic volumes, scaling up to handle higher traffic requires moving to a paid plan, which can add to the overall cost.
- Limited Fine Control: Rasa provides flexibility but may not offer fine control over certain aspects of dialogue processing, which could be a drawback for users seeking highly customized interactions.
Our Verdict
Google Dialogflow and Lex help you building a chatbot easily and it does not require any knowledge of AI. But If you want to have a wide range of customizations and more control over how you build your chatbot, Rasa would be the better option.
Conclusion
Selecting the right chatbot platform is essential for meeting your business needs. While Google Dialogflow and AWS Lex offer ease of use, Rasa excels in flexibility and customization. Its open-source nature allows for advanced model tweaks and seamless API integration, making it ideal for complex solutions. Although Rasa requires a deeper understanding and setup, its benefits in customization and control are substantial.
At Ideas2IT, we specialize in deploying Rasa chatbots and can guide you through its intricate features to create a tailored solution. For more information, visit Ideas2IT or contact us for a consultation.