Training a chatbot happens at much faster and larger scale than you teach a human. Humans Customer Service Representatives are given manuals and have them read it and understand. While the Customer Support Chatbot is fed with thousands of conversation logs and from those logs, the chatbot is able to understand what type of question requires what type of answers.
Back to our earlier example, if a bot doesn’t know the word trousers and a user corrects the input to pants, the bot will remember the connection between those two words in the future. The more words and connections that a bot is exposed to, the smarter it gets. This process is similar to that of human learning. Our capacity for memory and synthesis is part of what makes us unique, and we’re teaching our best tricks to bots.
ELIZA's key method of operation (copied by chatbot designers ever since) involves the recognition of clue words or phrases in the input, and the output of corresponding pre-prepared or pre-programmed responses that can move the conversation forward in an apparently meaningful way (e.g. by responding to any input that contains the word 'MOTHER' with 'TELL ME MORE ABOUT YOUR FAMILY').[9] Thus an illusion of understanding is generated, even though the processing involved has been merely superficial. ELIZA showed that such an illusion is surprisingly easy to generate, because human judges are so ready to give the benefit of the doubt when conversational responses are capable of being interpreted as "intelligent".
Chatbots have been used in instant messaging (IM) applications and online interactive games for many years but have recently segued into business-to-consumer (B2C) and business-to-business (B2B) sales and services. Chatbots can be added to a buddy list or provide a single game player with an entity to interact with while awaiting other "live" players. If the bot is sophisticated enough to pass the Turing test, the person may not even know they are interacting with a computer program.

The bot itself is only part of a larger system that provides it with the latest data and ensures its proper operation. All of these other Azure resources — data orchestration services such as Data Factory, storage services such as Cosmos DB, and so forth — must be deployed. Azure Resource Manager provides a consistent management layer that you can access through the Azure portal, PowerShell, or the Azure CLI. For speed and consistency, it's best to automate your deployment using one of these approaches.


Magic, launched in early 2015, is one of the earliest examples of conversational commerce by launching one of the first all-in-one intelligent virtual assistants as a service. Unique in that the service does not even have an app (you access it purely via SMS), Magic promises to be able to handle virtually any task you send it — almost like a human executive assistant. Based on user and press accounts, Magic seems to be able to successfully carry out a variety of odd tasks from setting up flight reservations to ordering hard-to-find food items.
You may remember Facebook’s big chatbot push in 2016 –  when they announced that they were opening up the Messenger platform to chatbots of all varieties. Every organization suddenly needed to get their hands on the technology. The idea of having conversational chatbot technology was enthralling, but behind all the glitz, glamour and tech sex appeal, was something a little bit less exciting. To quote Gizmodo writer, Darren Orf:
Perhaps the most important aspect of implementing a chatbot is selecting the right natural language processing (NLP) engine. If the user interacts with the bot through voice, for example, then the chatbot requires a speech recognition engine. Business owners also have to decide whether they want structured or unstructured conversations. Chatbots built for structured conversations are highly scripted, which simplifies programming but restricts the kinds of things that the users can ask.
This machine learning algorithm, known as neural networks, consists of different layers for analyzing and learning data. Inspired by the human brain, each layer is consists of its own artificial neurons that are interconnected and responsive to one another. Each connection is weighted by previous learning patterns or events and with each input of data, more "learning" takes place.
The bot itself is only part of a larger system that provides it with the latest data and ensures its proper operation. All of these other Azure resources — data orchestration services such as Data Factory, storage services such as Cosmos DB, and so forth — must be deployed. Azure Resource Manager provides a consistent management layer that you can access through the Azure portal, PowerShell, or the Azure CLI. For speed and consistency, it's best to automate your deployment using one of these approaches.
Conversational bots work in a similar way as an employee manning a customer care desk. When a customer asks for assistance, the conversational bot is the medium responding. If a customer asks the question, “What time does your store close on Friday?” the conversational bot would respond the same as a human would, based on the information available. “Our store closes at 5pm on Friday.”

Endurance is a companion chatbot that uses neurolinguistics programming (better known as NLP) to have friendly conversations with suspected patients with Alzheimer’s and other forms of dementia. It uses AI technology to maintain a lucid conversation while simultaneously testing the human user’s ability to remember information in different ways. The chatbot encourages the user to talk about their favorite activities, memories, music, etc. This doesn’t just test the person’s memory but actively promotes their ability to recall.
This means our questions must fit with the programming they have been given.  Using our weather bot as an example once more, the question ‘Will it rain tomorrow’ could be answered easily. However if the programming is not there, the question ‘Will I need a brolly tomorrow’ may cause the chatbot to respond with a ‘I am sorry, I didn’t understand the question’ type response.

Have you checked out Facebook Messenger’s official page lately? Well, now you can start building your own bot directly through the platform’s landing page. This method though, may be a little bit more complicated than some of the previous ways we’ve discussed, but there are a lot of resources that Facebook Messenger provides in order to help you accomplish your brand new creation. Through full-fledged guides, case studies, a forum for Facebook developers, and more, you are sure to be a chatbot creating professional in no time.


I argued that it is super hard to scale a one-trick TODA into a general assistant that helps the user getting things done across multiple tasks. An intelligence assistant is arguably expected to hold an informal chit-chat with the user. It is this area where we are staring into perhaps the biggest challenge of AI. Observe how Samantha introduces herself to Joaquin Phoenix’s Ted in the clip below:
How: this involves creating a basic content block within Chatfuel that has a discount code within it. Instead of giving all users of the bot the same experience, you can direct them through to specific parts of the conversation (or 'blocks'). Using the direct link to your content block, you'll be able to create CTAs on your website that direct people straight into Messenger to get a discount code (more info here).
In a traditional application, the user interface (UI) is a series of screens. A single app or website can use one or more screens as needed to exchange information with the user. Most applications start with a main screen where users initially land and provide navigation that leads to other screens for various functions like starting a new order, browsing products, or looking for help.

To get started, you can build your bot online using the Azure Bot Service, selecting from the available C# and Node.js templates. As your bot gets more sophisticated, however, you will need to create your bot locally then deploy it to the web. Choose an IDE, such as Visual Studio or Visual Studio Code, and a programming language. SDKs are available for the following languages:

The classification score produced identifies the class with the highest term matches (accounting for commonality of words) but this has limitations. A score is not the same as a probability, a score tells us which intent is most like the sentence but not the likelihood of it being a match. Thus it is difficult to apply a threshold for which classification scores to accept or not. Having the highest score from this type of algorithm only provides a relative basis, it may still be an inherently weak classification. Also the algorithm doesn’t account for what a sentence is not, it only counts what it is like. You might say this approach doesn’t consider what makes a sentence not a given class.
I will not go into the details of extracting each feature value here. It can be referred from the documentation of rasa-core link that I provided above. So, assuming we extracted all the required feature values from the sample conversations in the required format, we can then train an AI model like LSTM followed by softmax to predict the next_action. Referring to the above figure, this is what the ‘dialogue management’ component does. Why LSTM is more appropriate? — As mentioned above, we want our model to be context aware and look back into the conversational history to predict the next_action. This is akin to a time-series model (pls see my other LSTM-Time series article) and hence can be best captured in the memory state of the LSTM model. The amount of conversational history we want to look back can be a configurable hyper-parameter to the model.
Like most of the Applications, the Chatbot is also connected to the Database. The knowledge base or the database of information is used to feed the chatbot with the information needed to give a suitable response to the user. Data of user’s activities and whether or not your chatbot was able to match their questions, is captured in the data store. NLP translates human language into information with a combination of patterns and text that can be mapped in the real time to find applicable responses.
To inspire the next generation of explorers, NASA reaches out to students in schools, community organizations, and public events. A star robotic ambassador is “Rov-E,” a close replica of real NASA Mars rovers. Through Amazon Lex, NASA staff can now easily navigate Rov-E via voice commands -- an effective conversational interface when speaking with large crowds. Multi-turn dialog management capability enables Rov-E "to talk,” answering students’ questions about Mars in an engaging way. Integration with AWS services allows Rov-E to connect and scale with various data sources to retrieve NASA’s Mars exploration information. 

Chatbots are often used online and in messaging apps, but are also now included in many operating systems as intelligent virtual assistants, such as Siri for Apple products and Cortana for Windows. Dedicated chatbot appliances are also becoming increasingly common, such as Amazon's Alexa. These chatbots can perform a wide variety of functions based on user commands.
We then ran a second test with a very specific topic aimed at answering very specific questions that a small segment of their audience was interested in. There, the engagement was much higher (97% open rate, 52% click-through rate on average over the duration of the test). Interestingly, drop-off went wayyy down there. At the end of this test, only 0.29% of the users had unsubscribed.

Endurance is a companion chatbot that uses neurolinguistics programming (better known as NLP) to have friendly conversations with suspected patients with Alzheimer’s and other forms of dementia. It uses AI technology to maintain a lucid conversation while simultaneously testing the human user’s ability to remember information in different ways. The chatbot encourages the user to talk about their favorite activities, memories, music, etc. This doesn’t just test the person’s memory but actively promotes their ability to recall.
In a traditional application, the user interface (UI) consists of a series of screens, and a single app or website can use one or more screens as needed to exchange information with the user. Most applications start with a main screen where users initially land, and that screen provides navigation that leads to other screens for various functions like starting a new order, browsing products, or looking for help.
WeChat was created by Chinese holding company Tencent three years ago. The product was created by a special projects team within Tencent (who also owns the dominant desktop messaging software in China, QQ) under the mandate of creating a completely new mobile-first messaging experience for the Chinese market. In three short years, WeChat has exploded in popularity and has become the dominant mobile messaging platform in China, with approximately 700M monthly active users (MAUs).
ETL. The bot relies on information and knowledge extracted from the raw data by an ETL process in the backend. This data might be structured (SQL database), semi-structured (CRM system, FAQs), or unstructured (Word documents, PDFs, web logs). An ETL subsystem extracts the data on a fixed schedule. The content is transformed and enriched, then loaded into an intermediary data store, such as Cosmos DB or Azure Blob Storage.
Botsify is another Facebook chatbot platform that helps make it easy to integrate chatbots into the system. Its paid subscription helps you in five easy steps. 1) Log into the botsify.com site, 2) Connect your Facebook account, 3) Setup a webhook, 4) Write up commands for the chatbot you are creating, and 5) Let Botisfy handle the customer service for you. If the paid services are a little too much, they do offer a free service that lets you create as many bots as your lovely imagination can dream up.
It’s best to have very specific intents, so that you’re clear what your user wants to do, but to have broad entities – so that the intent can apply in many places. For example, changing a password is a common activity (a narrow intent), where you change your password might be many different places (broad entities). The context then personalises the conversation based on what it knows about the user, what they’re trying to achieve, and where they’re trying to do that.
Modern chatbots are frequently used in situations in which simple interactions with only a limited range of responses are needed. This can include customer service and marketing applications, where the chatbots can provide answers to questions on topics such as products, services or company policies. If a customer's questions exceed the abilities of the chatbot, that customer is usually escalated to a human operator.
×