Designing and Implementing Chatbot (with Dialogflow)

  • Course Pre-requisite
    • Google Account to Signup with Dialogflow
    • Facebook Account – for Channel Integration

 

Module 1

Introduction

  • ChatBots – what are they and how do we build one?
  • What can I do with bots?
  • ChatBot behind the scenes
  • ChatBot architecture

Connect Facebook app with DailogFlow / have a first conversation with a chatbot

  • Create a Facebook page
  • Create a Facebook application
  • DialogFlow setup and introduction
  • Connect DialogFlow and Facebook application
  • First conversation with your bot

Module 2

Teach chatbot to answer FAQ

  • Show chat bot how to answer FAQ
  • How to test and train a ChatBot / Add friends as testers

Master DialogFlow

  • Chatbot job enquiry
  • Teach chat bot to take candidates info
  • Test your chatbot – job interview test
  • No application context

Rich messages

  • DialogFlow

Module 3

Publish a chatbot

  • Introduction to app review – Steps to take
  • Get the pages_messaging right
  • Facebook app basic settings
  • Privacy policy link for Facebook app
  • Submit for review / publish the chatbot on Messenger

Upgrade a chatbot

  • Introduction
  • Heroku, GIT and Node.js
  • Initial project in Node.js

Module 4

Code walkthrough and configuration

  • Project configuration
  • Google authentication / service accounts / google project
  • How to test Messenger Bots localy?
  • Code walktrough
  • Take care of security
  • First deploy to server
  • Common mistakes that happen when first deploying to Heroku
  • GRPC not working with node v12 WARNING!

Add extra features to Chatbot

  • Get information from conversation
  • Test new feature
  • Send button message – delivery extra options
  • Set a greeting text for your chatbot
  • Set get started button
  • Set persistant menu
  • Disable text input
  • Get information about the user
  • Quick replies in parameters

Connect to 3rd party API

  • Connect to 3rd party API
  • Request module upgrade
  • Publish the update

Chatbot Development Framework

Top AI Chatbot Frameworks






 

1. Microsoft Bot Framework

The Bot Framework by Microsoft is a set of services, tools and SDKs that give a rich foundation or framework to the AI chatbot developers. Using this framework, we can build and connect intelligent bots. These enterprise-grade bots provide you with the complete ownership and control of your data. 

Pros: 

  • SDKs for multiple computer languages
  • Prebuilt entities
  • Machine learning speech to text
  • Technical computer support
  • Multilingual

Cons: 

Have to choose either Node.js or C# platforms for development.

Integrate with:

  • Skype
  • Slack
  • Facebook Messenger
  • Website
  • Cortana
  • Microsoft team
  • Kik

Pricing:

There are both free and paid versions in the Microsoft Bot Framework. The paid version works on the basis of pay as you use. It charges $0.50 per 1,000 messages that are exchanged via the premium channel using the AI chatbot. Flexible support plans begin at $29 per month. 

2. Rasa

Motivation

Rasa is an open-source framework that has 2 major components: Rasa NLU and Rasa Core. Rasa NLU is responsible for natural language understanding while Rasa core helps create intelligent, conversational chatbots. Rasa Stack is actually leading in the open-source machine learning toolkits that help developers create better AI chatbots with minimal training data. Go through the pros and cons listed below and if you feel like getting your AI chatbot developed by our expert developers, you can check out our services for Rasa AI chatbot development. Moreover, we have written one more blog if you want an in-detailed list of reasons for choosing Rasa’s framework for your artificial intelligent chatbot.

Pros:

  • It can be deployed on your own server by keeping all the components in-house.
  • Highly customizable, so it allows developers to create a chatbot with desired features.
  • It allows multiple environments for development, staging and production.
  • Rasa offers analytics for various data that allows you to understand customers better.
  • This AI chatbot framework works on the basis of interactive learning, hence it keeps learning on its own as it interacts with people.

Cons:

Rasa isn’t exactly suitable for beginners so new developers could be a little intimidated by this AI chatbot framework.

Integrate with:

  • Facebook Messenger
  • Rocket.Chat
  • Slack
  • Telegram
  • Twilio

Pricing:

Although open-source, Rasa also has a paid version for its AI chatbot framework. It is called Rasa platform and it is available for enterprises that need heavy functionalities and better performance. The prices are not displayed on their website and one needs to have a word with their customer representative executives to understand the pricing structure. 

3. Wit.ai

Wit.ai has been acquired by Facebook and is free for commercial usage. This NLP platform lets the developers create the entities and intent. It is an open-source chatbot framework that began as a Y Combinator startup. Since it is still an open-source project with open tools, the developers can easily create bots with human-level intelligence without having to teach the bot the basics of human conversations. 

Pros:

  • Easy to deploy it on Facebook Messenger, so if you want to create a bot just for that platform, this is the best AI chatbot framework.
  • It is open-source which means that it has a large developer community.
  • The NLP engine in Wit.ai’s AI chatbot framework is undeniably amongst the best and can hold its own against bigger bot-building tools.
  • It offers SDKs in iOS, Node.js, Python, Ruby.
  • Wit.ai supports around 80+ languages from around the world, allowing developers to easily translate data worldwide.

Cons:

Some of the developers have stated that it might be harder to retrieve missing parameters in Wit.ai as compared to other AI chatbot frameworks.

Integrate with:

A chatbot created using Wit.ai can be integrated into:

  • Your app
  • Your website
  • Slack
  • Facebook Messenger
  • Wearable devices
  • Home automation

Pricing:

Free of cost

4. Dialogflow

Talking to Programs: Serverless Architecture for Chatbots | SoftServe

Dialogflow is an AI chatbot framework that is a subsidiary of Google. It comes with machine learning capabilities, built-in NLP features and integrations with many other popular communication platforms. With Google Dialogflow, developers are able to create highly intelligent chatbots that can understand the nuances of language and keep improving over time. This is because it is supported by Google’s Cloud Natural Language, making it easier to train the bot to understand human emotions and sentiments.

Pros:

  • Supports both voice-based and text-based assistants.
  • Easy to understand and learn, even for beginners.
  • Best quality and rich conversations using natural language.
  • It offers SDKs for more than 14 platforms.
  • Google Dialogflow supports more than 20 languages from around the world. 
  • It can carry out various tasks such as jokes, event search and payment handling.
  • With an in-line editor, the coding becomes speedier.
  • It helps you do sentiment analysis for every query.
  • Allows IoT integration to add an extra layer of intelligence for home automation. 

Cons:

Fine control over dialogue processing is not available to the programmer.

Integrate with:

  • Facebook Messenger
  • Google Assistant
  • Slack
  • Alexa
  • Cortana
  • Kik
  • Line
  • Skype
  • Telegram
  • Twilio
  • Viber

Pricing:

The standard edition if free of cost but you can switch to a paid version if you have to handle a lot of queries on a regular basis. Starting at $0.002 per text request, the prices vary and can go up to $0.075 per minute for all the phone calls that you process.

5. IBM Watson

IBM Watson Assistant, Telegram and Python - Stack Overflow

Watson is one of the most widely known AI chatbot frameworks used by developers. It offers a variety of bot-building tools. It has built-in machine learning capabilities and in comparison to other big players in the AI chatbot framework race, IBM Watson holds its own in terms of features, integration and flexibility. Large companies are using IBM Watson for building sophisticated AI chatbots for their internal purposes. It is a pioneer in the fields of artificial intelligence, machine learning, natural language processing and reasoning. Moreover, it offers the developers advanced cognitive capabilities. 

Pros:

  • IBM Watson is loaded with a highly advanced and capable machine learning engine.
  • It allows automated predictive analysis.
  • For non-technical business users, there is a Watson Assistant GUI that they can use easily.
  • IBM doesn’t collect the data that you use for building the bot and lets you store it on a private cloud, thus ensuring maximum security and confidentiality.
  • It also has visual recognition security.
  • Currently, Watson supports more than 10 languages from around the world and it also has an in-built language translator.
  • It has a tone analyzer that helps you understand and distinguish negative and positive responses from the users and customers.

Cons:

One complaint by some developers regarding IBM Watson has been that it has too many tools. The featured set of tools in Watson is geared towards creating an AI chatbot and it is being shown primarily as an AI chatbot framework. However, sometimes developers find it too confusing if they want to create a simple, non-AI chatbot for gaming sites or some other simple bot.

Integrate with:

  • Facebook Messenger
  • Intercom
  • Slack
  • WordPress site

Pricing:

The pricing model starts from the Lite version which is free of cost and allows up to 10,000 messages per month. Other chargeable plans are Standard, Plus, Premium, and Deploy Anywhere. Standard costs you $0.0025 per message and provides you with unlimited messages. The Plus plan’s pricing information is not public and you can contact IBM for a free 30-day trial. Premium and Deploy Anywhere plans are based on custom pricing.

6. Amazon Lex

New – Amazon Connect and Amazon Lex Integration | AWS News Blog

A versatile chatbot framework with sophisticated bot-building tools, Amazon Lex is a great AI chatbot framework for beginners in the field. It is a part of Amazon Web Services and is one of the most powerful, capable and multifaceted options available. It comes with built-in machine learning and natural language understanding capabilities with AWS. Highly scalable in nature, AWS helps make this AI chatbot framework better than most others.

Pros:

  • Allows automated speech recognition and converts speech into text.
  • Integrated with AWS, it is highly scalable.
  • Amazon Lex provides SDKs for many different platforms.
  • Free to use, all one needs to do is log in to the AWS account and start creating.

Cons:

A primary concern of developers is that there is a language barrier when it comes to developing an artificial intelligence chatbot using Amazon Lex. As of early 2019, the popular chatbot framework was available only in American English and no other languages. 

Integrate with:

  • Facebook Messenger
  • Slack
  • Kik
  • Twilio SMS

Pricing:

Amazon Lex is based on a pay-as-you-go pricing model. They charge $0.004 per voice request and $0.00075 per text request. Highly flexible, Lex also allows users to process up to 10,000 text requests and 5,000 speech requests per month for free for the first year.