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.

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.
WeChat was created by Chinese holding company Tencent three years ago. The product was created by a special projects team within Tencent (who also owns the dominant desktop messaging software in China, QQ) under the mandate of creating a completely new mobile-first messaging experience for the Chinese market. In three short years, WeChat has exploded in popularity and has become the dominant mobile messaging platform in China, with approximately 700M monthly active users (MAUs).
If a text-sending algorithm can pass itself off as a human instead of a chatbot, its message would be more credible. Therefore, human-seeming chatbots with well-crafted online identities could start scattering fake news that seem plausible, for instance making false claims during a presidential election. With enough chatbots, it might be even possible to achieve artificial social proof.[58][59]
“I’ve seen a lot of hyperbole around bots as the new apps, but I don’t know if I believe that,” said Prashant Sridharan, Twitter’s global director of developer relations. “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.”
Advertiser Disclosure: Some of the products that appear on this site are from companies from which QuinStreet receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. QuinStreet does not include all companies or all types of products available in the marketplace.

If AI struggles with fourth-grade science question answering, should AI be expected to hold an adult-level, open-ended chit-chat about politics, entertainment, and weather? It is thus encouraging to see that Microsoft’s Satya Nadella did not give up on Tay after its debacle, and Amazon’s Jeff Bezos is sponsoring an Alexa social chatbot competition. I love this below quote from Jeff:
2010 SIRI: Though Siri is considered colloquially to be a virtual assistant rather than a conversational bot, it was built off the same technologies and paved the way for all later AI bots and PAs. Siri is an intelligent personal assistant with a natural language UI to respond to questions and perform web-based service requests. Siri was part of apples IOS.
On the other hand, early adoption can be somewhat of a curse. In 2011, many companies and individuals, myself included, invested a lot of time and money into Google+, dubbed to be bigger than Facebook at the time. They acquired over 10 million new users within the first two weeks of launch and things were looking positive. Many companies doubled-down on growing a community within the platform, hopeful of using it as a new and growing acquisition channel, but things didn't exactly pan out that way.

If you ask any marketing expert, customer engagement is simply about talking to the customer and reeling them in when the time’s right. This means being there for the user whenever they look for you throughout their lifecycle and therein lies the trick: How can you be sure you’re there at all times and especially when it matters most to the customer?

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.

Once you’ve determined these factors, you can develop the front-end web app or microservice. You might decide to integrate a chatbot into a customer support website where a customer clicks on an icon that immediately triggers a chatbot conversation. You could also integrate a chatbot into another communication channel, whether it’s Slack or Facebook Messenger. Building a “Slackbot,” for example, gives your users another way to get help or find information within a familiar interface.
Creating a comprehensive conversational flow chart will feel like the greatest hurdle of the process, but know it's just the beginning. It's the commitment to tweaking and improving in the months and years following that makes a great bot. As Clara de Soto, cofounder of Reply.ai, told VentureBeat, "You're never just 'building a bot' so much as launching a 'conversational strategy' — one that's constantly evolving and being optimized based on how users are actually interacting with it."

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.
One of the more talked about integrations has been Taco Bell‘s announcement that it is working on a Slackbot (appropriately named Tacobot) which will not only take your Gordita Supreme order but will do it with the same “witty personality you’d expect from Taco Bell.” Consumer demand for such a service remains to be seen, but it hints at the potential for brands to leverage Slack’s platform and growing audience.
Closed domain chatbots focus on a specific knowledge domain, and these bots may fail to answer questions in other knowledge domains. For example, a restaurant booking conversational bot will be able to take your reservation, but may not respond to a question about the price of an air ticket. A user could hypothetically attempt to take the conversation elsewhere, however, closed domain chatbots are not required, nor often programmed to handle such cases.

If you are looking for another paid platform, Beep Boop may be your next stop. It is a hosting platform that is designed for developers looking to make apps for Facebook Messenger and Slack specifically. First, set up your code using Github, the popular version control repository and Internet hosting service, then input it into the Beep Boop platform to link it with your Facebook Messenger or Slack application. The bots will then be able to interact with your customers with real-time chat and messaging.
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.”
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.
“I’ve seen a lot of hyperbole around bots as the new apps, but I don’t know if I believe that,” said Prashant Sridharan, Twitter’s global director of developer relations. “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.”
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.
Closed domain chatbots focus on a specific knowledge domain, and these bots may fail to answer questions in other knowledge domains. For example, a restaurant booking conversational bot will be able to take your reservation, but may not respond to a question about the price of an air ticket. A user could hypothetically attempt to take the conversation elsewhere, however, closed domain chatbots are not required, nor often programmed to handle such cases.
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.
Reduce costs: The potential to reduce costs is one of the clearest benefits of using a chatbot. A chatbot can provide a new first line of support, supplement support during peak periods or offer an additional support option. In all of these cases, employing a chatbot can help reduce the number of users who need to speak with a human. You can avoid scaling up your staff or offering human support around the clock.
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.
×