Forms not_intent confidence threshold

How to set a threshold of required confidence for not_intent in forms slot filling?

in slot_mappings(self): slot_name: [self.from_text(not_intent=“intent_name”)]

I want to set the required confidence for the intent “intent_name” to be triggered and the slot not to be filled. At the moment even a low confidence of 13% can trigger the intent.

Hi @Jones. If you define a slot as required, it will be filled with the extracted value regardless of the confidence. If your intent classification gets really low scores it’s an indication that you should improve your training data by providing more examples and reviewing the intents themselves (you should check if you really need different intents or maybe you can combine them into something like ‘inform’).

Ok maybe the slot get filled, but i have a story like

  • intent_x

    -form

  • intent_name

    -action_deactivate_form

    -action_y

So my problem is, that the wrong detected intent deactivates my form. Of course i can just provide better examples or code a workaround.

The intent classification gets low values on inputs that should deliver low confidence and this low confidence should not trigger the intent and the following actions in the story.

I just checked it. The slot gets not filled. I think thats the point of the “not_intent” functionality in forms. Maybe we are talking about different things.

And it gets even worse with an activated fall_back. The confidence of intent_name is lower than nlu threshold. So it leaves the form and goes into the fall_back action, instead of just filling the slot with user message.

I think there should be a possibility to overwrite some rasa forms function to get the desired result. Any idea?