As you might realised that AI and machine learning things are really happening for the last couple of years and there are ton of devs or even data scientists wrote blogs about it, from writing and explaining the terminologies to on how to designing and developing it.
However, this article is also talk about AI and ML too, more specifically about conversation AI which also known as chatbot. The reason why I wrote this? despite there are a lot more articles like this,
because I'm having difficulty to finding the article which explains the best practices on how to get or generate bot train data, most of them are only focusing on how to install and use it.
Here are the stacks that I'm using in this blog:
- Rasa Framework
- Chatette, A powerful dataset generator for Rasa NLU, inspired by Chatito
- rasa-chatter, A command-line tool for simplifying your work on training the bot. (optional)
I'm not going to explain the detail on how to install those stacks, because it's already well documented in their docs. So we can focus on how it is work.
First, I will talk why I'm using these stacks.
There are some other AI contextual/NLP frameworks out there, such as Dialogflow.
Why Rasa? Here are the keywords:
- open source
- very customizable
- and awesome
From those keywords, it must already explained to you "the why", and yes, for me, Rasa is the whole packages which I need as a core of my chatbot. Despite of being open source and free, Rasa is also very customizable based on what your need and more importantly it's very transparent because you own your data, I'm sure many corporate, especially financial companies will loving it.
What is the "awesome" about Rasa? If "the why" is not enough for you. I would tell you this. Rasa has UI built in feature, called Rasa X, which is realy useful for those who are not dev, it can be use for interacting and training the bot out of the box, no programming background needed.
In the introduction of this article, I'm mentioned about the best practices on how to generating the bot training datasets and chatette is an awesome tool to do this job, by simply creating templates of the conversation which is use DSL (Domain Specific Language), it can generate a lot of example datasets for Rasa Natural Language Undestanding.
(Optional) Another tool that can be use for making your chatbot development more simpler are by using rasa-chatter. It's actually just a simple command-line tool that wraping the usual commands of Rasa and Chatette which is often used when you are training you bot.
I will continue this blog in the part 2, which it is more about the technical on how to build a FAQ chatbot from scratch using those stacks above.Buy me a coffee