Since Facebook Messenger, WhatsApp, Kik, Slack, and a growing number of bot-creation platforms came online, developers have been churning out chatbots across industries, with Facebook’s most recent bot count at over 33,000. At a CRM technologies conference in 2011, Gartner predicted that 85 percent of customer engagement would be fielded without human intervention. Though a seeming natural fit for retail and purchasing-related decisions, it doesn’t appear that chatbot technology will play favorites in the coming few years, with uses cases being promoted in finance, human resources, and even legal services.

Getting the remaining values (information that user would have provided to bot’s previous questions, bot’s previous action, results of the API call etc.,) is little bit tricky and here is where the dialogue manager component takes over. These feature values will need to be extracted from the training data that the user will define in the form of sample conversations between the user and the bot. These sample conversations should be prepared in such a fashion that they capture most of the possible conversational flows while pretending to be both an user and a bot.

Through our preview journey in the past two years, we have learned a lot from interacting with thousands of customers undergoing digital transformation. We highlighted some of our customer stories (such as UPS, Equadex, and more) in our general availability announcement. This post covers conversational AI in a nutshell using Azure Bot Service and LUIS, what we’ve learned so far, and dive into the new capabilities. We will also show how easy it is to get started in building a conversational bot with natural language.
[In] artificial intelligence ... machines are made to behave in wondrous ways, often sufficient to dazzle even the most experienced observer. But once a particular program is unmasked, once its inner workings are explained ... its magic crumbles away; it stands revealed as a mere collection of procedures ... The observer says to himself "I could have written that". With that thought he moves the program in question from the shelf marked "intelligent", to that reserved for curios ... The object of this paper is to cause just such a re-evaluation of the program about to be "explained". Few programs ever needed it more.
Consider why someone would turn to a bot in the first place. According to an upcoming HubSpot research report, of the 71% of people willing to use messaging apps to get customer assistance, many do it because they want their problem solved, fast. And if you've ever used (or possibly profaned) Siri, you know there's a much lower tolerance for machines to make mistakes.
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.
Die Herausforderung bei der Programmierung eines Chatbots liegt in der sinnvollen Zusammenstellung der Erkennungen. Präzise Erkennungen für spezielle Fragen werden dabei ergänzt durch globale Erkennungen, die sich nur auf ein Wort beziehen und als Fallback dienen können (der Bot erkennt grob das Thema, aber nicht die genaue Frage). Manche Chatbot-Programme unterstützen die Entwicklung dabei über Priorisierungsränge, die einzelnen Antworten zuzuordnen sind. Zur Programmierung eines Chatbots werden meist Entwicklungsumgebungen verwendet, die es erlauben, Fragen zu kategorisieren, Antworten zu priorisieren und Erkennungen zu verwalten[5][6]. Dabei lassen manche auch die Gestaltung eines Gesprächskontexts zu, der auf Erkennungen und möglichen Folgeerkennungen basiert („Möchten Sie mehr darüber erfahren?“). Ist die Wissensbasis aufgebaut, wird der Bot in möglichst vielen Trainingsgesprächen mit Nutzern der Zielgruppe optimiert[7]. Fehlerhafte Erkennungen, Erkennungslücken und fehlende Antworten lassen sich so erkennen[8]. Meist bietet die Entwicklungsumgebung Analysewerkzeuge, um die Gesprächsprotokolle effizient auswerten zu können[9]. Ein guter Chatbot erreicht auf diese Weise eine mittlere Erkennungsrate von mehr als 70 % der Fragen. Er wird damit von den meisten Nutzern als unterhaltsamer Gegenpart akzeptiert.

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