] Understanding How RASA chatbot works Skip to main content

Featured

Let's Learn about RASA Policies

What are policies? How they affect your model? What is its importance? What are different policies present in RASA? These are some of the questions which comes in mind of any new RASA developer. We will be discussing answers of all these questions in detail. Before moving ahead to learn about policies, it will be helpful to have a look on rasa pipelines . What are policies in Rasa? Once we have correctly predicted our intents and entities, the model now has to identify the actions which are required to be performed in order to give a final output. Policies are used to decide which action needs to be performed at each step in a conversation. There are machine Learning and Rule Based policies which your assistant can use. While predicting the next action, RASA uses intents, entities and the conversation done so far. RASA Prediction You can add policies in config.yml file under the keyword policies . These policies along with the Intents, Entities and conversation done so far will assign...

Understanding How RASA chatbot works

What is RASA and How it works? What is NLU in RASA? Why do we use RASA? Is RASA a NLP? What is RASA for? Is RASA a chatbot? These are some of the questions which come in our mind when we think of RASA. Let's try to know about them... 

In this era of automation, people are moving towards the development of chatbots to a greater extent. Even small businesses are adding chatbot plugins to their websites to perform quick actions. RASA is an open source framework which help us achieve this. 

RASA have two main models in it:

  1. NLU 
  2. Core
NLU: 

NLU or natural language understanding model tries to understand the sentence written by the user and identifies the presence of intents and entities in them. nlu.md file data is used as a training data for this model.

Intent: An intent is a group of utterances with similar meaning. Meaning is the important word here. Consider these two sentences: “I want to make a reservation in an Italian restaurant” and “I need a table in a pizzeria”.

Entity: Entities are structured pieces of information inside a user message

Output: Output of this model is the intent name and the entity.
 
Core:

Core model tries to predict the next action  which is required to be executed in the flow. After the core model predicts the next action it is performed using either printing the template text from domain.yml file or executing the run method from the actions.py file. stories.md and rules.md file behaves as a training data file for this model.

Responses: Responses are messages that your assistant sends to the user. A response is usually only text, but can also include content like images and buttons.

Output: output of this model is predicted next action.

 

It should be noted that NLU model and Core model uses some configurations which can be defined in the config.yml file as pipelines and policies. Following is an example of a config file:



Here the Pipeline takes care of the NLU part i.e. Identification of the intent and entities. Policies takes care of the core part i.e. selection of the next action.

To learn in detail about Rasa Pipeline click here.

In later blogs we will dig deeper into RASA. Till then Happy Learning !!!


Comments

Popular Posts