Recently, a few people asked me about using Dialogflow for educational bots.
I don't think the technology is quite there yet.
This is, of course, a personal opinion. But it is backed by three things:
- I have a fairly extensive course website with a lot of material on Dialogflow. Students are requesting me for easier ways to find useful material, and if I could build a bot for that purpose, I would.
- I have already spent some time thinking about and building different kinds of automatically generated bots.
- I get plenty of questions from readers of this website. Reader questions provide a good insight into the kind of questions people ask and how they are structured.
So this post is based on my personal experience.
How bots could be used in education
You could use bots in education for two fundamental tasks:
- parsing student answers - you can have a bot conduct a quiz and see if user's answer matches
- parsing student questions - help students find material based on their questions
Let us consider these cases one by one.
Let us get one thing out of the way.
You can already created a "dumb bot" where the user can select buttons, and Dialogflow can grade such a quiz. This can also be done without using Dialogflow at all, so I am going to assume that that's not what people are interested in.
On the other hand, you are generally trying to handle open ended answers to your question.
Will Dialogflow be able to successfully handle this?
Recently, Dialogflow released a feature called Agent Validation.
One interesting aspect of this validation is that they urge bot makers to add "negative training phrases" into their bot.
Why is that?
Its because sometimes you can have phrases which differ by no more than a word, and completely change the meaning.
See this excerpt from Cathy Pearl's book on Designing Voice User Interfaces.
Even a small negation can cause wrong behavior.
You need to be able to handle this very well if you would like to build a chatbot capable of parsing student answers.
In this case, you want to parse the student's question and map it to the correct answer (educational material).
It is also good to remember this: most of the time, technical questions are longer than non-technical questions.
Let us consider an example of a question I answered recently on YouTube:
Here is something to think about:
Could you parse the commenter's question, and automatically map it to the appropriate article on my website? If yes, how? Is Dialogflow the right tool for doing this?
As you can see, when people ask questions, they prefer to write it in some detail.
Note that this second type is more like an advanced search engine. So while I don't think Dialogflow by itself is capable of solving this problem, it can certainly be a part of the solution. More on that in a future article.
- Using Collect.chat for preNLU bots
- Reader Question: How to get some sample training data for Dialogflow?
- Getting the top 3 (or top N) intents in Dialogflow: An experiment
- Dialogflow Regexp (regular expression) entity
- Using Dialogflow for educational bots
- Chatbot makes $3 million in sales in 1 hour
- Reader Question: Intent based FAQ bots vs knowledge based FAQ bots
- Should you use Dialogflow from scratch?
- 3 ways Airtable can speed up your Dialogflow prototype development
- Automatically generating a rich Dialogflow website chatbot