When I first started consulting in Dialogflow, I noticed a pattern. A lot of clients who came to me had made a complete mess of their chatbots, and all of them were using the slot filling (required parameters) feature. When you use required parameters in Dialogflow, you are telling Dialogflow – “please ensure that this parameter is actually collected from the user”. When you mark a parameter as required, it will trigger slot filling – and Dialogflow will keep prompting the user until they provide the input. As of this writing (May 2022), there isn’t any way to limit the
This is a somewhat opinionated view, but it is based on my experience using slot filling as well as helping my clients get unstuck by moving them away from slot filling. In my view, slot filling makes four implicit assumptions:
The only thing worse than using slot filling is to use it for a use case where it doesn’t even make sense.
The slot filling feature is hands down one of the coolest features in Dialogflow. Not only that, it is often the centerpiece of many demos given by the Dialogflow team. So why am I asking you to avoid slot filling? Because there are three common scenarios which the existing slot filling implementation cannot handle well.
“I didn’t understand difference between slot filling vs follow up intents as slot filling can be achieved by followup as well with extra validations right?”
I recently got a question which suggested that people are getting confused about the meaning of “slot filling using webhooks”. I have mentioned in different places in my blog and my courses that I don’t encourage people do slot filling using webhooks.
If you are not a programmer, there are some very specific reasons why you should avoid using slot filling. Now, you cannot really build your Dialogflow bot without hiring a developer.