Intertwined stories

How can the chatbot cope with intertwined stories? The user starts with a story, does not finish it and starts asking another question to the chatbot related to a second story, to then continue with previous story. The issue that occurs is the fact that the filled in slot from the first story is not retained, resulting in the chatbot asking for it again after the second (unrelated) question.

Illustrative story: “Hi” “Hello” “I have lost my card” “Is your card stolen or did you lose it?” “What are the opening hours of the office?” “I do not understand your question, could you rephrase it?” “It is stolen” “What is stolen? We could only help you if your card, smartphone or tablet is stolen.”

(intent: something_stolen: 0.9104, slot_name: bank_object, slot_value: card)

Rasa Core is supposed to determine the next action based on slots (he remembers) and previous intents and actions. However, he also does it based on the recognized entities. So the LSTM gets confused between deciding based on the presence of a slot and of the entity. Especially when all training stories have a good flow where entity is recognized, slot filled and immediately next action taken, the LSTM might look at entity, to predict next action. For conversations with chitchat in between the entity detection and the next good action, this might cause the LSTM to fail as it does not look at the slots.

This would be a difficult task for RASA as it gets confused like you said. You could try providing all these cases in your stories but still the bot (LSTM) would not remember. I had tried something similar a while back and it doesn’t work.

You can train it to handle the case of second story while the first story is still going on, eventually it would learn but the next time you go with complete first story, the bot fails.

From what i have noticied, the entities featurised does not help my stories. I prefer the approach of intents/slots/actions to determine the next prediction along with max history and augmentation factor. So far i have had decent results. I ignore all entities i don’t want to featurize because my stories are based on slots and intents to predict the next action. entities only confuses the memoization policy

Also you can try the latest embedding policy as it deals with LSTM with Attention that can focus on a particular story until it is fulfilled.

Many thanks for the useful feedback! :wink: I will that out and let you know whether I helped me a lot we this issues I am facing!