Hello @Tobias_Wochinger
i have implemented two stage fallback
created rule
rules:
- rule: Two stage fallback
steps:
- intent: nlu_fallback
- action: action_two_stage_fallback
- active_loop: action_two_stage_fallback
when i say something where core_fallback_threshold is less than 0.3
it provides 2 or more buttons. like this
“buttons”: [{“title”: “No Match”, “payload”: “/nlu_fallback”}, {“title”: “Something else”, “payload”: “/out_of_scope”}],
and with these buttons bot also says
Sorry, I’m not sure I’ve understood you correctly
Do you mean…
so first where it is coming from, as this sentence is nowhere in my code.
second when i click {“title”: “Something else”, “payload”: “/out_of_scope”}],
in log it shows
Current tracker state [{}, {‘user’: {‘intent’: ‘out_of_scope’}, ‘prev_action’: {‘action_name’: ‘action_listen’}}]
There is a memorised next action ‘action_out_of_scope’
but did not provide response as there in ‘action_out_of_scope’
but without two stage fallback action_out_of_scope is working
why my ‘action_out_of_scope’ is not responding with two stage fallback
class ActionOutOfScope(Action):
def name(self) -> Text:
return "action_out_of_scope"
def run(self, dispatcher: CollectingDispatcher,
tracker: Tracker,
domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
user_intent = "out_of_scope"
print("out of scope")
bot_response = "I can't help you with that, I'm sorry.Out of Scope"
dispatcher.utter_message(text=bot_response)
return []
it is not going in there. as you can see i have ’ print(“out of scope”)’ but after clicking out_of_scope intent it is not working