Bypass action prediction / force intent

I have the following scenario: My bot is there to ask question to the user, where the answers can be basically anything, thus making it almost impossible to define intents for many user answers. This is the case because the questions being asked are very open and it is just important to safe the answers in a database. So I have the following question: In some cases, what the user has said is irrelevant for the flow of the conversation. No matter the answer, the bot will in some cases always continue with the next question. Is there a way to “force” the user message to be a specific intent (so that the correct action is chosen by the core) or to bypass the action prediction and simply force the next action to be a specific one? I saw that “followup” events might be a solution. Is this something to have a closer look at? And how specifically would this be implemented?

Thanks in advance :wink:

Just to check, are you implementing a form?

Thank you for you answer @koaning

Kind of. The purpose of the bot is to replace a form, but some of the users answers will influence the answers of the bot (f. ex. questions about how the user feels towards a specific topic. If he/she feels positive, the way the bot goes on with the conversation should be different).

However, whenever a answer should not influence the conversation, the classified intent does not matter. The entire user message will be stored somewhere (most likely a database of some kind) and the bot should continue with the next question (which will always be the same - just like in a form).

But to start a form (as in Rasa), it gets triggered by a specific intent (f.ex. user wants to order a pizza - now the form is activated until all info is given). Is there any other way to activate a form (like after a specific bot-action)?

Thanks!

In my mind it sounds like you’ll want to use slots to store information during the conversation to track things like “how a user feels about something”. This can be used to create dynamic forms.

Is the user doing more things that just this one dynamic form? If not, you could try to trigger the form immediately in the conversation.

If you can share more details of what kind of assistant you’re making (what domain) I might be able to help out more.

I believe that dynamic forms is a good start! :slight_smile:

The bot will be used by employees after a technical chance such as a new software that is introduced in a company. It asks questions about how their daily work changed and if they are able to work more flexible (those are questions that will always just have a follow-up question - no matter the answer - since they can differ a lot). The bot then also asks if the user likes the new software, the flexibility given or the new tasks that come with it. So the user expresses their feelings, based on which I would like to change the follow-up questions.

F.ex. If the user doesn’t like the new software, I would continue with a question such as “What is it that you do not like about software xy?” Would this be implemented using dynamic form with let’s say a slot “feeling” which changes the requested_slot so that the bot differs in the answers?

Thank you so much for you help! Means a lot :wink: