I have a Rasa form called rant_form. Here we ask the user if they want to rant and allow them to type whatever they want. I also have an insult intent in my rules.
Currently, when the rant_form is activated and the user types something that is predicted as “insult” intent, the form gets deactivated and the insult story gets triggered. That’s not what I want, I want any input, regardless of the intent predicted, if it’s said withing the rant form, to be saved in my rant slot.
Here is my domain.yml:
slots: rant1: type: text influence_conversation: false mappings: - type: from_text conditions: - active_loop: rant_form requested_slot: rant1 rant2: type: text influence_conversation: false mappings: - type: from_text conditions: - active_loop: rant_form requested_slot: rant2 forms: rant_form: required_slots: - rant1 - rant2
Here is stories.yml:
- story: Rant steps: - intent: rant - action: rant_form - active_loop: rant_form - slot_was_set: - requested_slot: rant1 - slot_was_set: - requested_slot: rant2 - active_loop: null - action: action_submit_rant
Here is rules.yml:
- rule: Insult 1 steps: - intent: insult - slot_was_set: - insult_counter_featurized: 1 - action: action_first_response_insult - rule: Insult 2 steps: - intent: insult - slot_was_set: - insult_counter_featurized: 2 - action: action_second_response_insult
Does someone have any idea how can I disable intent detection when within the form?
I tried removing insult flow from rules, but that didn’t help. And adding from_intent to the slot mapping didn’t fix it either.