Day 15 of 100DaysofML

Charan Soneji
100DaysofMLcode
Published in
4 min readJul 1, 2020

DialogFlow based chatbot. So I thought of exploring this new tool called DialogFlow by Google. It is basically used for creating intent based chatbots from scratch but provides a much easier architecture as compared to RASA and other softwares and also it does not require the hassle of being installed, since DialogFlow can be accessed via API’s. I’m going to dive straight into my implementation.

The first thing we need to do is head onto DialogFlow.
https://dialogflow.cloud.google.com/

After you click on the link, there is an option for Open DialogFlow console. Make sure to click on that and login with your required email. Once your console opens up, it should look like this.

Console opening up

On the left, we can see an option which says Create Agent. Click on it and give in a name. The agent is essentially the name of the bot that you are creating. I am going to name my bot as Demo Bot for the sake of this demo.

Creating an agent

On this page, we can also choose the default language that we need to have our chatbot speak in and also choose the timezone of the bot. Make sure to not have any white spaces in the name, I made that mistake and rectified it by adding an underscore. Make sure to choose from one of the existing projects in the option given below else you wont really be able to create the bot. Once you are done, click on the Create option (blue color).

It might take a couple of seconds before you may actually deploy the chatbot or be able to access its features/intents. The page that we see after creation of the bot is:

After Creation of the bot

Every bot that we create comes with a predefined set of intents. So let us click on the Default Fallback Intent and we see a list of training phrasses mentioned.

List of predefined intents

These training phrases are basically what we shall be giving the bot and we can customize the responses by scrolling down and editing the Responses and Actions and Parameters columns.

Responses

The user who is defining the chatot can create his/her custom responses based on the design of the bot that he/she is creating.

DialogFlow recently released a feature called Knowledge connectors which is still the Beta version.

Knowledge connectors complement defined intents. They parse knowledge documents (for example, FAQs or articles) to find automated responses. To configure them, you define one or more knowledge bases, which are collections of knowledge documents.

You can enable knowledge bases for your agent, so all detect intent requests can find automated responses using your knowledge bases. Alternatively, you can specify one or more knowledge bases in your individual detect intent requests.

It is common for an agent using knowledge connectors to also use defined intents. Knowledge connectors offer less response precision and control than intents. You should define your intents to handle complex user requests, and let knowledge connectors handle simple requests.

They basically help with the intents and their understanding during the training phase.

In the navigation bar on the left, there are a number of other options. One of them is Training whereby the user can evaluate the actual training of the model based on the entities and intents. This section can also be improved by passing interaction data to allow the chatbot to learn from it.

Training section

There is another section called Small Talk whereby you can actually evaluate the model that you have created and check if the training that is done based on the intents and stuff is correctly denoted.

Small Talk section

Just wanted to give an overview of DialogFlow. Will be coming out with my own chatbot on DialogFlow soon. Keep Learning.

Cheers.

--

--