How to design our chatbot API for re-training responses with RASAX UI

Hey Guys,

We are currently integrating RASA into our safety reporting apps. One of the issues we are having is that we can’t use RASA-X UI to update our chatbot responses. One of the reasons that were given was that we use an API call to provide responses and retrieve data (eg. receive pictures, links, evidence, text) and so our development team doesn’t see how we can train each bot within the RASA-X UI and automatically push those re-trained responses because our API calls are fixed.

Do you guys have any thoughts on how we can re-design our use of RASA to allow for some retraining while still using an API for a response within our app?

I may need to clarify some more details, but that’s the high-level issue.

Sounds like you’re using a knowledge base to lookup responses via custom actions. Rasa X would have no view into your knowledge base or it’s API.

However, responses from a knowledge base wouldn’t typically affect training. For example, here’s two intents using a custom action to find the response in a KB:

## kb story example 1
* kb_example_intent_1
  - action_kb_lookup

## kb story example 2
* kb_example_intent_2
  - action_kb_lookup

The fact that the response from action_kb_lookup will be different for the two intents does not affect the training or Rasa X.

It sounds like you are facing a challenge with integrating RASA-X UI into your existing chatbot API that retrieves data and provides responses. While using an API to provide responses can limit the ability to use RASA-X UI for training and retraining the chatbot, there are still some ways to incorporate RASA’s training capabilities into your existing system. One approach is to separate the chatbot response generation from the data retrieval process. This means that you would need to decouple the chatbot API from the response generation and create a separate component for generating responses using RASA. This component would be responsible for processing the user input, using RASA’s NLU to understand the intent and context, and then generating a response that can be returned to the chatbot API for delivery to the user. This way, you can use RASA-X UI to train and retrain the chatbot’s response generation component, without affecting the chatbot API. Another approach is to create a custom action in RASA that integrates with your existing chatbot API. This action can retrieve data from the API and use it to generate a response for the user. You can use RASA-X UI to train and retrain this custom action, which will enable you to improve the chatbot’s responses over time. In both approaches, it’s important to ensure that the chatbot API can handle the new responses generated by RASA. You may need to modify the API to accept new response formats or update the API documentation to reflect the changes. Overall, while integrating RASA-X UI with an existing chatbot API can be challenging, there are ways to incorporate RASA’s training capabilities and improve the chatbot’s responses over time.