Defining copilot topics

Important

Power Virtual Agents capabilities and features are now part of Microsoft Copilot Studio following significant investments in generative AI and enhanced integrations across Microsoft Copilot.

Some articles and screenshots may refer to Power Virtual Agents while we update documentation and training content.

Defining the best topics for your copilot requires an understanding of the questions users might ask or the tasks they try to accomplish, and the kind of information and automation you need to provide.

For example, a retail copilot might start by asking the user to choose from four things they want to do: find a store, place an order, check the status of an order, or return a purchased product. Their answer could lead them into one of four topics, each with its own topic dialog.

An initial set of sources for this information include:

  • Any existing frequently asked questions (FAQs) or knowledge bases (KB).
  • Common subjects raised by your employees or customers in internal or customer service scenarios. If you’re building a customer service copilot, talk with existing service representatives to learn what the most common questions are and the order in which they’re typically asked.

Different types of topics

Typically, copilot users have a specific question or problem they want to address or an issue they want resolved (their "task"). The types of tasks undertaken by copilot users (and, therefore, the types of copilot topics you need to create) fit into three categories:

  1. Informational: for example, "What is…?", "When will…?", "Why…?"

  2. Task completion: "I want to…", "How do I…?"

  3. Troubleshooting: "Something isn’t working…", "I got an error message…"

You might also need to create copilot topics to handle ambiguous user questions, such as "I need help" or "shopping." These topics would ask the copilot user for clarification, so they can be routed to the correct topic.

Topic design process

  1. Identify the topic

    • Choose topics copilot users ask about.
    • Start with high-impact topics.
    • Think about topics from an end-user's point of view. Keep in mind that they might be less familiar or knowledgeable about an area than you are.
  2. List all scenarios

    • List all possible scenarios.
    • Categorize scenarios: informational, task completion, and troubleshooting.
    • Hierarchize topics: what are the initial questions a user asks?
  3. Design a high-level conversation tree

    • Draw the conversation tree.
    • Define the hierarchy of questions asked inside each topic.
    • Define the fewest number of questions to understand the situation and provide the right solution.
  4. Validate and iterate on the design

    • Read the dialog out loud before publishing to help identify if there are problems with the tone or words.
    • Get analytics and read session transcripts for further optimization.
    • Continuously iterate on and refine your copilot topics by observing your copilot users' interactions with the copilot after each authoring iteration.

Important

  • Don’t just replicate what your website or app can already do–your customers likely are familiar with your website or app and can accomplish common tasks themselves without needing to interact with a copilot.
  • Focus on creating topics for issues or scenarios that generate a high volume of chats or calls first. Work on the longer tail of other, less-critical issues over a period of time.
  • Be as thorough as possible in your design and consider all the potential scenarios that your users might ask or need help with.

Plan for both single-turn and multi-turn interactions

For simple interactions, you create single-turn conversations with just one question and one answer. But more substantive topics require a multi-turn conversation with multiple back-and-forth interactions between the user and your copilot.

For instance, if a user asks a retail copilot whether there are any stores nearby, the copilot might respond with a question to narrow down the possible responses. These responses might be "What city do you live in?" or "What is your postal code?" The user’s response determines the copilot’s next response in the conversation.

Use native generative AI capabilities

When designing a copilot, you might not be able to anticipate all the types of questions your copilot users ask. To help mitigate this, Copilot Studio incorporates a powerful AI-powered capability that uses the latest advancements in natural language understanding (NLU) models.

When you enable the Boost conversations option for your copilot and link your copilot to a publicly available, Bing-indexed website, your copilot can provide automatically generated, conversationally friendly, plain language responses, without the need for you to create topics for every eventuality or "edge-case."

Offload large volumes of single-turn question and answer pairs

Copilot Studio limits a copilot to 1,000 topics.

If you have large numbers of FAQs or knowledgebases, you can avoid creating one topic for each question and answer pair by offloading them outside of Copilot Studio topics, while offering a single user experience in Copilot Studio by using the Fallback topic.

Tip