An ecommerce website’s user interface is an important part of the overall application. It has amazing product pictures for shoppers to look at. It has an advanced search tool to help the shopper locate products. It has lovely buttons users can click to add products to the shopping cart. And it has forms for entering payment information or an address.
Typically, companies applied a passive engagement method with consumers. In other words, customer support only responds to complaining consumers – but never initiate any conversations or look for feedback. While this method was fine for a long while, it doesn’t work anymore with millennials. Users want to communicate with attentive brands who have a 24/7 support system and they won’t settle for anything less.
In so many ways I think chatbots are only just getting started – their potential is much underestimated at present. A big challenge is for chatbots mature so that they do more than is possible as a result of content entry wizards. If your content is created with a few easy clicks, it is unlikely to be much inspiration to anyone – and to date, despite much work in the field, the ability to emulated the creative open ended nature of real intellingence has seen only very partial success.
Logging. Log user conversations with the bot, including the underlying performance metrics and any errors. These logs will prove invaluable for debugging issues, understanding user interactions, and improving the system. Different data stores might be appropriate for different types of logs. For example, consider Application Insights for web logs, Cosmos DB for conversations, and Azure Storage for large payloads. See Write directly to Azure Storage.
You can structure these modules to flow in any way you like, ranging from free form to sequential. The Bot Framework SDK provides several libraries that allows you to construct any conversational flow your bot needs. For example, the prompts library allows you to ask users for input, the waterfall library allows you to define a sequence of question/answer pair, the dialog control library allows you to modularized your conversational flow logic, etc. All of these libraries are tied together through a dialogs object. Let's take a closer look at how modules are implemented as dialogs to design and manage conversation flows and see how that flow is similar to the traditional application flow.
Context: When a NLU algorithm analyzes a sentence, it does not have the history of the user conversation. It means that if it receives the answer to a question it has just asked, it will not remember the question. For differentiating the phases during the chat conversation, it’s state should be stored. It can either be flags like “Ordering Pizza” or parameters like “Restaurant: ‘Dominos’”. With context, you can easily relate intents with no need to know what was the previous question.
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.
User message. Once authenticated, the user sends a message to the bot. The bot reads the message and routes it to a natural language understanding service such as LUIS. This step gets the intents (what the user wants to do) and entities (what things the user is interested in). The bot then builds a query that it passes to a service that serves information, such as Azure Search for document retrieval, QnA Maker for FAQs, or a custom knowledge base. The bot uses these results to construct a response. To give the best result for a given query, the bot might make several back-and-forth calls to these remote services.
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.
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: