Rasa X on the server, spaCy

Hi all!

Just trying to understand the workflow: The installation-docs of rasa explain how to install spaCy-language-packs (in my case german). The installation-docs of rasa x says, it installs rasa automatically. How can I influence the spaCy-language-pack in this case?

Installing rasa x to a server: The docs says, this is done with docker. Cool. How can I influence spaCy in this case? Is there a docker-image with the current rasa x-version and different spaCy-configs?

Thanks for the help. Cheers


This is a good point. As of now, there aren’t specific packages of rasa x for which NLU pipeline you are using. So in order to use spacy, I suppose at the moment the best way is to install rasa x, look at which version of rasa it has downloaded, and then download the spacy version of that rasa. E.g.

pip install rasa-x --extra-index-url http://pypi.rasa.com

will install (atm) rasa-x==0.19.2, which runs on rasa 1.1.4. So then

pip install rasa[spacy]==1.1.4

Should get you what you need, and you can change your language pack via the regular instructions.

With regards to deploying in docker, Rasa x should always pull the full tag of the RASA_VERSION in your .env file, so spacy will automatically be installed. Then again you should be able to change the language in the pipeline.

Sorry to wake up this old thread. I am planning to use Spacy and also a custom sentiment analyzer as components on my virtual machine with rasa x. Therefore I need to install the language pack and a nltk library. Locally it is easy to just download it via a python command, but not so much on the server, as everything is inside docker containers. How would I install those packs then?

Hi @Taufred, you can extend the rasa/rasa docker image to install any extra requirements with pip and reference that image in your deployment :slightly_smiling_face:

@erohmensing, that is not entirely what I meant, but thanks for the answer! So I do understand how to install nltk for example. But using the Sentiment Analyzer requires running the command nltk.download(“vader-lexicon”) for example. This is installed in python code and not by a pip command. How would I add this to the image?