Introduction to Dialogflow

Siddharth Shukla
3 min readMar 14, 2019

--

What is Dialogflow

Dialogflow (formerly called API.AI) is Google-owned chatbot development framework. It is used for Natural Language Processing using machine learning. Dialogflow is SaaS bases product which means you don’t have to worry about infrastructure. It runs on Google infrastructure, and can scaled for million users easily.

Why Dialogflow?

Below are the main reasons for choosing Dialogflow over other platforms:
* Multi-channel support : Dialogflow support one-click integration for more than 20+ platforms including Slack, Facebook Messenger, Twitter, Kik, Line etc
* Price : Dialogflow can be used for free of cost if you are using Standard edition
* Multi-language support : Dialogflow supports more than 14+ languages worldwide & more support is coming
* Best NLP : Dialogflow has better machine learning as compared to its competitors even with less training data

Building Blocks of Dialogflow

Agent : Agents can be described as the app that we create on Dialogflow which holds definition of intents, entities, knowledge base, fulfillment etc. We can export the agent’s zip file as well which is really cool.

Intent : What the user wants to do is called an intent, i.e. intention of the user. As Allen Firstenberg says, intents are what user wants to do, and not what we do with that information or how we reply. Intents contains many things like contexts, events, training phrases, responses etc.

Training phrases : We can say a same thing in numerous ways, but means a single task/thing. For example, if we want to set an alarm we can say set alarm for 6 AM, i want to set an alarm` , can you please set alarm for me etc. These are called training phrases which will be used to match what user wants to do.

Entities : For completing a task, we might need some data from the user. For example, for flight booking we need source, destination, date etc. These are called entities.

Fulfillment : Sometimes, we need additional logic to complete a task. We can call use fulfillment for this. For example, if user wants to book a flight we will match the intent, collect required data then we need to call some flight booking API.

Response : After all the processing, we need to reply back to the user. We do this using responses. We can configure multiple responses in the dialogflow console. Also, we can configure platform specific responses as well.

--

--

Siddharth Shukla

I explain machine learning concepts in simple, easy to understand terms...