Wildcard intent without form?

Hi, I have a use case where I have a large dialogue (many question/answer pairs) where I do not care much for the answer given. I also do not want to do anything with it. (Note: I do care for it in other parts of the dialogue, hence using RASA is still required).

Is there any way I can match the user’s answer against a sort of wildcard intent? I know I can do this with forms but that would mean that I’d have to model a form with fields and values but given that I have roughly a dozen questions where I do not care about the answer for, this seems highly undesirable to me.

So far I have been adding all the possible intents NLU can recognize as possible answer intents, eg.:

* question_i_do_not_care_about
- intent1 OR intent2 OR intent3 OR intent4
* another_question_i_do_not_care_about
- intent1 OR intent2 OR intent3 OR intent4

The downside here is that it’s highly inconvenient to maintain and training times drastically increase.

What is the best way to model this?

mmhh… interesting use case. Not sure I got your example right, but would it be possible to add all those user requests to one intent? E.g. you would have one intent, called for example “any_request”, which would include all those questions you don’t care about. Or do you still need proper intents for those, as you need them at a later point in the conversation?

Yes I still need them for other purposes indeed. So basically what I am doing is that I asked some guided questions with responses - for this I need rasa. But then at some point I call an NLP API that extracts things from any random text as long as its the uers’. For this bit I hence just need to follow a linear flow of questions, collect the answers regardless of what they are, and then trigger the action that calls the API.

I now got everything to work by using OR for every intent as I explained but training becomes roughly 10x slower. Alternatively I can make a form where I make a field for every possible question/answer but also that isn’t ideal.

Ideally I would just have some wildcard intent where RASA is used but the response of the NLU is just ignored (as the flow is linear anyway), something like that.

Maybe you could use the events ConversationPaused and ConversationResumed. So, pause the conversation when you don’t care about the intent and resume it once you want to get back. If the conversation is paused, Rasa will not handle any incoming messages. But, not sure if it fits your use case.

Otherwise, I’m afraid that there is no solution to your problem yet. Feel free to open a feature request on GitHub for that.