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.
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.

An AI-powered chatbot is a smarter version of a chatbot (a machine that has the ability to communicate with humans via text or audio). It uses natural language processing (NLP) and machine learning (ML) to get a better understanding of the intent of humans it interacts with. Also, its purpose is to provide a natural, as near human-level communication as possible.
Note — If the plan is to build the sample conversations from the scratch, then one recommended way is to use an approach called interactive learning. We will not go into the details of the interactive learning here, but to put it in simple terms and as the name suggests, it is a user interface application that will prompt the user to input the user request and then the dialogue manager model will come up with its top choices for predicting the best next_action, prompting the user again to confirm on its priority of learned choices. The model uses this feedback to refine its predictions for next time (This is like a reinforcement learning technique wherein the model is rewarded for its correct predictions).
Like apps and websites, bots have a UI, but it is made up of dialogs, rather than screens. Dialogs help preserve your place within a conversation, prompt users when needed, and execute input validation. They are useful for managing multi-turn conversations and simple "forms-based" collections of information to accomplish activities such as booking a flight.
Chatting with a bot should be like talking to a human that knows everything. If you're using a bot to change an airline reservation, the bot should know if you have an unused credit on your account and whether you typically pick the aisle or window seat. Artificial intelligence will continue to radically shape this front, but a bot should connect with your current systems so a shared contact record can drive personalization.
As AOL's David Shingy writes in Adweek, "The challenge [with chatbots] will be thinking about creative from a whole different view: Can we have creative that scales? That customizes itself? We find ourselves hurtling toward another handoff from man to machine -- what larger system of creative or complex storytelling structure can I design such that a machine can use it appropriately and effectively?"
Disney invited fans of the movie to solve crimes with Lieutenant Judy Hopps, the tenacious, long-eared protagonist of the movie. Children could help Lt. Hopps investigate mysteries like those in the movie by interacting with the bot, which explored avenues of inquiry based on user input. Users can make suggestions for Lt. Hopps’ investigations, to which the chatbot would respond.
Your first question is how much of it does she want? 1 litre? 500ml? 200? She tells you she wants a 1 litre Tropicana 100% Orange Juice. Now you know that regular Tropicana is easily available, but 100% is hard to come by, so you call up a few stores beforehand to see where it’s available. You find one store that’s pretty close by, so you go back to your mother and tell her you found what she wanted. It’s $2, maybe $3, and after asking her for the money, you go on your way.

Dialogflow is a very robust platform for developing chatbots. One of the strongest reasons of using Dialogflow is its powerful Natural Language Understanding (NLU). You can build highly interactive chatbot as NLP of Dialogflow excels in intent classification and entity detection. It also offers integration with many chat platforms like Google Assistant, Facebook Messenger, Telegram,…
Companies most likely to be supporting bots operate in the health, communications and banking industries, with informational bots garnering the majority of attention. However, challenges still abound, even among bot supporters, with lack of skilled talent to develop and work with bots cited as a challenge in implementing solutions, followed by deployment and acquisition costs, as well as data privacy and security.

The fact that you can now run ads directly to Messenger is an enormous opportunity for any business. This skips the convoluted and leaky process of trying to acquire someone's email address to nurture them outside of Facebook's platform. Instead, you can retain the connection with someone inside Facebook and improve the overall conversion rates to receiving an engagement.
The market shapes customer behavior. Gartner predicts that “40% of mobile interactions will be managed by smart agents by 2020.” Every single business out there today either has a chatbot already or is considering one. 30% of customers expect to see a live chat option on your website. Three out of 10 consumers would give up phone calls to use messaging. As more and more customers begin expecting your company to have a direct way to contact you, it makes sense to have a touch point on a messenger.
H&M’s consistent increased sales over the past year and its August announcement to launch an eCommerce presence in Canada and South Korea during the fall of 2016, along with 11 new H&M online markets (for a total of 35 markets by the end of the year), appear to signify positive results for its chatbot implementation (though direct correlations are unavailable on its website).
Ein Chatterbot, Chatbot oder kurz Bot ist ein textbasiertes Dialogsystem, welches das Chatten mit einem technischen System erlaubt. Er hat je einen Bereich zur Textein- und -ausgabe, über die sich in natürlicher Sprache mit dem dahinterstehenden System kommunizieren lässt. Chatbots können, müssen aber nicht in Verbindung mit einem Avatar benutzt werden. Technisch sind Bots näher mit einer Volltextsuchmaschine verwandt als mit künstlicher oder gar natürlicher Intelligenz. Mit der steigenden Computerleistung können Chatbot-Systeme allerdings immer schneller auf immer umfangreichere Datenbestände zugreifen und daher auch intelligente Dialoge für den Nutzer bieten. Solche Systeme werden auch als virtuelle persönliche Assistenten bezeichnet.

Reports of political interferences in recent elections, including the 2016 US and 2017 UK general elections,[3] have set the notion of botting being more prevalent because of the ethics that is challenged between the bot’s design and the bot’s designer. According to Emilio Ferrara, a computer scientist from the University of Southern California reporting on Communications of the ACM,[4] the lack of resources available to implement fact-checking and information verification results in the large volumes of false reports and claims made on these bots in social media platforms. In the case of Twitter, most of these bots are programmed with searching filter capabilities that target key words and phrases that reflect in favor and against political agendas and retweet them. While the attention of bots is programmed to spread unverified information throughout the social media platform,[5] it is a challenge that programmers face in the wake of a hostile political climate. Binary functions are designated to the programs and using an Application Program interface embedded in the social media website executes the functions tasked. The Bot Effect is what Ferrera reports as when the socialization of bots and human users creates a vulnerability to the leaking of personal information and polarizing influences outside the ethics of the bot’s code. According to Guillory Kramer in his study, he observes the behavior of emotionally volatile users and the impact the bots have on the users, altering the perception of reality.
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.
The process of building a chatbot can be divided into two main tasks: understanding the user's intent and producing the correct answer. The first task involves understanding the user input. In order to properly understand a user input in a free text form, a Natural Language Processing Engine can be used.[36] The second task may involve different approaches depending on the type of the response that the chatbot will generate.
Some bots communicate with other users of Internet-based services, via instant messaging (IM), Internet Relay Chat (IRC), or another web interface such as Facebook Bots and Twitterbots. These chatterbots may allow people to ask questions in plain English and then formulate a proper response. These bots can often handle many tasks, including reporting weather, zip-code information, sports scores, converting currency or other units, etc.[citation needed] Others are used for entertainment, such as SmarterChild on AOL Instant Messenger and MSN Messenger.
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:
An AI-powered chatbot is a smarter version of a chatbot (a machine that has the ability to communicate with humans via text or audio). It uses natural language processing (NLP) and machine learning (ML) to get a better understanding of the intent of humans it interacts with. Also, its purpose is to provide a natural, as near human-level communication as possible.
If it happens to be an API call / data retrieval, then the control flow handle will remain within the ‘dialogue management’ component that will further use/persist this information to predict the next_action, once again. The dialogue manager will update its current state based on this action and the retrieved results to make the next prediction. Once the next_action corresponds to responding to the user, then the ‘message generator’ component takes over.

Lack contextual awareness. Not everyone has all of the data that Google has – but chatbots today lack the awareness that we expect them to have. We assume that chatbot technology will know our IP address, browsing history, previous purchases, but that is just not the case today. I would argue that many chatbots even lack basic connection to other data silos to improve their ability to answer questions.
IBM estimates that 265 billion customer support tickets and calls are made globally every year, resulting in $1.3 trillion in customer service costs. IBM also referenced a Chatbots Magazine figure purporting that implementing customer service AI solutions, such as chatbots, into service workflows can reduce a business’ spend on customer service by 30 percent.

Artificial Intelligence is currently being deployed in customer service to both augment and replace human agents - with the primary goals of improving the customer experience and reducing human customer service costs. While the technology is not yet able to perform all the tasks a human customer service representative could, many consumer requests are very simple ask that sometimes be handled by current AI technologies without human input.


A malicious use of bots is the coordination and operation of an automated attack on networked computers, such as a denial-of-service attack by a botnet. Internet bots can also be used to commit click fraud and more recently have seen usage around MMORPG games as computer game bots.[citation needed] A spambot is an internet bot that attempts to spam large amounts of content on the Internet, usually adding advertising links. More than 94.2% of websites have experienced a bot attack.[2]
A chatbot (sometimes referred to as a chatterbot) is programming that simulates the conversation or "chatter" of a human being through text or voice interactions. Chatbot virtual assistants are increasingly being used to handle simple, look-up tasks in both business-to-consumer (B2C) and business-to-business (B2B) environments. The addition of chatbot assistants not only reduces overhead costs by making better use of support staff time, it also allows companies to provide a level of customer service during hours when live agents aren't available.
Another option is to integrate your own custom AI service. This approach is more complex, but gives you complete flexibility in terms of the machine learning algorithm, training, and model. For example, you could implement your own topic modeling and use algorithm such as LDA to find similar or relevant documents. A good approach is to expose your custom AI solution as a web service endpoint, and call the endpoint from the core bot logic. The web service could be hosted in App Service or in a cluster of VMs. Azure Machine Learning provides a number of services and libraries to assist you in training and deploying your models.
Another reason is that Facebook, which has 900 million Messenger users, is expected to get into bots. Many see this as a big potential opportunity; where Facebook goes, the rest of the industry often follows. Slack, which lends itself to bot-based services, has also grown dramatically to two million daily users, which bot makers and investors see as a potentially lucrative market.

Creating a comprehensive conversational flow chart will feel like the greatest hurdle of the process, but know it's just the beginning. It's the commitment to tweaking and improving in the months and years following that makes a great bot. As Clara de Soto, cofounder of Reply.ai, told VentureBeat, "You're never just 'building a bot' so much as launching a 'conversational strategy' — one that's constantly evolving and being optimized based on how users are actually interacting with it."
Back in April, National Geographic launched a Facebook Messenger bot to promote their new show about the theoretical physicist's work and personal life. Developed by 360i, the charismatic Einstein bot reintroduced audiences to the scientific figure in a more intimate setting, inviting them to learn about the lesser-known aspects of his life through a friendly, natural conversation with the man himself.
There are situations for chatbots, however, if you are able to recognize the limitations of chatbot technology. The real value from chatbots come from limited workflows such as a simple question and answer or trigger and action functionality, and that’s where the technology is really shining. People tend to want to find answers without the need to talk to a real person, so organizations are enabling their customers to seek help how they please. Mastercard allows users to check in with their accounts by messaging its respective bot. Whole Foods uses a chatbot for its customers to easily surface recipes, and Staples partnered with IBM to create a chatbot to answer general customer inquiries about orders, products and more.
To keep chatbots up to speed with changing company products and services, traditional chatbot development platforms require ongoing maintenance. This can either be in the form of an ongoing service provider or for larger enterprises in the form of an in-house chatbot training team.[38] To eliminate these costs, some startups are experimenting with Artificial Intelligence to develop self-learning chatbots, particularly in Customer Service applications.

How can our business leverage technology to better and more often engage younger audiences with our products and services? H&M is one of several retailers experimenting with and leveraging chatbots as a  mobile marketing opportunity – according to a report by Accenture, 32 percent of the world (a large portion of the population 29 years old and younger) uses social media daily and 80 percent of that time is via mobile.

The most widely used anti-bot technique is the use of CAPTCHA, which is a form of Turing test used to distinguish between a human user and a less-sophisticated AI-powered bot, by the use of graphically-encoded human-readable text. Examples of providers include Recaptcha, and commercial companies such as Minteye, Solve Media, and NuCaptcha. Captchas, however, are not foolproof in preventing bots as they can often be circumvented by computer character recognition, security holes, and even by outsourcing captcha solving to cheap laborers.


Several studies accomplished by analytics agencies such as Juniper or Gartner [34] report significant reduction of cost of customer services, leading to billions of dollars of economy in the next 10 years. Gartner predicts an integration by 2020 of chatbots in at least 85% of all client's applications to customer service. Juniper's study announces an impressive amount of $8 billion retained annually by 2022 due to the use of chatbots.
×