Templates Overview

APPLIES TO: Composer v2.x

In order to simplify the process of getting starting with development of your own conversational experiences, we now provide a set of templates upon which you can build your own conversational experience.

The goal of these templates are to provide common conversational capabilities across a range of popular scenarios which simplify the act of getting started and enable you to focus instead on your own unique conversational capabilities through building on the foundation of a template. An empty bot provides only a few capabilities and each template builds on this to offer increasing capabilities.

Our work with the Virtual Assistant solution accelerator has been incorporated directly into Bot Framework Composer and these templates. Key Virtual Assistant capabilities have been infused directly into the Bot Framework SDK and across all templates and packages enabling easier composition to better suit customer needs.

Template step

The choice of template purely represents the starting point for your experience; once created, you can then customize and extend as needed. If you choose an Empty bot as your starting point, then capabilities of other templates can be added as your requirements evolve in the future. Conversational capabilities added to your project by the template can and should be customized further to suit your needs; for example, tailoring the LG responses will be highly recommended in support of your experience. Any provided capabilities can be also be removed if not needed.

We have selected the first set of templates based on our learnings with customers and partners to date and will seek to further develop these templates and consider additional templates based on feedback.

Templates

The templates and the capabilities they provide are covered in the table below. Assistant type experiences are more sophisticated conversational experiences that have many capabilities available to end users and offer a mix of proactive and reactive experiences to end users versus FAQ or single task oriented bots.

Template Description Conversational Capabilities Required Infrastructure
Empty Bot A foundational Bot template which provides a basic greeting to new users and unknown intent handling to catch questions the Bot cannot answer.
  • Greeting new and returning users
  • Unknown question handling
  • None
    Core Bot with Language Building on the Empty Bot capabilities, this template introduces NLU capabilities and provides Help and Cancel utility capabilities.
  • Greeting new and returning users
  • Unknown question handling
  • Asking for Help
  • Cancelling a dialog
  • Language Cognitive Service
  • Core Bot with QnA Maker Building on the Empty Bot capabilities, this template introduces FAQ/Knowledgebase capabilities through QnAMaker. NLU capabilities can easily be enabled as needed.
  • Greeting new and returning users
  • Unknown question handling
  • QnAMaker Cognitive Service
  • Core Assistant Bot A foundational Assistant template (comparable to the previous Virtual Assistant template) which provides a wide range of core assistant capabilities including chit-chat, disambiguation and user feedback to support a more sophisticated conversational experience.
  • Greeting new and returning users
  • Bot Tour to introduce features to end users
  • Unknown question handling
  • Asking for Help
  • Cancelling a dialog
  • Disambiguation of NLU (intent) results
  • Submitting feedback about the bot
  • Error handling in conversations
  • Chit chat with QnA Maker (professional personality)
  • Language Cognitive Service
  • QnAMaker Cognitive Service
  • Enterprise Assistant Bot Builds on the Core Assistant Bot to provide a set of employee productivity capabilities covering Calendar and People scenarios often used for Enterprise Assistant scenarios.
  • Everything in Assistant Core
  • Orchestrator for Skill dispatch
  • Calendar (skill)
  • People (skill)
  • Language Cognitive Service
  • QnAMaker Cognitive Service
  • AD Application configured with required Graph scopes
  • Enterprise Calendar Bot Provides a rich set of calendar productivity capabilities enabling users to manage their calendar as part of a broader conversational experience. Capabilities include the ability, to create, change and retrieve events on your calendar, find when a group of people are available along with implementation of free-flowing, natural dialog design and advanced use of language generation. A set of Graph custom actions are also provided for calendar related scenarios. Support managing Office 365 calendars using Microsoft Graph. Start from an advanced template including dialogs, language understanding, and language generation
  • Language Cognitive Service
  • AD Application configured with required Graph scopes
  • Enterprise People Bot Provides a rich set of people search productivity capabilities enabling users to find people. Capabilities include the ability, to create, change and retrieve events on your calendar along with implementation of free-flowing, natural dialog design and advanced use of language generation.A set of Graph custom actions are also provided for calendar related scenarios. Support searching for Azure Active Directory users. Start from an advanced template including dialogs, language understanding, and language generation
  • Language Cognitive Service
  • AD Application configured with required Graph scopes
  • Empty Bot Template

    The Empty Bot template is a foundational template with few conversational capabilities provided out of the box. A bot created using this template will greet new users with a simple welcome message and has an unknown intent handler meaning questions not handled by the Bot will be responded to with a message conveying the Bot doesn't understand.

    Developers looking to start from the basics and build up capabilities gradually or needing a simpler bot experience should consider this template. More information

    Demo

    The demo below shows the key capabilities of a bot created using this template and includes an additional scenario demonstrating NLU entity extraction. Empty Bot Template Demo

    Core Bot with Language Template

    The Core Bot with Language template is a foundational template for NLU focused conversational experiences. It builds upon the Empty Bot capabilities by adding greeting for new and returning users, Help and Cancel utility intents along with Error handling. The LUIS recognizer is added automatically to provide the NLU capabilities and you'll be prompted to create or select an existing LUIS resource before starting the Bot for the first time.

    Developers looking to build bots that make use of NLU including entity extraction and slot-filling should consider this template. More information

    Demo

    The demo below shows the key capabilities of a bot created using this template and includes an additional scenario demonstrating NLU entity extraction. Core Bot with Language Demo

    Core Bot with QnAMaker Template

    The Core Bot with QnA template is a foundational template for QnA/FAQ focused conversational experiences. It builds upon the Empty Bot capabilities by adding the QnA recognizer by default and triggering the knowledgebase creation experience. You'll be prompted to create or select an existing QnAMaker resource before starting the Bot for the first time.

    Developers looking to build bots that focus on QnA/FAQ types of scenarios should consider this template. More information

    Demo

    The demo below shows the key capabilities of a bot created using this template along with a few example FAQ questions being answered. Core Bot with QnAMaker Demo

    Core Assistant Bot Template

    The Core Assistant template provides a foundational assistant-like conversational experience upon which you can build your own conversational experience. An assistant experience is typically more sophisticated with multiple capabilities being offered to end-users spanning both NLU and QNA type experiences. To support these more sophisticated experiences we provide a wider range of conversational capabilities out of the box:

    • Greeting new and returning users
    • Bot Tour to introduce features to end users
    • Unknown question handling
    • Asking for Help
    • Cancelling a dialog
    • Disambiguation of NLU (intent) results
    • Submitting feedback about the bot
    • Error handling in conversations
    • Repeat the previous question
    • Chit chat with QnA Maker (professional personality).

    You'll be prompted to create or select an existing LUIS and QnAMaker resource before starting the Bot for the first time.

    Developers looking to build more sophisticated conversational experiences with multiple capabilities including combining NLU and QnA should consider this template. More information

    Demo

    The demo below shows the key capabilities of a bot created using this template along with a few example personality chitchat questions being answered.

    Core Assistant Bot Demo

    Enterprise Templates

    The Enterprise templates provide a starting point for those interested in creating a virtual assistant for common enterprise scenarios. These templates demonstrate a common bot building architecture and high-quality pre-built conversational experiences through a root bot connected to multiple skills.