I would like to use RASA NLU (and RASA Dialog Manager) through direct Python methods,
avoiding to pass through HTTP servers, because I want to embed the RASA intent/entities classifier in my NLP standalone backend application (not a chatbot).
Incidentally I found two articles that explain how to do. The first one is by the great Vincent Warmerdam:
So I already answered my specific problem, but my question is still: are
Minor complain: BTW, the term RASA SDK used in RASA docs, refers to the action (server) application custom functions (rasa_sdk.*, see: Actions).
I in my humble opinion is a misleading name. I’d call it in different name… maybe action_sdk.*
I’d rather call RASA Python SDK the python modules set to and RASA (Python) Actions SDK the subset of method to be used in action development.
@solyarisoftware
Thanks for digging up these 2 articles and clarifying rasa sdk.
Interacting with RASA directly through python programmatically instead of slowly through rasa shell (slow development/testing!) was common sense to me but i’m surprised there isn’t much information on how it’s done.
Would you be able to share any workflows on how to learn about directly interacting with the nlu and dialogue management part of rasa (eg. what are some commonly used methods, classes, python pipelines), and how you efficiently develop and test?
I don’t have a workflow to suggest. I casually discoverd these articles. I think RASA python sdk (without passing through the HTTP server APIs) is useful for all applications where you want to use just the NLU features (e.g. intent clasisfication / named entity recognition), inside a bigger NLP task (not just a chatbot…), so for sure the python API interface would be officially exposed/ better documented.