Rasa X UI & API Data Import

A confusing mix of formats and interfaces

Posted by Greg Stephens on August 05, 2019 · 4 mins read

I’ve been working on migrating bots from Rasa to the new Rasa X. I’m excited about Rasa X but there’s still quite a bit of work to be done. In it’s current form it has that rushed to release feel.

After spending a few weeks working with Rasa X and importing data from different bots, I’m still struggling to keep track of what I can do via the UI, API and bugs related to the system. The import and other UI limitations have also lead me to develop a command line tool, rasacli, to try and fill in the gaps for managing my Rasa X data. rasacli is still in the early stages of development and I’ll write more about it later.

Here, I want to summarize where I think Rasa X is at in terms of bulk importing and managing of NLU/training, Core/Stories, template response and domain data. I’ll talk about each of them separately.

NLU Training Data

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    

Core Stories

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    

Template Responses

Capability UI API rasacli Notes
Get x x    
Add (json) x x    
Update (json)   x updtemplates  
Delete   x deltemplates  

Domain

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