Change the /tmp folder path in RASA

Hi All,

I trained a model using this command:

rasa train 

This created a .tar.gz in my models folder.

Then I started the rasa server with the following command:

rasa run --debug

The above commands tried to unzip this .tar.gz model and use /tmp folder to keep the unzipped model files and creates multiple .py files, I want to change this /tmp directory to some other directory.

Below are the screenshots of /tmp folder .py files and rasa run --debug :-

rasa run --debug screenshots :-

/tmp folder .py files screenshots:-

How I can change this /tmp directory to some other directory, can anyone please suggest me

Thanks in Advanced :slightly_smiling_face:

Hi! :smiley: I think it’s not possible because this is a rasa core function

Maybe you can try something using rasa binary repository and build own custom rasa version but, I believe this not a good way because de future rasa update

You can change models path, but the extracted path… I think isn’t possible.

Maybe @amn41 can explain better :smiley:

@naveensiwas can you explain why you want to change this? As João says, you’d probably have to fork the codebase. But I’m curious why the tmp folder matters.

@amn41 When we (@naveensiwas and I ) try to run the model, the model is creating a lot of temp files and this is hogging the temp folder. At times taking up upwards of 50% of the available memory. We hence wanted to see of the temp folder can be changed to a place where more space is available.

Hi @amn41,

My /tmp folder has only 1GB of space and there are some other script which are running on same server and utilizing the /tmp folder, many time I have faced memory issue while running rasa.

Due to some restrictions, Infra Team can’t increase size of /tmp folder, they suggest instead use a directory where more space is available

I have raise this request long back, can anyone please help me on this.

Any idea how to change /tmp folder path in RASA ?

Is it possible to change the mount point of /tmp folder or not, please confirm ?

Thanks in Advanced.

hi @naveensiwas - to my knowledge there is no configuration option for this out of the box, so your best bet is to modify the codebase yourself to make this change (either hard-coding a different value or making it configurable)

Thank you so much for your response @amn41 I will try it out.

Have a nice day ahead :slightly_smiling_face:

@naveensiwas .Can you give an idea how to train a model within 1 minutes.

e.g I have 30 intents each consisting of 17 examples if I add one more intent it takes me around 3-4 minutes in GPU and 4-6 miutes in CPU to train the model. So ,for a decent size server 4-5 minutes to train my models having around 30 intents is best time.

Hi @kalpa916,

What kind of training data you have, is it static only which doesn’t have any entities in it or training data with entities ?

training data with entities

Try lookup table approach to reduce the training data size.

hi @naveensiwas how to specify path of lookup table.I am specifying in this way to nlu file in this manner ` lookup:country |

  • data\lookups\countries.txt `

but it is unable to detect the path saying in terminal !! I think you have used I have 20k records to maintain in the countries.txt file.How to do that. Also do we have to mention in any other file while I am using text file for lookups.

Please follow this article it will help you for sure and this for choosing pipeline component to work with lookup table.

thanks dear !! the file path should be 1. `data\nlu\lookups\countries.yml

Hi @kalpa916,

Good to see that you have found the solution and all the best for your project.