Beginner’s Guide To Chat bots

A Chat bot is a service powered by rules and sometimes Artificial Intelligence, that you can communicate with via a chat interface. It can provide any types of services.

Example :

  • Doctor’s Appointment booking.
  • Medication Reminder.
  • Which airlines to choose?
  • Where to spend the night?
  • Hotel Booking.
  • Ordering Pizza to Ordering Shoes.
  • Scheduling.
  • Event Reservation. etc ……

Best frameworks for developing a web based chat bots are :

  • Microsoft Bot Framework.
  • Wit.AI
  • API.ai
  • Aspect CXP & Aspect NLU
  • Facebook Bot Engine

Best platforms to build a chat bots are :

  • Chat Fuel
  • Botsify
  • Beep Boop
  • Bottr
  • Motion.ai
  • Gupshup etc….

Bot Development Frameworks vs Bot Platforms

  • Bot development frameworks used by developers & Bot platform used by beginners.
  • Bot development frameworks is a set of predefined functions and classes which developers used for faster development. & Bot platform is the online ecosystem where chat bots can be deployed and interact with users, performs actions like interacting with other platforms.
  • Example of Bot development frameworks are : Facebook bot engine, Api.ai etc…
  • Example of Bot platforms are : Motion.ai, chatfuel etc.

So here is a result of survey conducted for people between the age of 14 to 54 in Nov 2016. The idea is to find out what people think about bot So they ask the first question

Which messaging app do you use the most look at the response its 75.6% use FB messenger that is absolutely crazy, 12.9% imessage , then skype and rest of then.

Users are more active on messenger app instead of using social networks and this is a major turning point.

There are two types of models in building Chat bots :

  • Retrieval Based Model
  • Generative Based Model

Retrieval Based Model :

  • In this type of models replying process is based on a lookup from a predefined set of answers.
  • It is an easier model.
  • These system don’t generate any new text/responses, they just pick a response from a fixed set.

Generative Based Model :

  • In this type of models replying process don’t rely on predefined set of responses.
  • It is harder model.
  • These system generates responses in real time. It understand languages not just commands.
  • This types of bot continuously gets smarter as it learns from conversations it has with people.
  • It requires trying machine learning techniques for training.

Open Domain Vs Closed Domain

  • In Open domain setting, the user can take the conversation any where. There isn’t necessarily have a well defined goal or intention. It is harder Domain. Conversation on Social media sites like Facebook, Twitter, and Reddit etc are typically open domain. They can go into all kind of directions.

Example : Conversation about refinancing one’s mortgage.

  • In Closed domain setting, the space of possible inputs and outputs is somewhat limited because the system is trying to achieve a very specific goals. It is easier domain.

Example : Technical Customer Support, Shopping Assistant etc…

Chat Bot Conversation Framework

Summary :

The main concept of chat bots architecture is depending on the character of the chat bots models that fits in the best way.

Some of the Chat bot based apps :

  • Duolingo
  • Luka
  • Niki.ai
  • Tripoto.ai
  • Ithaka.online
  • Trip38
  • Clever bot
  • Luka
  • Haptik etc…

That’s all for now !

I hope you have found this tour useful.

Please leave a comment if you have any questions or ideas related to chat bots. Please Share…