Where is the best place to store models in Kubernates Cluster


(Adrian Humphrey) #1

Hello all,

I have a rasa core server run in a couple different containers on a kubernates cluster. The nature of the cluster continuously spins up new containers. It will not make sense to store the model on the container itself. My question is, where is the best place to store the model?

AWS s3? Rasa Platform? Mongo Database?


(Souvik Ghosh) #2

Any kind of object storage will work, s3 is a good option. However keep in mind models are loaded in memory of the pod itself to make the prediction.

We store them in nexus


(Adrian Humphrey) #3

Awesome, so I can create agent models, store them in s3, store the s3 bucket url and location, and when I am ready to load the agent, I simply provide the url for both nlu and dialogue models?


(Adrian Humphrey) #4

Are you guys using the Rasa Platform?


(Souvik Ghosh) #5

no not yet :smiley: , we have our own CI/CD along with Kubernetes. I think in Rasa NLU you have a way to retrieve models from cloud storage


(Adrian Humphrey) #6

So you can do this with Rasa NLU but not Rasa Core?


(Souvik Ghosh) #7

I am not sure :thinking: @akelad can you download models from cloud in rasa core?


(Adrian Humphrey) #8

Seems like the method load_from_server will do the job. Looks like I can create my own endpoint that will return a gzipped directory of the model. And this returns the agent with that loaded model.