Chatbots currently operate through a number of channels, including web, within apps, and on messaging platforms. They also work across the spectrum from digital commerce to banking using bots for research, lead generation, and brand awareness. An increasing amount of businesses are experimenting with chatbots for e-commerce, customer service, and content delivery.
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).
Next, identify the data sources that will enable the bot to interact intelligently with users. As mentioned earlier, these data sources could contain structured, semi-structured, or unstructured data sets. When you're getting started, a good approach is to make a one-off copy of the data to a central store, such as Cosmos DB or Azure Storage. As you progress, you should create an automated data ingestion pipeline to keep this data current. Options for an automated ingestion pipeline include Data Factory, Functions, and Logic Apps. Depending on the data stores and the schemas, you might use a combination of these approaches.
Having a conversation with a computer might have seemed like science fiction even a few years ago. But now, most of us already use chatbots for a variety of tasks. For example, as end users, we ask the virtual assistant on our smartphones to find a local restaurant and provide directions. Or, we use an online banking chatbot for help with a loan application.
A chatbot is a computer program that simulates human conversation through voice commands or text chats or both. Chatbot, short for chatterbot, is an Artificial Intelligence (AI) feature that can be embedded and used through any major messaging applications. There are a number of synonyms for chatbot, including "talkbot," "bot," "IM bot," "interactive agent" or "artificial conversation entity."
As retrieved from Forbes, Salesforce’s chief scientist, Richard Socher talked in a conference about his revelations of NLP and machine translation: “I can’t speak for all chatbot deployments in the world – there are some that aren’t done very well…but in our case we’ve heard very positive feedback because when a bot correctly answers questions or fills your requirements it does it very, very fast.
In 1950, Alan Turing's famous article "Computing Machinery and Intelligence" was published, which proposed what is now called the Turing test as a criterion of intelligence. This criterion depends on the ability of a computer program to impersonate a human in a real-time written conversation with a human judge, sufficiently well that the judge is unable to distinguish reliably—on the basis of the conversational content alone—between the program and a real human. The notoriety of Turing's proposed test stimulated great interest in Joseph Weizenbaum's program ELIZA, published in 1966, which seemed to be able to fool users into believing that they were conversing with a real human. However Weizenbaum himself did not claim that ELIZA was genuinely intelligent, and the Introduction to his paper presented it more as a debunking exercise:
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.
Businesses are no exception to this rule. As more and more users now expect and prefer chat as a primary mode of communication, we’ll begin to see more and more businesses leveraging conversational AI to achieve business goals—just as Gartner predicts. It’s not just for the customer; your business can reduce operational costs and scale operations as well.
Once your bot is running in production, you will need a DevOps team to keep it that way. Continually monitor the system to ensure the bot operates at peak performance. Use the logs sent to Application Insights or Cosmos DB to create monitoring dashboards, either using Application Insights itself, Power BI, or a custom web app dashboard. Send alerts to the DevOps team if critical errors occur or performance falls below an acceptable threshold.
Natural Language Processing (NLP) is the technological process in which computers derive meaning from natural human inputs. NLP-Based Conversational Bots are machine learning bots that exploit the power of artificial intelligence, which gives them a “learning brain.” These types of conversational bots have the ability to understand natural language, and do not require specific instructions to respond to questions as observed in types of chatbots such as Scripted and Structured Conversational Bots.
Chatbots can have varying levels of complexity and can be stateless or stateful. A stateless chatbot approaches each conversation as if it was interacting with a new user. In contrast, a stateful chatbot is able to review past interactions and frame new responses in context. Adding a chatbot to a company's service or sales department requires low or no coding; today, a number of chatbot service providers that allow developers to build conversational user interfaces for third-party business applications.
Malicious chatbots are frequently used to fill chat rooms with spam and advertisements, by mimicking human behaviour and conversations or to entice people into revealing personal information, such as bank account numbers. They are commonly found on Yahoo! Messenger, Windows Live Messenger, AOL Instant Messenger and other instant messaging protocols. There has also been a published report of a chatbot used in a fake personal ad on a dating service's website.
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. 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. Fehlerhafte Erkennungen, Erkennungslücken und fehlende Antworten lassen sich so erkennen. Meist bietet die Entwicklungsumgebung Analysewerkzeuge, um die Gesprächsprotokolle effizient auswerten zu können. 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.
The classic historic early chatbots are ELIZA (1966) and PARRY (1972). More recent notable programs include A.L.I.C.E., Jabberwacky and D.U.D.E (Agence Nationale de la Recherche and CNRS 2006). While ELIZA and PARRY were used exclusively to simulate typed conversation, many chatbots now include functional features such as games and web searching abilities. In 1984, a book called The Policeman's Beard is Half Constructed was published, allegedly written by the chatbot Racter (though the program as released would not have been capable of doing so).
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.
Conversational bots can help a business’s customers with difficult transactions, plus collect data and give recommendations. For example, a conversational bot integrated to an airline’s website can answer questions regarding flight availability, rebook tickets, fees and suggest add-ons like hotels. Though a conversational bot may not be able to finish the exchanges, it could still be able to gather preliminary data and pass it on to the next available customer care agent. In both cases, the airline will save considerable time in its call center.
The process of building, testing and deploying chatbots can be done on cloud based chatbot development platforms offered by cloud Platform as a Service (PaaS) providers such as Yekaliva, Oracle Cloud Platform, SnatchBot and IBM Watson.   These cloud platforms provide Natural Language Processing, Artificial Intelligence and Mobile Backend as a Service for chatbot development.
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.
Chatbots have come a long way since then. They are built on AI technologies, including deep learning, natural language processing and machine learning algorithms, and require massive amounts of data. The more an end user interacts with the bot, the better voice recognition becomes at predicting what the appropriate response is when communicating with an end user.
The term "ChatterBot" was originally coined by Michael Mauldin (creator of the first Verbot, Julia) in 1994 to describe these conversational programs. Today, most chatbots are accessed via virtual assistants such as Google Assistant and Amazon Alexa, via messaging apps such as Facebook Messenger or WeChat, or via individual organizations' apps and websites. Chatbots can be classified into usage categories such as conversational commerce (e-commerce via chat), analytics, communication, customer support, design, developer tools, education, entertainment, finance, food, games, health, HR, marketing, news, personal, productivity, shopping, social, sports, travel and utilities.