16.1 Copilot Studio & Generative AI across Power Platform
Key Takeaways
- Microsoft Copilot Studio (formerly Power Virtual Agents) is the unified graphical SaaS platform for creating conversational copilots, autonomous agents, and generative AI experiences across Microsoft Power Platform.
- Generative Answers allow copilots to synthesize natural language responses in real time from enterprise Knowledge Sources (public websites, SharePoint/OneDrive document libraries, uploaded files, and Dataverse tables) without authoring individual conversational dialog trees.
- Copilot Studio conversational architecture combines custom Topics (Trigger phrases, Question nodes, Message nodes, Condition nodes, Variable capture) with Generative Orchestration (dynamic chaining of plugins and actions).
- Copilots integrate bidirectionally with external enterprise systems via Actions and Plugins, including Power Platform Connectors, Power Automate Cloud Flows, HTTP REST requests, and Dataverse low-code plugins.
- Multi-channel publishing enables seamless copilot deployment across Microsoft Teams, Power Pages websites, standalone web apps, mobile applications, and Omnichannel for Customer Service with context-aware live agent handoff.
Copilot Studio & Generative AI across Power Platform
Conversational artificial intelligence and generative AI have revolutionized business application architecture. Within the Microsoft Power Platform ecosystem, Microsoft Copilot Studio (formerly Power Virtual Agents) serves as the centralized SaaS environment for authoring, customizing, governing, and deploying intelligent conversational copilots and automated AI agents. In addition to standalone copilot creation, generative AI capabilities powered by Azure OpenAI Service are infused natively across Power Apps (for rapid UI and data schema generation) and Power Automate (for natural language workflow synthesis). On the PL-200 exam, functional consultants must master Copilot Studio architecture, knowledge source grounding, topic and trigger design, connector and flow actions, security governance, and multi-channel deployment.
1. Microsoft Copilot Studio Architecture & Evolution
Microsoft Copilot Studio combines the visual, low-code conversation authoring capabilities of Power Virtual Agents with advanced generative AI orchestration and the extensible Microsoft Bot Framework runtime.
+-----------------------------------------------------------------------------------+
| MICROSOFT COPILOT STUDIO ARCHITECTURE |
| |
| +-----------------------------------------------------------------------------+ |
| | COPILOT STUDIO CORE ENGINE | |
| | | |
| | +---------------------------+ +-----------------------------+ | |
| | | TOPIC-BASED DIALOG | | GENERATIVE ANSWERS | | |
| | | - Trigger Phrases / NLP | | - Azure OpenAI Grounding | | |
| | | - Question & Entity Node | | - Dynamic Knowledge Search | | |
| | | - Message & Cards | | - Moderation Filtering | | |
| | | - Conditions & Logic | | - Multi-Source Synthesis | | |
| | +-------------+-------------+ +--------------+--------------+ | |
| +----------------|------------------------------------------|-----------------+ |
| v v |
| +-----------------------------------------------------------------------------+ |
| | ACTIONS, PLUGINS & EXTENSIBILITY | |
| | - Power Automate Cloud Flows - 1,100+ Power Platform Connectors | |
| | - HTTP REST Webhooks - Dataverse Low-Code Plugins / AI Prompts | |
| +---------------------------------------+-------------------------------------+ |
| | |
| v |
| +-----------------------------------------------------------------------------+ |
| | KNOWLEDGE SOURCES & GROUNDING | |
| | - Public Web URLs - SharePoint / OneDrive Document Libraries | |
| | - Uploaded Files (PDF, DOCX) - Microsoft Dataverse Tables | |
| +---------------------------------------+-------------------------------------+ |
| | |
| v |
| +-----------------------------------------------------------------------------+ |
| | MULTI-CHANNEL PUBLISHING | |
| | - Microsoft Teams - Power Pages Websites / Web Chat Widget | |
| | - Custom Mobile Applications - Omnichannel for Customer Service (Live) | |
| +-----------------------------------------------------------------------------+ |
+-----------------------------------------------------------------------------------+
Generative AI vs. Deterministic Topic Authoring
Historically, conversational bots required developers to manually anticipate every user utterance, create specific trigger phrases, and design rigid decision trees. Copilot Studio unifies two operational paradigms:
- Deterministic Topics: Ideal for transactional, high-governance business processes (such as processing a return, submitting an expense report, or updating a CRM record) where strict procedural steps, form validation, and exact branching logic are required.
- Generative Answers & Orchestration: Ideal for information discovery, policy inquiries, document Q&A, and conversational synthesis across unstructured and semi-structured enterprise knowledge bases.
| Capability | Deterministic Topics | Generative Answers |
|---|---|---|
| Trigger Mechanism | Intent matching via user trigger phrases | User query matched against knowledge indexes |
| Response Generation | Pre-scripted message nodes & Adaptive Cards | Synthesized natural language summary with citations |
| Maintenance Effort | High (must update dialog paths as rules change) | Low (indexes updated documents automatically) |
| Transactional Work | Excellent (precise inputs, validations, flows) | Information retrieval and contextual answering |
| Fallback Handling | Triggers system Fallback topic on low intent | Synthesizes response from knowledge before fallback |
2. Generative Answers & Knowledge Sources
Generative Answers allow Copilot Studio to retrieve information from indexed corporate assets, synthesize a concise, natural language response, and provide clickable citation links back to the original source.
+-----------------------------------------------------------------------------+
| GENERATIVE ANSWERS GROUNDING PIPELINE |
| |
| [USER QUERY] -> [1. QUERY ENHANCEMENT] -> [2. KNOWLEDGE RETRIEVAL] |
| "What is the Expands terms and Queries configured knowledge |
| policy on generates semantic indexes: |
| maternity search queries. - Public Web / Bing Search |
| leave?" - SharePoint / OneDrive Libs |
| - Uploaded PDF / DOCX Files |
| - Dataverse Knowledge Tables |
| | |
| v |
| [OUTPUT RESPONSE] <---- [4. MODERATION & CITATION] <-- [3. LLM SYNTHESIS] |
| Summarized answer with Applies content safety filters Synthesizes answer |
| source citations and and formats reference links. grounded strictly |
| feedback thumbs up/down. on retrieved text. |
+-----------------------------------------------------------------------------+
Supported Knowledge Source Types
1. Public Websites
- Consultants provide publicly accessible URLs (e.g.,
https://contoso.com/policies). - Bing search indexing crawls up to two levels of subpages from the specified root domain.
- Constraint: Pages must be publicly indexed by Bing; pages requiring login, behind authentication gates, or containing
noindexrobot tags cannot be parsed.
2. SharePoint and OneDrive Document Libraries
- Ground the copilot in corporate intranets, standard operating procedures, and technical documentation stored in Microsoft SharePoint Online or OneDrive for Business.
- Security Trimming: When a user chats with the copilot, the system enforces user-delegated authentication. If User A does not have SharePoint permission to view
Restricted_Salary_Guide.pdf, the copilot will not include information from that file in User A's response. - Supports
.pdf,.docx,.pptx,.txt, and.htmlfiles.
3. Uploaded Files
- Files uploaded directly into Copilot Studio are stored within the Dataverse environment storage.
- Individual file size limit is up to 512 MB, with aggregate storage governed by the environment's Dataverse file capacity.
- Best for self-contained policy handbooks, product manuals, and static FAQ documents that rarely change.
4. Microsoft Dataverse Tables
- Grounds conversational queries directly in structured and unstructured columns within Dataverse tables (e.g., Knowledge Article entity, Product catalog, Account notes).
- Utilizes Dataverse search relevance indexing to perform semantic vector search across table columns.
Content Moderation Levels
Copilot Studio allows administrators to tune the Content Moderation sensitivity for generative answers:
- High: Returns fewer responses, requiring an exceptionally strong semantic match between the query and source documents. Maximizes precision and eliminates hallucination risk.
- Medium (Default): Balanced threshold providing robust answering capabilities with high semantic relevance.
- Low: Returns responses for broader, loosely matched queries. Increases coverage but may synthesize answers from tangential content.
[!IMPORTANT] Exam Trap - Authentication for SharePoint Knowledge: When configuring SharePoint as a knowledge source, the copilot must be configured with user authentication (Authenticate with Microsoft / Azure Entra ID). Generative answers from SharePoint cannot function anonymously because Microsoft Entra permissions are required to trim search results based on the caller's identity.
3. Conversational Topics, Triggers & Node Types
Topics represent discrete conversational paths designed to handle specific customer intents or business tasks.
+-----------------------------------------------------------------------------+
| TOPIC CONVERSATIONAL CANVAS |
| |
| [TRIGGER PHRASES] |
| - "Order status" / "Where is my package?" / "Track delivery" |
| | |
| v |
| [QUESTION NODE] -> "Please provide your 8-digit Order Number." |
| - Entity: Prebuilt Number / Custom Regex (`ORD-[0-9]{5}`) |
| - Save Value As: `Topic.OrderNumber` (Variable) |
| | |
| v |
| [ACTION NODE] -> Call Power Automate Flow: 'FetchOrderStatus' |
| - Input: `Topic.OrderNumber` |
| - Output: `Topic.DeliveryDate`, `Topic.StatusDescription` |
| | |
| v |
| [CONDITION NODE] |
| ├─ If `Topic.StatusDescription` == "Shipped" |
| │ └─ [MESSAGE NODE]: "Your order is on the way! ETA: {DeliveryDate}" |
| └─ Else |
| └─ [REDIRECT NODE]: Transfer to 'Live Agent Escalation' Topic |
+-----------------------------------------------------------------------------+
Topic Types
- Custom Topics: Created by consultants to handle specific business transactions (e.g.,
Book Appointment,Submit Vacation Request,Check Order Status). - System Topics: Built-in default topics that govern conversational lifecycle events:
Conversation Start(Greeting when chat opens)Fallback(Triggered when user input matches no topic and generative answers find no knowledge match)Escalate(Triggered when user requests a human representative)End of Conversation(Customer satisfaction CSAT survey)
Conversational Node Types
- Trigger Phrases: 5 to 10 natural language phrases that train the Natural Language Understanding (NLU) model to recognize user intent.
- Question Nodes: Prompts the user for specific information. Uses Entities (prebuilt entities like City, Email, Date and Time, Person Name, Number or custom entities like closed Choice lists or Regular Expressions) to automatically extract slot-filling variables.
- Message Nodes: Displays text, hyperlinks, images, or structured Adaptive Cards containing interactive buttons and media.
- Condition Nodes: Implements logical branching (
If / Else If / Else) based on variable values, user responses, or flow outputs. - Set Variable Value Nodes: Sets or transforms variables using low-code Power Fx expressions (e.g.,
Set(Topic.DiscountedTotal, Topic.OriginalTotal * 0.9)). - Topic Management Nodes:
- Redirect: Hands off execution to another topic and returns control upon completion.
- End Conversation: Triggers CSAT survey or ends the session.
- Transfer Conversation: Escalates chat session to a live agent in Omnichannel for Customer Service.
Variable Scopes in Copilot Studio
- Topic Variables (
Topic.VarName): Scoped strictly to the active topic execution; cleared when the topic completes. - Global Variables (
Global.VarName): Retained across the entire user session across multiple topic redirects. - System Variables (
System.User.DisplayName,System.User.Id): Automatically populated by the authentication layer. - Environment Variables: Solution-aware configuration parameters referenced across ALM deployments.
4. Extending Copilots: Actions, Flows & Plugins
Copilots become enterprise automation engines by executing back-end actions and interacting with line-of-business systems.
+-----------------------------------------------------------------------------------+
| COPILOT ACTIONS & PLUGIN INTEGRATIONS |
| |
| +---------------------------+ +-----------------------------------+ |
| | CALL A FLOW | | POWER PLATFORM CONNECTORS | |
| | - Trigger: 'When Copilot | | - 1,100+ Prebuilt Connectors | |
| | calls a flow' | | - Direct connector execution | |
| | - Action: 'Return values | | - Dynamic Schema Discovery | |
| | to Copilot' | | - Premium & Custom Connectors | |
| +---------------------------+ +-----------------------------------+ |
| |
| +---------------------------+ +-----------------------------------+ |
| | HTTP REST CALLS | | AI PROMPTS & LOW-CODE PLUGINS | |
| | - Direct REST Endpoint | | - GPT Prompts grounded in Data | |
| | - Custom Webhooks | | - Dataverse Instant Plug-ins | |
| | - API Key / OAuth Auth | | - Solution-aware deployment | |
| +---------------------------+ +-----------------------------------+ |
+-----------------------------------------------------------------------------------+
Calling Power Automate Cloud Flows
- Flows designed for Copilot Studio must reside in the same Dataverse environment as the copilot and must be Solution-Aware.
- Trigger: Must use the dedicated When Power Virtual Agents / Copilot calls a flow trigger.
- Inputs: Define input schema parameters (String, Number, Boolean) that map to copilot variables.
- Execution: Flow executes enterprise logic (e.g., query SQL Server, create Dataverse row, call approval).
- Response: Must conclude with the Return value(s) to Power Virtual Agents / Copilot action to pass structured output variables back to the conversational canvas.
Power Platform Connector Actions & AI Plugins
- Copilot Studio can invoke Power Platform connectors directly as conversational Plugins / Actions.
- By enabling Dynamic Chaining (Generative Actions), the copilot can automatically select and chain appropriate connector actions based on user intent and conversational context, without requiring manually hardcoded decision nodes.
5. Publishing Channels & Security Governance
Once authoring is complete, copilots must be tested in the built-in test canvas and published to target channels.
+-----------------------------------------------------------------------------+
| COPILOT PUBLISHING CHANNELS |
| |
| INTERNAL / AUTHENTICATED: EXTERNAL / PUBLIC: |
| - Microsoft Teams App Store - Power Pages Portal |
| - Microsoft 365 Copilot Extensibility - Public HTML Embed Widget |
| - Dynamics 365 Model-Driven Apps - Custom Mobile App (SDK) |
| - Omnichannel for Customer Service - Demo Website (Testing) |
+-----------------------------------------------------------------------------+
Publishing Channels Overview
| Channel | Target Audience | Authentication Mechanism | Key Features |
|---|---|---|---|
| Microsoft Teams | Internal enterprise employees | Seamless Microsoft Entra ID SSO | Distribute via Teams App catalog; pin to sidebar. |
| Power Pages | External customers & partners | Anonymous or Web Role Authenticated | Embed via Power Pages Studio Copilot component. |
| Custom Website | Public web visitors | Iframe embed or Web Chat JS SDK | Lightweight embed code snippet for corporate websites. |
| Omnichannel | Support customers | Unified Routing / Contact Center | Escalates to human agents with full transcript transfer. |
| Mobile App | Consumer mobile users | Direct Line Speech / REST SDK | Embedded inside native iOS and Android applications. |
Authentication Configuration
- No Authentication: Enables anonymous public interactions on external websites (cannot access user-specific SharePoint documents or personal CRM data).
- Only in Teams and Power Apps: Automatically leverages the logged-in user's Microsoft 365 / Entra ID token.
- Manual (Any Channel): Configures an OAuth2 identity provider (Microsoft Entra ID, Google, Okta, Azure AD B2C) to prompt users with a sign-in card and security validation code.
6. Generative Copilot Features in Power Apps & Power Automate
Beyond authoring dedicated bots in Copilot Studio, Microsoft infuses generative AI maker and user controls across the platform:
Copilot in Power Apps
- Maker Experience: Describe a business process in natural language (e.g., "Create an IT asset checkout system with serial numbers, assigned employees, and return dates"). Copilot automatically generates the Dataverse table schema, sample data, and a responsive Canvas/Model-driven application.
- User Experience (Copilot Control): Makers can drop the Copilot Control directly onto Canvas screens or Model-driven forms. End-users can query the underlying data source in natural language (e.g., "Show me all overdue tickets assigned to Sarah"), and the control generates real-time answers and tabular summaries.
Copilot in Power Automate
- Describe it to build it: Makers type a natural language prompt (e.g., "When a new lead is created in Dataverse with estimated revenue over $50,000, post an adaptive card to the Sales Teams channel and send an email to the sales director"). Copilot generates the trigger, parameters, and action sequence.
- Flow Canvas Copilot: An interactive side panel that assists makers in creating complex WDL expressions, adding conditional branches, explaining error codes in run history, and refactoring actions.
An enterprise organization wants to deploy an internal Copilot Studio bot to Microsoft Teams to answer employee Human Resources questions. The HR policies are stored in a restricted Microsoft SharePoint Online document library where access is governed by departmental security groups. The consultant configures SharePoint as a knowledge source for Generative Answers. When testing, the bot must ensure employees only receive answers from documents they have direct permission to view in SharePoint. Which authentication configuration is required?
A functional consultant is authoring a custom topic in Copilot Studio for booking customer service appointments. The topic prompts the customer for their preferred appointment date and time. Which node configuration should the consultant use to extract and validate the date from the customer's natural language response (e.g., 'next Tuesday at 2 PM')?
A business process requires a Copilot Studio copilot to retrieve real-time account balance information from an external ERP database and display it to the user. The consultant decides to invoke a Power Automate cloud flow from an Action node within the topic. What architectural requirement must be satisfied for the cloud flow to communicate with the copilot?
A functional consultant needs to deploy a newly created customer support copilot to an external, publicly accessible Power Pages website so that anonymous prospective customers can ask general product questions. How should the consultant publish and integrate the copilot?