I am using Rasa Framework for my chatbot and created services for the rasa core server and rasa action server in Windows OS using NSSM. I want to store the conversation using the custom tracker store in CSV. if I run rasa from the command prompt I get the conversation saved in CSV but if I do it by starting the service the conversation is saved in In Memory instead.
I created CustomTrackerStoreclass in custom_tracker_store.py and mentioned it in engpoints.yml as follows:
tracker_store:
type: custom_tracker_store.CustomTrackerStore
And set up a service “rasa_core_service”
nssm_path_of_nssm.exe install rasa_core_service f"{rasa_path} run --enable-api --endpoints endpoints.yml --cors “*” --port 5090"
It could be a path issue where Rasa isn’t finding your custom tracker when it starts. When there is an issue using any tracker store, Rasa will fallback to the in-memory tracker store. You’ll see a message in the log when this occurs. Can you provide the tracker store section of your endpoints.yml?
When I run the rasa core server with “run --enable-api --endpoints endpoints.yml --cors “*” --port 5090”
Rasa uses the custom tracker store. But it does not use the custom tracker store if I set up a service for the same command.
Is there any environment setup required? some permission issue?
Oh. My bad. No. I cross-checked my command I had written endpoints.yml in the command
I made a typo mistake here. Otherwise, it would not have worked when I was running the same command in the command prompt.
Is there something else that should also be set up while setting up the service for the rasa core server?
When I run the rasa core server with “run --enable-api --endpoint endpoint.yml --cors “*” --port 5090” Rasa uses the custom tracker store
It works when you run that command from the command line, correct?
But it does use the custom tracker store if I set up a service for the same command
I don’t understand this sentence. It says that it also works when you run it as a service but I think you mean’t to say that it does not work when you run it as a service?
What does “set up a service” mean? Are you using the kubernetes helm chart, docker-compose or a Unix init service?
Yes. Similar to setting up a service with UNIX init but I need it for Windows OS.
“set up a service” means configuring NSSM to run the Rasa Core server as a Windows service. This allows the Rasa Core server to run in the background and can be started/restarted and stopped from the Windows services GUI.
I have edited my above message. I will rephrase my issue here.
I used the following command to configure the service for the Rasa core server.
This must be a Windows service environment related issue. I haven’t worked with windows services in a very long time. Other than confirming that the cli options are being passed correctly and you’re in the correct root directory for the project and user permissions I don’t have any Rasa on Windows experience.