Step 1: Understand the Rasa Stack

Don’t feel like reading?

The Rasa Stack is a set of open source machine learning tools for developers to create contextual AI assistants and chatbots:
  • Core = a chatbot framework with machine learning-based dialogue management
  • NLU = a library for natural language understanding with intent classification and entity extraction

NLU and Core are independent. You can use NLU without Core, and vice versa. We recommend using both.

Lets start with an example. Imagine you’ve built an AI assistant that sells renters insurance. At the end, you ask your user Which email shall I send the confirmation to? and they respond with Please send the confirmation to Now it is time for the Rasa Stack to get to work:

rasa stack
  1. NLU understands the user’s message based on your previous training data:
  • Intent classification: Interpreting meaning based on predefined intents (Example: Please send the confirmation to is a provide_email intent with 93% confidence)
  • Entity extraction: Recognizing structured data (Example: is an email)
  1. Core decides what happens next in this conversation. It’s machine learning-based dialogue management predicts the next best action based on the input from NLU, the conversation history and your training data. (Example: Core has a confidence of 87% that ask_primary_change is the next best action to confirm with the user if they want to change their primary contact information.)