Azure Bot Service enables you to build intelligent, enterprise-grade bots with complete ownership and control of your data. Begin with a simple Q&A bot or build a sophisticated virtual assistant.
In this Conversational AI UX guidance you'll find what are the best practices to build conversational AI for your bot.
First of all here is list of Components of a conversational AI experience
And all necessary info for a Bot's life cycle.
Design | Build | Test | Publish | Connnect | Evaluate |
---|---|---|---|---|---|
This document is still under development. NLP, QnA, Search and Authentication parts will be updated.
Send a message to your user once they join the conversation.
UI Screenshot | Code Samples |
---|---|
C# sample: Welcome Message JS sample: Welcome Message |
It's always great to give human-like impression, typing experince from bot.
UI Screenshot | Code Samples |
---|---|
C# sample: Send Typing Activity |
A conversation between a bot and a user often involves asking (prompting) the user for information, parsing the user's response, and then acting on that information.
Your bot should track the context of a conversation, so that it can manage its behavior and remember answers to previous questions. A bot's state is information it tracks to respond appropriately to incoming messages.
Asks for general text input.
UI Screenshot | Code Samples |
---|---|
C# sample: Simple Prompt |
Asks for a number.
UI Screenshot | Code Samples |
---|---|
C# sample: Multi-Turn Prompt |
Asks for a date-time.
UI Screenshot | Code Samples |
---|---|
C# sample: Multi-Turn Prompt |
Asks for a choice from a set of options.
UI Screenshot | Code Samples |
---|---|
C# sample: Digital Travel Assistant |
Asks for a confirmation.
UI Screenshot | Code Samples |
---|---|
C# sample: Multi-Turn Prompt |
Asks for one or more attachments, such as a document or image.
UI Screenshot | Code Samples |
---|---|
C# sample: Simple Prompt |
UI Screenshot | Code Samples |
---|---|
C# sample: Multi-Turn Prompt |
UI Screenshot | Code Samples |
---|---|
C# sample: Validation Prompt |
UI Screenshot | Code Samples |
---|---|
C# sample: Suggested Action |
An open card exchange format rendered as a JSON object. Typically used for cross-channel deployment of cards. Cards adapt to the look and feel of each host channel.
UI Screenshot | Code Samples |
---|---|
C# sample: Using Adaptive Cards |
A card that can play animated GIFs or short videos.
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards Code Snippet: HeroCard |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards Code Snippet: ThumbnailCard |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
UI Screenshot | Code Samples |
---|---|
C# sample: Using Cards |
Designed to identify valuable information in conversations, LUIS interprets user goals (intents) and distills valuable information from sentences (entities), for a high quality, nuanced language model. LUIS integrates seamlessly with the Azure Bot Service, making it easy to create a sophisticated bot.
Build, train and publish a simple question and answer bot based on FAQ URLs, structured documents, product manuals or editorial content in minutes.
Azure Search is a search-as-a-service cloud solution that gives developers APIs and tools for adding a rich search experience over private, heterogenous content in web, mobile, and enterprise applications. Query execution is over a user-defined index.
Search Experience | Code Sample |
---|---|
C# sample: Azure Search with Bot Framework |
New bot authentication capabilities in Azure Bot Service, providing features to make it easier to develop a bot that authenticates users to various identity providers such as Azure AD (Azure Active Directory), GitHub, Uber, and so on. These updates also take steps towards an improved user experience by eliminating the magic code verification for some clients.
UI Screenshot | Code Samples |
---|---|
C# sample: Bot Authentication |
Dialogs are a central concept in the SDK, and provide a useful way to manage a conversation with the user. Dialogs are structures in your bot that act like functions in your bot's program; each dialog is designed to perform a specific task, in a specific order. You can specify the order of individual dialogs to guide the conversation, and invoke them in different ways - sometimes in response to a user, sometimes in response to some outside stimuli, or from other dialogs.
Guided Conversation | Code Sample |
---|---|
C# sample: Digital Travel Assistant |
Guided Conversation | Code Sample |
---|---|
C# sample: Digital Travel Assistant |
Dynamic Conversations with multiple inputs managed in WaterFall Dialogs to provide only needed prompts to retrieve information. On the left side , a question including "number of guests", "Region" , "Check-in Date" and "Check-out Date", then agent asks only needed questions. On the right side, the question includes only "number of guests" and "Region" and then agent ask questions to complete them.
LUIS with 4 entities | LUIS with 2 entities | Code Sample |
---|---|---|
C# sample: Digital Travel Assistant |
Nested Conversation Dialogs | Code Sample |
---|---|
C# sample: MenuBot C# JS sample: MenuBot JS |
Enjoy.