Topics in Copilot Studio

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.

Topics are the core building blocks of a copilot. Topics can be seen as the copilot competencies: they define how a conversation dialog plays out. Topics are discrete conversation paths that, when used together, allow for users to have a conversation that feels natural and flows appropriately.

To author topics, makers can:

Topic content

A topic can optionally have trigger phrases associated to it, and contains conversation nodes:

  • Trigger phrases are phrases, keywords, and questions that a user is likely to use, related to the topic. When a user says something to the copilot that is close to the configured trigger phrases, the matching topic gets triggered.
  • Conversation nodes can be seen as action steps and define what the topic should do once it's triggered (for example, ask questions, send a message, trigger a cloud flow, set variable values, or use conditions for branching logic).

Default topics

Tip

  • Any new copilot comes with a set of pre-created topics that make it readily operational with core capabilities.
  • Both custom and system topics are pre-created.

Custom topics

The generated custom topics offer fundamental conversational abilities, such as Greetings, Goodbye, Thank you, and Start Over, while the lesson topics serve as example topics for topic authors.

Important

  • Copilot authors can choose to disable or delete custom topics.
  • Any new topic is created as a custom topic.

System topics

Many system topics are also natively available and help manage specific conversation events.

Important

System topics can be disabled (with caution, as they can impact the copilot's behavior) but cannot be deleted.

System topic Description
Conversation Start Depending on the copilot client, this topic gets proactively started to initiate the conversation with the user. The copilot can greet users with messages, even before the users have started entering any input.
End of Conversation This topic is meant to be positioned at the end of the conversation with a copilot, so that the user can confirm if their query has been addressed or not, and fill out a satisfaction survey. This topic is important to measure a copilot's performance and act on it.
When this topic is reached, the session outcome is assumed to be resolved, unless the end-user explicitly doesn't confirm resolution.
Escalate The escalate topic is used to hand off the conversation to an external system, typically to a live agent (when configured – for example to Dynamics 365 Omnichannel for Customer Service). When this topic is reached, the session outcome is escalated.
Fallback This topic is triggered when copilot can't understand the user query and the query can’t be associated with confidence with any existing topic. It's useful to have a strategy to catch these exceptions and handle them in a graceful way (with more data sources or through an escalation path).
Multiple Topics Matched (also known as "did you mean") This topic is triggered when multiple topics can potentially address the user input and the copilot doesn't have sufficient confidence to trigger one over the others. When this type of topic is triggered, the user is presented with a list of potential matching topics and can choose the most appropriate one.
On Error The On Error topic informs end-users that an error has occurred. The message includes the error code, the conversation ID, and the error timestamp, which can be used later for debugging.
This topic can be customized to change the way errors are presented to the end-user and what should happen when an error occurs.
Reset conversation This topic resets the conversation by clearing all variable values and forcing the copilot to use the latest published content. It only triggers when redirected to, which is the default behavior with the Start Over topic.
Sign in This topic prompts end-users to sign in when user authentication is enabled. It triggers at the beginning of the conversation when users are required to sign in, or when the conversation reaches a node that uses authentication variables.