This isn’t a new issue. I’m using the MongoDB tracker, and since Rasa loads the entire conversation from the database for every response, the user response time increases. Two question: 1) Is there any way to still use the tracker store without diminishing response times (perhaps by deleting some of the old events) and 2) are there any plans to make tracker stores asynchronous? I was very surprised when I realized that Rasa did not use async/await for database operations, as there are a lot of problems that could arise from the current implementation. Perhaps you could help @fkoerner
Hi @mister36, thank you for your question!
These sound like valid concerns, but they’re not really my domain. I will forward them to the appropriate people and we’ll get back to you!
Thank you for your response🔥
@mister36 The library we use to interact with MongoDB is synchronous, and for this reason whatever interaction Rasa has with MongoDB will be interactive. I agree that making it async would be ideal, but there are no plans to do this at the moment (other tracker store types could be updated as well…)
Regarding the contents of the trackers themselves, you are always free to modify them as you want (e.g. truncating them). Depending on the length of the conversation, this may have an effect on the prediction of new events though.
Just one question, the tracker depends on the max history parameter of the training policies right? maybe it should be possible to do hot/cold switch to reduce the footprint. two KV stores perhaps with the hot store emitting x events which depends on the max history size.
I would hate to lose the conversations in the tracker store if deleted after a user session without proper archiving as such. I am assuming most folks are using RDMS to store the tracker and later use it for analytics