Authentication. Users start by authenticating themselves using whatever mechanism is provided by their channel of communication with the bot. The bot framework supports many communication channels, including Cortana, Microsoft Teams, Facebook Messenger, Kik, and Slack. For a list of channels, see Connect a bot to channels. When you create a bot with Azure Bot Service, the Web Chat channel is automatically configured. This channel allows users to interact with your bot directly in a web page. You can also connect the bot to a custom app by using the Direct Line channel. The user's identity is used to provide role-based access control, as well as to serve personalized content.
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.
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.
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:
This reference architecture describes how to build an enterprise-grade conversational bot (chatbot) using the Azure Bot Framework. Each bot is different, but there are some common patterns, workflows, and technologies to be aware of. Especially for a bot to serve enterprise workloads, there are many design considerations beyond just the core functionality. This article covers the most essential design aspects, and introduces the tools needed to build a robust, secure, and actively learning bot.
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.
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.
Simple chatbots work based on pre-written keywords that they understand. Each of these commands must be written by the developer separately using regular expressions or other forms of string analysis. If the user has asked a question without using a single keyword, the robot can not understand it and, as a rule, responds with messages like “sorry, I did not understand”.
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.
Chatbots such as ELIZA and PARRY were early attempts at creating programs that could at least temporarily fool a real human being into thinking they were having a conversation with another person. PARRY's effectiveness was benchmarked in the early 1970s using a version of a Turing test; testers only made the correct identification of human vs. chatbot at a level consistent with making a random guess.
Just last month, Google launched its latest Google Assistant. To help readers get a better glimpse of the redesign, Google’s Scott Huffman explained: “Since the Assistant can do so many things, we’re introducing a new way to talk about them. We’re them Actions. Actions include features built by Google—like directions on Google Maps—and those that come from developers, publishers, and other third parties, like working out with Fitbit Coach.”
Using this method, you can manage multiple funnels of content upgrades, and even convince your users to take the next step in the buyer journey directly within Messenger. In the example below I just direct the user to subscribe to content recommendations via Messenger, but you could push them to book a meeting with a sales rep, take a free trial or directly purchase your product.
These are hardly ideas of Hollywood’s science fiction. Even when the Starbucks bot can sound like Scarlett Johansson’s Samantha, the public will be unimpressed — we would prefer a real human interaction. Yet the public won’t have a choice; efficient task-oriented dialog agents will be the automatic vending machines and airport check-in kiosks of the near future.
Through Knowledge Graph, Google search has already become amazingly good at understanding the context and meaning of your queries, and it is getting better at natural language queries. With its massive scale in data and years of working at the very hard problems of natural language processing, the company has a clear path to making Allo’s conversational commerce capabilities second to none.
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.
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. Others are used for entertainment, such as SmarterChild on AOL Instant Messenger and MSN Messenger.
Enter Roof Ai, a chatbot that helps real-estate marketers to automate interacting with potential leads and lead assignment via social media. The bot identifies potential leads via Facebook, then responds almost instantaneously in a friendly, helpful, and conversational tone that closely resembles that of a real person. Based on user input, Roof Ai prompts potential leads to provide a little more information, before automatically assigning the lead to a sales agent.
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."
“Beware though, bots have the illusion of simplicity on the front end but there are many hurdles to overcome to create a great experience. So much work to be done. Analytics, flow optimization, keeping up with ever changing platforms that have no standard. For deeper integrations and real commerce like Assist powers, you have error checking, integrations to APIs, routing and escalation to live human support, understanding NLP, no back buttons, no home button, etc etc. We have to unlearn everything we learned the past 20 years to create an amazing experience in this new browser.” — Shane Mac, CEO of Assist
One pertinent field of AI research is natural language processing. Usually, weak AI fields employ specialized software or programming languages created specifically for the narrow function required. For example, A.L.I.C.E. uses a markup language called AIML, which is specific to its function as a conversational agent, and has since been adopted by various other developers of, so called, Alicebots. Nevertheless, A.L.I.C.E. is still purely based on pattern matching techniques without any reasoning capabilities, the same technique ELIZA was using back in 1966. This is not strong AI, which would require sapience and logical reasoning abilities.