Rasa default example stops listening


Why is the bot hanging/stopping sometimes when using the default bot from rasa init?

So saying ‘hi’ and then ‘bye’ the bot stops and says something like

2021-03-16 16:07:08 DEBUG rasa.core.policies.memoization - There is a memorised next action ‘action_listen’ 2021-03-16 16:07:08 DEBUG rasa.core.policies.rule_policy - Current tracker state: [state 1] user intent: greet | previous action name: action_listen [state 2] user intent: greet | previous action name: utter_greet 2021-03-16 16:07:08 DEBUG rasa.core.policies.rule_policy - There is no applicable rule. 2021-03-16 16:07:08 DEBUG rasa.core.policies.ensemble - Predicted next action using policy_0_MemoizationPolicy. 2021-03-16 16:07:08 DEBUG rasa.core.processor - Predicted next action ‘action_listen’ with confidence 1.00. 2021-03-16 16:07:08 DEBUG rasa.core.processor - Policy prediction ended with events ‘[]’. 2021-03-16 16:07:08 DEBUG rasa.core.processor - Action ‘action_listen’ ended with events ‘[]’. 2021-03-16 16:07:08 DEBUG rasa.core.lock_store - Deleted lock for conversation ‘16669e0e13a442d8a80107ec3fe48713’.

How can I make the bot not stopping and still listening if the next action is a empty list?

I use this with teh rasa webchat and the bot just stops…

Also, why don’t I need here a rasa action server?

If you see the logs, There is a memorised next action so it’s because you might not have the stories for the same, you need to add more stories if you want the bot to keep the conversation going.

Sorry, but it says there is no applicable rule. I feel you are not givving the exatc answer although you are a certeified deveoper?! I thought it stops because of the empty list?

This should be two thing, if there is no story or it is a result from the policy and this should be handled.

But, this should not be a problem and stops my development of a bot with rasa? This should be custimizable and be turned off. I dont want by bot stops not just because there is no story trained for that…

And, that is a bad behaviour although because the default rasa examples always goes in this state, by a high chance after the 2nd input the bot stops…

Why is it stopping now? I think because of the deletion of this lock?

How can I make this just pending for a new user input if it found no next rule/action or whatever?

@tide90 thanks for letting me know that I’m a certified developer, I didn’t knew I was a certified developer.

I said this because I am always surprised about the answer of experiencced users. I just started today with rasa…

Normaly you could expect just 2 simple sentences what the problem might e amd a maybe where I can find a solution. Because I suppose that this problem stems from a general beahviour about fallbacks and policy based predctions… And this default example gives almost everytime this result after my 2nd input…

So this is obvious and it should be really clear.

And your answer because of too less data/story might be a minor solution but not the superior (which would be one where I can handle this situation in code) one, because…

Also, no one would use such a solution in reality where the bot just stops working only because a user typed something out of scope?!

If this is REALLY your answer I am really off and cannot have any trust. That is really astonishing! And imagine how dangerous this could be for someone who has way more less experience with these things… He/she would really thing that you need more stories to keep the bot running…

I just write this because this made my day. Imagine, your answer is true and not wrong but actually not helpful and not the whole truth. Such attitude is so wrong (sorry, but maybe you are really right but this I cannot imagine…)

Hey there, what you can do is use AugmentedMemozation Policy. What is does is it is quite similar to memozation but it looks for other individual stories and tries to match intent or action that needs to be occured after certain intent/action. Also, a tip if you want your bot to not stop you will need 2 things

  1. Perfect stories and rules
  2. Do proper testing in rasa x or whatever platform I prefer rasa x because I can use interactive training with GUI and use it to save story . I hope this helps. because that’s not the part where webchat comes :slightly_smiling_face:

for the out of scope you can create an intent for fallback that will won’t stop your conversation nor user’s conversation

Thanks. I think above (not included in the logs) was also mentioned a standard fallback and still bot stopped.

But what I would prefer is to say that it should still listen though the next predicted action is empty? It is clear that with perfect stories and a specific policy you can handle this (but there are no perfect stories), so I would like to 'programm" this logic. Is it possible that above has something to do with this locker? And without this, the bot would persist in the listen action? So maybe I just need to turn off this locker?

I also thought that there is fallback which can handle this situation too? So if policy has no next action utter a default…

Add that in config and rules like this nlu_fallback then action this or utter something

you are talking about that conversation locker something. I don’t know quite about that I have seen many times but never thought about that, that how it is what it is. Try to google it might help if that too doesn’t help check if it’s in docs or not. Mostly that won’t be the problem for you it’s just write a proper story. I would say with interactive learning