From any point in the conversation, the bot needs to know where to go next. If a user writes, “I’m looking for new pants,” the bot might ask, “For a man or woman?” The user may type, “For a woman.” Does the bot then ask about size, style, brand, or color? What if one of those modifiers was already specified in the query? The possibilities are endless, and every one of them has to be mapped with rules.
According to this study by Petter Bae Brandtzaeg, “the real buzz about this technology did not start before the spring of 2016. Two reasons for the sudden and renewed interest in chatbots were [number one] massive advances in artificial intelligence (AI) and a major usage shift from online social networksto mobile messaging applications such as Facebook Messenger, Telegram, Slack, Kik, and Viber.”
Kik Messenger, which has 275 million registered users, recently announced a bot store. This includes one bot to send people Vine videos and another for getting makeup suggestions from Sephora. Twitter has had bots for years, like this bot that tweets about earthquakes as soon as they’re registered or a Domino’s bot that allows you to order a pizza by tweeting a pizza emoji.
3. Now, since ours is a conversational AI bot, we need to keep track of the conversations happened thus far, to predict an appropriate response. For this purpose, we need a dictionary object that can be persisted with information about the current intent, current entities, persisted information that user would have provided to bot’s previous questions, bot’s previous action, results of the API call (if any). This information will constitute our input X, the feature vector. The target y, that the dialogue model is going to be trained upon will be ‘next_action’ (The next_action can simply be a one-hot encoded vector corresponding to each actions that we define in our training data).
But, as any human knows, no question or statement in a conversation really has a limited number of potential responses. There is an infinite number of ways to combine the finite number of words in a human language to say something. Real conversation requires creativity, spontaneity, and inference. Right now, those traits are still the realm of humans alone. There is still a gamut of work to finish in order to make bots as person-centric as Rogerian therapists, but bots and their creators are getting closer every day.
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:
Companies use internet bots to increase online engagement and streamline communication. Companies often use bots to cut down on cost, instead of employing people to communicate with consumers, companies have developed new ways to be efficient. These chatbots are used to answer customers' questions. For example, Domino's has developed a chatbot that can take orders via Facebook Messenger. Chatbots allow companies to allocate their employees' time to more important things.
Generally, companies engage in passive customer interactions. That is, they only respond to inquiries but don’t start chats. AI bots can begin the conversation and inform customers about sales and promotions. Moreover, virtual assistants can offer product pages, images, blog entries, and video tutorials. Suppose a customer finds a nice pair of jeans on your website. In this case, a chatbot can send them a link to a page with T-shirts that go well with them.
Telegram launched its bot API in 2015, and launched version 2.0 of its platform in April 2016, adding support for bots to send rich media and access geolocation services. As with Kik, Telegram’s bots feel spartan and lack compelling features at this point, but that could change over time. Telegram has also yet to add payment features, so there are not yet any shopping-related bots on the platform.
"From Russia With Love" (PDF). Retrieved 2007-12-09. Psychologist and Scientific American: Mind contributing editor Robert Epstein reports how he was initially fooled by a chatterbot posing as an attractive girl in a personal ad he answered on a dating website. In the ad, the girl portrayed herself as being in Southern California and then soon revealed, in poor English, that she was actually in Russia. He became suspicious after a couple of months of email exchanges, sent her an email test of gibberish, and she still replied in general terms. The dating website is not named. Scientific American: Mind, October–November 2007, page 16–17, "From Russia With Love: How I got fooled (and somewhat humiliated) by a computer". Also available online.
In a procedural conversation flow, you define the order of the questions and the bot will ask the questions in the order you defined. You can organize the questions into logical modules to keep the code centralized while staying focused on guiding the conversational. For example, you may design one module to contain the logic that helps the user browse for products and a separate module to contain the logic that helps the user create a new order.
This chatbot aims to make medical diagnoses faster, easier, and more transparent for both patients and physicians – think of it like an intelligent version of WebMD that you can talk to. MedWhat is powered by a sophisticated machine learning system that offers increasingly accurate responses to user questions based on behaviors that it “learns” by interacting with human beings.
When we open our news feed and find out about yet another AI breakthrough—IBM Watson, driverless cars, AlphaGo — the notion of TODA may feel decidedly anti-climatic. The reality is that the current AI is not quite 100% turnkey-ready for TODA. This will soon change due to two key factors: 1) businesses want it, and 2) businesses have abundant data, the fuel that the current state-of-the-art machine learning techniques need to make AI work.
Even if it sounds crazy, chatbots might even challenge apps and websites! An app requires space, it has to be downloaded. Websites take time to load and most of them are pretty slow. A bot works instantly. You type something, it replies. Another great thing about them is that they bypass user interface and completely change how customers interact with your business. People will navigate your content by using their natural language.
A very common request that we get is people want to practice conversation, said Duolingo's co-founder and CEO, Luis von Ahn. The company originally tried pairing up non-native speakers with native speakers for practice sessions, but according to von Ahn, "about three-quarters of the people we try it with are very embarrassed to speak in a foreign language with another person."
It didn’t take long, however, for Turing’s headaches to begin. The BabyQ bot drew the ire of Chinese officials by speaking ill of the Communist Party. In the exchange seen in the screenshot above, one user commented, “Long Live the Communist Party!” In response, BabyQ asked the user, “Do you think that such a corrupt and incompetent political regime can live forever?”
Closed domain chatbots focus on a specific knowledge domain, and these bots may fail to answer questions in other knowledge domains. For example, a restaurant booking conversational bot will be able to take your reservation, but may not respond to a question about the price of an air ticket. A user could hypothetically attempt to take the conversation elsewhere, however, closed domain chatbots are not required, nor often programmed to handle such cases.
The most advanced bots are powered by artificial intelligence, helping it to understand complex requests, personalize responses, and improve interactions over time. This technology is still in its infancy, so most bots follow a set of rules programmed by a human via a bot-building platform. It's as simple as ordering a list of if-then statements and writing canned responses, often without needing to know a line of code.
Interface designers have come to appreciate that humans' readiness to interpret computer output as genuinely conversational—even when it is actually based on rather simple pattern-matching—can be exploited for useful purposes. Most people prefer to engage with programs that are human-like, and this gives chatbot-style techniques a potentially useful role in interactive systems that need to elicit information from users, as long as that information is relatively straightforward and falls into predictable categories. Thus, for example, online help systems can usefully employ chatbot techniques to identify the area of help that users require, potentially providing a "friendlier" interface than a more formal search or menu system. This sort of usage holds the prospect of moving chatbot technology from Weizenbaum's "shelf ... reserved for curios" to that marked "genuinely useful computational methods".