When one dialog invokes another, the Bot Builder adds the new dialog to the top of the dialog stack. The dialog that is on top of the stack is in control of the conversation. Every new message sent by the user will be subject to processing by that dialog until it either closes or redirects to another dialog. When a dialog closes, it's removed from the stack, and the previous dialog in the stack assumes control of the conversation.
Die meisten Chatbots greifen auf eine vorgefertigte Datenbank, die sog. Wissensdatenbank mit Antworten und Erkennungsmustern, zurück. Das Programm zerlegt die eingegebene Frage zuerst in Einzelteile und verarbeitet diese nach vorgegebenen Regeln. Dabei können Schreibweisen harmonisiert (Groß- und Kleinschreibung, Umlaute etc.), Satzzeichen interpretiert und Tippfehler ausgeglichen werden (Preprocessing). Im zweiten Schritt erfolgt dann die eigentliche Erkennung der Frage. Diese wird üblicherweise über Erkennungsmuster gelöst, manche Chatbots erlauben darüber hinaus die Verschachtelung verschiedener Mustererkennungen über sogenannte Makros. Wird eine zur Frage passende Antwort erkannt, kann diese noch angepasst werden (beispielsweise können skriptgesteuert berechnete Daten eingefügt werden – „In Ulm sind es heute 37 °C.“). Diesen Vorgang nennt man Postprocessing. Die daraus entstandene Antwort wird dann ausgegeben. Moderne kommerzielle Chatbot-Programme erlauben darüber hinaus den direkten Zugriff auf die gesamte Verarbeitung über eingebaute Skriptsprachen und Programmierschnittstellen.
If it happens to be an API call / data retrieval, then the control flow handle will remain within the ‘dialogue management’ component that will further use/persist this information to predict the next_action, once again. The dialogue manager will update its current state based on this action and the retrieved results to make the next prediction. Once the next_action corresponds to responding to the user, then the ‘message generator’ component takes over.
The progressive advance of technology has seen an increase in businesses moving from traditional to digital platforms to transact with consumers. Convenience through technology is being carried out by businesses by implementing Artificial Intelligence (AI) techniques on their digital platforms. One AI technique that is growing in its application and use is chatbots. Some examples of chatbot technology are virtual assistants like Amazon's Alexa and Google Assistant, and messaging apps, such as WeChat and Facebook messenger.
Let’s take a weather chat bot as an example to examine the capabilities of Scripted and Structured chatbots. The question “Will it rain on Sunday?” can be easily answered. However, if there is no programming for the question “Will I need an umbrella on Sunday?” then the query will not be understood by the chat bot. This is the common limitation with scripted and structured chatbots. However, in all cases, a conversational bot can only be as intelligent as the programming it has been given.

How far are we from building systems with commonsense? One often-heard answer is: not in the near future, while the realistic answer is: we don’t know. Last year, I spent some time trying to build a system that can do better than an information retrieval baseline in taking fourth-grade science exam (which still has a ways to go to gain a passing score of 65%). I failed hard. Here’s an example to get a sense of the difficulty of these questions.

More and more companies embrace chatbots to increase engagement with their audiences in the last few years. Especially for some industries including banking, insurance, and retail chatbots started to function as efficient interactive tools to increase customer satisfaction and cost-effectiveness. A study by Humley found out 43% of digital banking users are turning to chatbots – the increasing trend shows that banking customers consider the chatbot as an alternative channel to get instant information and solve their issues.

“Major shifts on large platforms should be seen as an opportunities for distribution. That said, we need to be careful not to judge the very early prototypes too harshly as the platforms are far from complete. I believe Facebook’s recent launch is the beginning of a new application platform for micro application experiences. The fundamental idea is that customers will interact with just enough UI, whether conversational and/or widgets, to be delighted by a service/brand with immediate access to a rich profile and without the complexities of installing a native app, all fueled by mature advertising products. It’s potentially a massive opportunity.” — Aaron Batalion, Partner at Lightspeed Venture Partners
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.
Intents: It is basically the action chatbot should perform when the user say something. For instance, intent can trigger same thing if user types “I want to order a red pair of shoes”, “Do you have red shoes? I want to order them” or “Show me some red pair of shoes”, all of these user’s text show trigger single command giving users options for Red pair of shoes.
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.

Prashant Sridharan, Twitter’s global director of developer relations says: “I’ve seen a lot of hyperbole around bots as the new apps, but I don’t know if I believe that. I don’t think we’re going to see this mass exodus of people stopping building apps and going to build bots. I think they’re going to build bots in addition to the app that they have or the service they provide,” as reported by re/code.

It’s best to have very specific intents, so that you’re clear what your user wants to do, but to have broad entities – so that the intent can apply in many places. For example, changing a password is a common activity (a narrow intent), where you change your password might be many different places (broad entities). The context then personalises the conversation based on what it knows about the user, what they’re trying to achieve, and where they’re trying to do that.
Prashant Sridharan, Twitter’s global director of developer relations says: “I’ve seen a lot of hyperbole around bots as the new apps, but I don’t know if I believe that. I don’t think we’re going to see this mass exodus of people stopping building apps and going to build bots. I think they’re going to build bots in addition to the app that they have or the service they provide,” as reported by re/code.

Smart chatbots rely on artificial intelligence when they communicate with users. Instead of pre-prepared answers, the robot responds with adequate suggestions on the topic. In addition, all the words said by the customers are recorded for later processing. However, the Forrester report “The State of Chatbots” points out that artificial intelligence is not a magic and is not yet ready to produce marvelous experiences for users on its own. On the contrary, it requires a huge work:

The promise of artificial intelligence (AI) has permeated across the enterprise giving hopes of amping up automation, enriching insights, streamlining processes, augmenting workers, and in many ways making our lives as consumers, employees, and customers a whole lot better. Senior management salivates over the exponential gains AI is supposed to deliver to their business. Kumbayah […]
Another option is to integrate your own custom AI service. This approach is more complex, but gives you complete flexibility in terms of the machine learning algorithm, training, and model. For example, you could implement your own topic modeling and use algorithm such as LDA to find similar or relevant documents. A good approach is to expose your custom AI solution as a web service endpoint, and call the endpoint from the core bot logic. The web service could be hosted in App Service or in a cluster of VMs. Azure Machine Learning provides a number of services and libraries to assist you in training and deploying your models.
“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

[…] But how can simple code assimilate something as complex as speech in only the span of a handful of years? It took humans hundreds of generations to identify, compose and collate the English language. Chatbots have a one up on humans, because of the way they dissect the vast data given to them. Now that we have a grip on the basics, we’ll understand how chatbots work in the next series. […]
Jabberwacky learns new responses and context based on real-time user interactions, rather than being driven from a static database. Some more recent chatbots also combine real-time learning with evolutionary algorithms that optimise their ability to communicate based on each conversation held. Still, there is currently no general purpose conversational artificial intelligence, and some software developers focus on the practical aspect, information retrieval.