As of the 0.20.0 release of Rasa X, there are limitations on bulk import and delete of content. These limitations prompted the development of rasacli. Here's a comparison of the capabilities of the Rasa X UI, API and rasacli:
In past releases of Rasa, the NLU training data could be formatted as json
or markdown
. The Rasa team has encouraged developers to move to markdown
and this is what I have used.
Please note that the tables below refer to bulk operations unless otherwise noted. The UI supports CRUD operations on individual items.
Capability | UI | API | rasacli | Notes |
---|---|---|---|---|
Get (md) | See issue #4076 | |||
Get (json) | x | gettraining |
||
Get entities (json) | x | getentities |
||
Get intents (json) | x | |||
Add (md) | x | See issues #4076 and #3580 | ||
Add (json) | x | x | ||
Update (md) | updtraining |
|||
Update (json) | x | updtraining -f json |
||
Update by id (md) | x | |||
Update by id (json) | x | x | ||
Delete | deltraining |
|||
Delete by id | x | x |
Capability | UI | API | rasacli | Notes |
---|---|---|---|---|
Get (md) | x | x | getstoriesmd |
|
Get (json) | x | getstories |
||
Add (md) | x | addstories |
||
Update (md) | x | updstories |
There's a known API bug #4168 | |
Update by id (json) | x | |||
Delete | delstories |
|||
Delete by id | x |
Capability | UI | API | rasacli | Notes |
---|---|---|---|---|
Get | x | x | ||
Add (json) | x | x | ||
Update (json) | x | updtemplates |
||
Delete | x | deltemplates |
The Rasa X environments configuration. The Rasa X API has calls to get and put the environment config.
The Rasa configuration file, typically in config.yml
, this defines the pipeline for the Rasa NLU and policies for the Rasa Core. The Rasa X API has undocumented calls to get the config.
The Rasa domain configuration, stored in the domain.yml
.
Capability | UI | API | rasacli | Notes |
---|---|---|---|---|
Get | x | x | getdomain |
|
Add | x | There's no POST api call for the domain |
||
Update | x | upddomain |
||
Delete | x | deldomain |
See issue #4080 |
The Rasa credentials file used by Rasa Core to allow access by external services. Typically stored in credentials.yml
. The REST interface can be enabled by adding a single line:
rest:
The Rasa endpoints file, typically in endpoints.yml
, tells the Rasa Core where to find components including the action_endpoint and tracker_store.
There's no API for the endpoints configuration. The filename is passed to the rasa core commandline in the --endpoints parameter.
The Rasa column denotes the Rasa component that handles the request.
Endpoint | Rasa | Details |
---|---|---|
/projects//data | NLU | Training |
/projects//logs | NLU | Test intent |
/projects//models | Core | Models |
/chat | Core | Chat interface |
/auth | X | Authentication |
/conversations/ |
The endpoints to retrieve config items:
Endpoint | Rasa | Details |
---|---|---|
/projects//data | NLU | Training |
/stories | Core | Stories |
/templates | Core | Templates |
/environments | X | Env file |
/domain | Core | Domain file |
/projects//settings | NLU | Pipeline Config |
Core | Policy Config | |
Core | Credentials | |
Core | Endpoints |