Command Line Interface
These docs are for version 1.x of Rasa Open Source.
Command Line Interface
Cheat Sheet
The command line interface (CLI) gives you easy-to-remember commands for common tasks.
| Command | Effect |
|---|---|
rasa init |
Creates a new project with example training data, actions, and config files. |
rasa train |
Trains a model using your NLU data and stories, saves trained model in ./models. |
rasa interactive |
Starts an interactive learning session to create new training data by chatting. |
rasa shell |
Loads your trained model and lets you talk to your assistant on the command line. |
rasa run |
Starts a Rasa server with your trained model. See the Configuring the HTTP API docs for details. |
rasa run actions |
Starts an action server using the Rasa SDK. |
rasa visualize |
Visualizes stories. |
rasa test |
Tests a trained Rasa model using your test NLU data and stories. |
rasa data split nlu |
Performs a split of your NLU data according to the specified percentages. |
rasa data convert nlu |
Converts NLU training data between different formats. |
rasa export |
Export conversations from a tracker store to an event broker. |
rasa x |
Launch Rasa X locally. |
rasa -h |
Shows all available commands. |
Create a new project
A single command sets up a complete project for you with some example training data.
rasa init
This creates the following files:
.
├── __init__.py
├── actions.py
├── config.yml
├── credentials.yml
├── data
│ ├── nlu.md
│ └── stories.md
├── domain.yml
├── endpoints.yml
└── models
└── <timestamp>.tar.gz
The rasa init command will ask you if you want to train an initial model using this data. If you answer no, the models directory will be empty.
With this project setup, common commands are very easy to remember. To train a model, type rasa train, to talk to your model on the command line, rasa shell, to test your model type rasa test.
Train a Model
The main command is:
rasa train
This command trains a Rasa model that combines a Rasa NLU and a Rasa Core model. If you only want to train an NLU or a Core model, you can run rasa train nlu or rasa train core. However, Rasa will automatically skip training Core or NLU if the training data and config haven’t changed.
rasa train will store the trained model in the directory defined by --out. The name of the model is per default <timestamp>.tar.gz. If you want to name your model differently, you can specify the name using --fixed-model-name.
Arguments for rasa train
usage: rasa train [-h] [-v] [-vv] [--quiet] [--data DATA [DATA ...]]
[-c CONFIG] [-d DOMAIN] [--out OUT]
[--augmentation AUGMENTATION] [--debug-plots]
[--fixed-model-name FIXED_MODEL_NAME] [--persist-nlu-data]
[--force]
{core,nlu} ...
Interactive Learning
To start an interactive learning session with your assistant, run
rasa interactive
If you provide a trained model using the --model argument, the interactive learning process is started with the provided model. If no model is specified, rasa interactive will train a new Rasa model with the data located in data/ if no other directory was passed to the --data flag. After training the initial model, the interactive learning session starts. Training will be skipped if the training data and config haven’t changed.
Start a Server
To start a server running your Rasa model, run:
rasa run
Visualize your Stories
To open a browser tab with a graph showing your stories:
rasa visualize
Normally, training stories in the directory data are visualized. If your stories are located somewhere else, you can specify their location with --stories.
Start an Action Server
To run your action server run:
rasa run actions
Start Rasa X
You can start Rasa X locally by executing:
rasa x
👋 I can help you get started with Rasa and answer your technical questions.