Photo by Raychan on Unsplash

Getting Started With Microsoft Power Virtual Agent

Taking You From Basic Principles To Writing Your First Chatbot

Cobus Greyling
4 min readDec 9, 2019



With the proliferation of chatbots, there are many tools becoming available. Most of these tools have the same basic principles underpinning the conversational interface. The challenge often lies with getting the stack installed and running in your environment.

Microsoft Power Virtual Agent is a powerful package allowing you to create a chatbot aslo known as conversational experience in a very intuitive manner and easing you into the whole idea of natural language understanding. For an overview of Microsoft Power Virtual Agent, have a look here.

Trigger Phrases

Within Microsoft Power Virtual Agent, you can create different bots, and each of these bots will have its own environment. Within this environment there will be different topics. Then, when you start your conversation with your new bot, the bot will check your utterance against the trigger phrases for each Topic. A topic can be seen as a customer journey or a dialog subject.

Example of Three Trigger Phrases for the Topic

A topic has trigger phrases — these are phrases, keywords, or questions that a user is likely to type that is related to a specific issue — and conversation nodes — these are what you use to define how a bot should respond and what it should do.

The AI uses natural language understanding to parse what a customer actually types and find the most appropriate trigger phrase or node.

The matching of the customer utterance to an appropriate trigger phrase is quite good.

A trigger phrase is NLU in its simplest from; intent discovery light; if you like. Obviously within the authoring canvas


As per the two examples, there is an entity we need to capture called Usage Type.

Unstructured Input without Buttons for question “What Kind of user are you?”

This usage type can be one of three options, Home User, Gamer or Business User.

These options can be presented to the user in a structured way, by way of buttons.

Or the options can be gleaned from the unstructured input from a user.

The user’s entire utterance or dialog entry can be saved. This is useful if you are levering LUIS for more complex, compound entities.

Within Entities, the Smart matching option can be toggled.

The Smart matching option enables the bot’s understanding of natural language.

This can help match misspellings, grammar variations, and words with similar meanings.

If the bot isn’t matching enough related words, enhance the bot’s understanding further by adding synonyms to your list items

Unstructured Input without Buttons for question “What Kind of user are you?”

Web Search

There is also an option to leverage existing content that already exists on web pages when creating a Power Virtual Agents bot. This is useful if you already have help or support content, such as FAQ pages or supports sites. This functionality is very much the same as the QnA maker functionality which has been around for a while.

Rather than having to design a whole new topic architecture, plan and write the content, copy it manually into individual topics, and then configure the conversation flow, you can utilize AI-assisted authoring to automatically extract and insert relevant content from existing web content into your bots.

Mediums Also Known As Channels

Different channels necessitates different end-user experiences.

Channel Experience Reference Table

The table above shows a high-level overview of the experiences for each channel. You can take the channel experiences into account when optimizing your bot content for specific channels.

Build Your Own Echo Chatbot

In the short video tutorial below, you can see the process of creating an echo bot. This chatbot will echo back to you whatever you have entered. The tutorial takes you from the very beginning of creating a bot and then adding the subsequent topics and invocation phrase.

Start To End ~ Create A Simple Echo Bot


Creating a chatbot can be daunting, especially if you need to create virtual environments and install a stack of software. The Power Virtual Agent environment makes it easy to to get started and get a grasp of basic chatbot principles and terminology.

Most of the fundamentals you learn here are relevant to most all chatbot development environments.

Photo by Alex Jones on Unsplash



Cobus Greyling

I explore and write about all things at the intersection of AI & language; LLMs/NLP/NLU, Chat/Voicebots, CCAI.