We're excited to announce the release of Rasa Open Source 2.0. This major release marks a milestone in the development of Rasa Open Source, and it's full of enhancements that reduce the learning curve to get started while expanding configuration options for advanced users. You can download the new release by running
pip install rasa==2.0.0.
Before we dive into what's new, we want to say thank you to all of the community members who helped us test the alpha and release candidate versions. The pre-release versions have already been downloaded thousands of times, and we appreciate your help shaping the direction of this release and ironing out the implementation.
This is a big update, and there's more to 2.0 than we can cover in one blog post. That's why we're hosting a 90-minute webinar on October 14th, dedicated to unpacking the changes in Rasa Open Source 2.0. We'll hear from Rasa CTO and co-founder Alan Nichol as well as team members from Engineering, Research, and Dev Rel. Be sure to register-even if you can't make it to the live broadcast, we'll email the recording to everyone who signed up.
Without further ado, here's what's new in 2.0:
RulePolicy and rule snippets
In Rasa Open Source 2.0, we've simplified dialogue policy configuration, drawn a clearer distinction between policies that use rules and those that use machine learning, and made it easier to enforce business logic.
Previously, rule-based logic was controlled by a combination of 3 or more dialogue policies. The new RulePolicy allows you to implement forms, map actions to intents, and specify fallback logic, using a single policy. Rule snippets, a new training data format, allow you to easily define the rules your assistant should follow.
The forms implementation has been moved from the Rasa SDK into the Rasa Open Source library. This makes the Rasa SDK more lightweight, and moves essential functionality into the main library.
YAML training data
Rasa Open Source now supports YAML for training data. This offers 3 advantages: the ability to support custom metadata in training examples, like the user who added it and timestamp; the ability to divide long files into smaller, more modular ones; and the ability to support rich media in the response selector.
Rasa Open Source now simplifies installation by recommending a default NLU pipeline when you initialize a new project. The suggested configuration can be overridden by advanced users who are ready to customize the pipeline.
Retrieval intents were introduced in Rasa Open Source 1.3 as an experimental feature, making it easier to handle single-turn interactions like chitchat and FAQs. In Rasa 2.0, we've added full support for retrieval intents, including rich media in responses, like images and buttons, as well as full Rasa X support.
Documentation updates + Rasa Playground
Alongside the 2.0 release, the Rasa documentation has received a new theme and updated information architecture. The new layout was designed with both beginning and returning users in mind, to make relevant articles more discoverable.
We've also added the Rasa Playground to the documentation. You can use the Playground's live code editor to prototype new projects directly in the browser, without installing Rasa Open Source first. When you're happy with your prototype, you can download the project files to keep building.
Migrating to 2.0
If you're upgrading an assistant built with an older version of Rasa Open Source, we've put together a guide to migrating from 1.10 to 2.0. In the guide, you'll find instructions for converting training data files from markdown to YAML, as well as how to update your dialogue policies and training data to use the new RulePolicy.
In addition, Rasa Open Source 2.0 is fully compatible with Rasa X version 0.33.0. Upgrade to Rasa X 0.33.0 to get support for YAML training data and the ability to view, create, and edit rule snippets. Rasa X 0.33.0 also includes complete support for retrieval intents, which now appear alongside regular intents in the UI, and you can view, add, and edit multimedia responses.
The updates we've shipped in 2.0 bring us closer to two goals: reducing the upfront knowledge needed to build an assistant with Rasa and putting even more powerful tools in the hands of developers. We're excited for you to try it out.
Keep up with updates by following us on Twitter and joining the conversation in the forum!