Data Engineer BI Developer Data Scientist Platform Owner โ This guide explains how AI and Copilot show up across Microsoft Fabric, what prerequisites matter, where the features help most, and which governance controls you should put in place before scaling usage.
AI in Fabric Overview
Fabric embeds AI across the analytics lifecycle โ from authoring and modeling to querying, automation, and conversational access to trusted business data.
In Microsoft Fabric, AI is not a separate sidecar experience bolted onto the platform. It is woven into the tools that teams already use: Power BI for semantic modeling and reporting, notebooks for code authoring, pipelines for orchestration, SQL experiences for warehousing, and Data Agents for natural-language question answering over governed data.
It helps to think about Fabric AI in two categories:
- Copilot: the interactive AI assistant that helps authors generate code, visuals, queries, summaries, and pipeline logic.
- AI features: built-in platform capabilities such as Data Agents that let you operationalize AI inside analytics workflows, plus authoring aids like Skills for Fabric.
Treat AI in Fabric as an accelerator for expert work, not a replacement for architecture, data modeling, governance, or testing. The best results come from strong semantic models, clear naming, good descriptions, and tightly scoped permissions.
๐ Copilot for Power BI
Natural language to visuals, narrative summaries, report page suggestions, and DAX assistance over semantic models.
๐ Copilot for Notebooks
Generate and explain PySpark or Python code, troubleshoot errors, and iterate faster inside notebook chat.
๐ Copilot for Data Pipelines
Describe an orchestration flow in plain English and get a starting pipeline, activity suggestions, and expression help.
๐ง Copilot for SQL
Translate business questions into T-SQL, explain existing queries, and refine logic in warehouse authoring experiences.
๐ค Data Agents
Conversational agents that reason over curated Fabric data sources and return grounded answers for business users.
๐งฉ Skills for Fabric
Reusable SKILL.md instruction files that give AI coding tools Fabric-specific guidance. Authoring aid, not a runtime item.
Copilot for Power BI
Use natural language to move faster from semantic model to insight, report draft, and executive-ready narrative.
What Copilot helps with
๐ฃ๏ธ Natural language to visuals
Ask for a chart, KPI, or comparison in business language and Copilot proposes visuals based on your model.
๐งฑ Report page generation
Copilot can draft an entire report page layout with relevant visuals, titles, and narrative framing for a scenario.
๐ Narrative summaries
Generate executive summaries that call out trends, anomalies, and key contributors in the current filter context.
โ DAX generation
Get help creating or refining measures when you can describe the business logic more easily than writing DAX from scratch.
Copilot for Power BI requires a paid Fabric capacity (F2 or higher) or equivalent Premium entitlement, plus the relevant Copilot tenant/admin settings enabled. Availability and exact controls can evolve, so verify current requirements in Microsoft Learn before rollout.
Prepare your data for AI
Copilot quality is strongly tied to semantic model quality. Keep this page focused on the essentials, then use the full guide in Best Practices โ Preparing Data for AI for implementation detail.
- AI data schema: expose the most meaningful fields and hide noisy internal columns.
- AI instructions: add business context, preferred measures, terminology, and analysis rules.
- Verified answers: curate trusted responses for common executive or operational questions.
Prompts that usually work well
| Scenario | Prompt | Why it works |
|---|---|---|
| Executive overview | Build a page that explains revenue, margin, and YoY growth for the last 12 months. | Clear metrics + time window + business outcome. |
| Visual exploration | Show a clustered bar chart of sales by product category with a trend line for profit margin. | Specifies chart type, dimensions, and measures. |
| DAX assistance | Create a measure for year-to-date sales that respects the fiscal calendar starting in July. | Defines calculation goal and fiscal nuance. |
| Narrative summary | Summarize the key drivers behind the drop in gross margin this quarter. | Targets a specific business question, not a generic recap. |
| Follow-up analysis | Compare the Northeast region to the company average and call out the biggest variance drivers. | Gives Copilot a comparison target and output expectation. |
Limitations to keep in mind
- Copilot does not transform or repair your underlying data; it works with the model it is given.
- Results are better when measures, hierarchies, and descriptions are well defined.
- Generic or ambiguous models often produce vague visuals or incorrect metric choices.
- Generated output should be reviewed by a report author before publication.
๐ Learn More
Copilot overview โ Prepare data for AI โ๐ See Also
Best Practices โ Preparing Data for AI โCopilot for Notebooks
Accelerate Spark and Python development by using Copilot as a coding partner inside Fabric notebooks.
Notebook Copilot is especially useful when you know the transformation you want but do not want to spend time writing boilerplate PySpark, fixing syntax, or documenting every step by hand. It can work across authoring, explanation, and debugging loops.
โก Code generation
Generate PySpark or Python cells for ingestion, joins, aggregations, filtering, schema inspection, and Delta writes.
๐ Explanation & documentation
Ask Copilot to explain an existing cell, document a notebook section, or rewrite rough code into something more maintainable.
๐ฉบ Error analysis
Paste an exception or point Copilot at a failed cell to get likely root causes and suggested fixes.
๐ฌ Iterative chat
Use the chat panel to refine a solution step by step instead of trying to generate an entire notebook in one prompt.
Best practices for better notebook results
- Use clear variable and dataframe names: names like
sales_dfandcustomer_dimprovide far more context thandf1andtmp. - Break work into logical cells: ingestion, cleansing, enrichment, and publish steps are easier for Copilot to understand than one monolithic script.
- Show intent in markdown cells: short headings and notes help both humans and Copilot follow the flow.
- Ask for one transformation at a time: iterative prompting usually produces better code than a giant multi-step prompt.
- Validate generated code against your runtime and libraries: Copilot can still suggest patterns that need adaptation.
Context awareness and cell behavior
Copilot can use the surrounding notebook context โ prior cells, variable names, dataframe references, and markdown explanations โ to generate more relevant code. It is particularly effective when your notebook has a clean narrative structure.
It can also help with IPython magic commands and notebook-specific behavior, such as working with %run, switching between Python and Spark SQL contexts, or explaining how a cell's output feeds the next step. Still, you should verify that generated magic commands and session assumptions match your Fabric runtime.
Generate PySpark code to read the bronze_orders Delta table, filter to the current month, and aggregate revenue by sales region. Explain why this merge statement fails with a duplicate key error. Add markdown documentation for this notebook section in a concise, team-friendly style. Refactor this cell so it writes a partitioned Delta table and includes basic error handling.
Copilot for Data Pipelines
Turn orchestration ideas into a pipeline draft faster, then use Copilot to fill in expressions and common control-flow logic.
Where it helps most
- Natural language to pipeline creation: describe the source, transformation step, and destination to scaffold a pipeline.
- Activity suggestions: get recommendations for copy, notebook, dataflow, wait, condition, loop, and notification patterns.
- Expression generation: generate dynamic content for file paths, parameters, dates, branching logic, and output references.
๐ Ingestion starter flows
Useful for building common patterns such as copy from source to lakehouse, then trigger a notebook or stored procedure.
๐ Control flow
Helpful for If Condition, ForEach, parameter-driven branching, and dependency chains that are tedious to wire manually.
๐งฎ Dynamic content
One of the highest-value uses: generating expressions for dates, filenames, workspace parameters, and activity outputs.
Example prompts
Create a pipeline that copies daily CSV files from ADLS into a bronze lakehouse folder and then runs a notebook to convert them to Delta. Generate a dynamic expression that writes files to /raw/year=YYYY/month=MM/day=DD. Suggest activities to retry a failed API extract, log the error, and send an alert if the retry count is exceeded.
Current limitations
- Copilot is best used to create a starting point, not a fully production-hardened orchestration pattern.
- You still need to validate connection references, parameters, credentials, and environment-specific settings.
- Complex branching, custom expressions, and enterprise error handling usually need manual refinement.
- Generated logic should be tested in realistic failure scenarios before release.
Copilot for SQL / Data Warehouse
Use natural language to speed up T-SQL authoring and make warehouse development more approachable to non-SQL specialists.
Copilot for SQL is valuable when analysts or engineers understand the question they want answered but need help turning that requirement into valid T-SQL. It can also help explain legacy code, generate comments, and suggest improvements when a query is hard to maintain.
๐งพ Query generation
Describe the dataset, filters, and aggregation you need, and Copilot can draft a T-SQL query or view definition.
๐งญ Schema-aware suggestions
When object names and relationships are clear, Copilot can produce more grounded joins, filters, and grouping logic.
๐ Optimization ideas
Ask for recommendations around predicate pushdown, join shape, window functions, or simplified logic to improve readability and performance.
๐ฌ Explanation & comments
Useful for documenting stored procedures, explaining CTE-heavy queries, and making warehouse logic easier for teammates to support.
Where it works
These capabilities are most relevant in Fabric Warehouse and the SQL analytics endpoint, where teams author and review SQL over governed Fabric data.
Prompt patterns that work well
- Write a T-SQL query that returns the top 10 customers by net revenue in the last rolling 90 days.
- Explain what this query is doing and identify why it may return duplicate rows.
- Refactor this nested query into CTEs with comments for each step.
- Suggest a more efficient way to calculate monthly active users by product line.
Copilot can accelerate authoring, but it does not understand every business rule automatically. Always verify join logic, cardinality assumptions, filtering semantics, and performance characteristics before promoting code.
Fabric Data Agents
Configurable, read-only conversational analytics over governed OneLake data — and the tuning layers that decide whether answers are trustworthy.
The core data agent on the standard runtime is documented as generally available. However, Microsoft's Copilot/AI feature-state table still lists the Data Science row that contains "Data agent" as Preview, and many of the most interesting capabilities below (Copilot Studio, Foundry, M365 Copilot, SDK, MCP, service principal auth, visuals, code interpreter, schema object descriptions) each carry their own preview banner. Check the status of the specific capability you plan to depend on rather than the umbrella feature.
What a Data Agent actually is
A Fabric data agent is a first-class Fabric item (created via + New Item → Fabric data agent) that turns governed OneLake data into a plain-English Q&A experience. Behind the scenes it uses a Microsoft-managed Azure OpenAI Assistant plus natural-language-to-query engines — NL2SQL, NL2DAX, NL2KQL, NL2GQL and NL2Ontology — to translate a question into a query against the sources you selected.
Data agents maintain read-only connections and generate only read queries. They do not create, update, or delete data, and they don't trigger notebooks, anomaly detection jobs, or other action workflows. If you need an agent that acts, that's an Operations Agent, not a Data Agent.
The distinction versus Copilot matters: Copilot is preconfigured and assists you inside a Fabric tool. A data agent is a standalone artifact you configure, publish, share, version in Git, and promote through deployment pipelines.
Supported data sources
An agent supports up to five data sources in any combination — five semantic models, or a mix of two semantic models, a lakehouse, and a KQL database. The current source catalog is broader than the older concept pages suggest:
| Category | Artifacts | Query language | Schema selection |
|---|---|---|---|
| SQL | Lakehouse, Warehouse, SQL Database, Mirrored Databases (Azure SQL, Cosmos DB, Snowflake) | T-SQL | Tables, views, functions |
| Eventhouse | Eventhouse KQL Database | KQL | Tables, materialized views, functions, shortcuts |
| Semantic Model | Power BI semantic models | DAX | Tables / measures |
| Graph Preview | Graph model | GQL | Not supported |
| Ontology Preview | Fabric Ontology | Ontology-native | Not supported |
| Azure AI Search Preview | Azure AI Search index (unstructured: PDFs, text) | Natural language + search | n/a |
Shortcut-backed and externally shared tables are queryable in place — no copying data into the workspace, and OneLake external data sharing needs no extra auth configuration. This makes shortcuts a clean way to expose cross-domain data to an agent.
The four tuning layers — where answer quality is actually won
Most disappointing data agents are under-configured, not under-powered. Configuration is a layered model, and knowing which layer to fix is the core operating skill:
| Your goal | Use this layer | Notes |
|---|---|---|
| Limit what the agent can query at all | Schema selection | Cheapest, highest-leverage control. Fewer objects = less ambiguity |
| Explain what one table or column means | Schema object descriptions Preview | Requires the preview runtime |
| Define business rules, joins, grain across objects | Data source instructions | Applied when the agent routes to that source |
| Demonstrate the query pattern for a question | Example queries | Few-shot learning; validated against schema |
| Steer routing, terminology, and response style | Agent instructions | Agent-level; up to 15,000 characters |
Microsoft publishes a recommended structure for agent instructions — use these headings verbatim as a starting template:
## Objective
What this agent is for, and who asks it questions.
## Data sources
Which source answers which kind of question (this drives routing).
## Key terminology
Acronyms, KPI definitions, what "active customer" or "MAU" means.
## Response guidelines
Tone, level of detail, when to show numbers vs. narrative.
## Handling common topics
Recurring question shapes and how to treat them.
And for data source instructions, which feed the NL2X engine directly:
## General knowledge
Authoritative tables, default filters, fiscal calendar, time zone rules.
## Table descriptions
Grain of each table (one row per order? per order line? per day?),
dedup rules, and join keys.
## When asked about
Map user terminology to stored values, e.g. "region" means
DimGeography.RegionName, and status "complete" means StatusCode = 'AP'.
Microsoft's guidance is explicit: state what the agent should do. Use "Join EmployeeStatusFact to EmployeeDim on EmployeeID" rather than "Avoid joining employee tables incorrectly". Negative instructions give the query engine nothing to act on.
Example queries — the few-shot layer
Example question/query pairs are few-shot learning. At question time the agent retrieves the most relevant examples by vector similarity and passes the top few into the prompt (docs say three in one place and four in another). Key mechanics worth knowing:
- Hard cap of 100 example queries per data source.
- Every example is validated against the live schema — examples that fail validation are silently never used. A stale example is a dead example.
- Supported on Lakehouse, Warehouse, Eventhouse KQL, and Graph (preview). Not supported on semantic models or ontology.
- For semantic models, the equivalent tuning surface is Verified Answers in Power BI's Prep for AI, not example queries.
- For KQL, NL2KQL can use user-defined functions in your databases — include examples that call your UDFs.
- Inline comments inside the query are used as guidance, e.g.
-- substitute customer_id here.
The Python SDK can grade your few-shot library. evaluate_few_shots() returns a success_rate plus success and failure cases, and a conflict detector flags examples that express the same intent but hit different tables or compute a metric with different granularity — complete with a confidence score. Each example is also scored on Clarity, Relatedness, and Mapping; an example is only high quality if all three are positive. Note this evaluation is SQL-only today.
Security model
👤 Runs as the user
Queries execute under the requesting user's Entra ID identity and their existing workspace and data permissions. Foundry integration uses On-Behalf-Of identity passthrough. No Azure OpenAI key or token to manage.
🔒 RLS and CLS hold
Row-Level and Column-Level Security are honored, including when the agent is consumed from M365 Copilot. Two users asking the same question can correctly get different answers.
🌐 Service principal is the exception
Service principal auth Preview makes the SPN the calling identity, so it needs read on every attached source. Managed identities aren't supported, and it doesn't work with KQL sources.
Microsoft documents an explicit precedence order when instructions conflict, highest to lowest: organizational intent (tenant policy) → role-based intent (workspace governance) → developer intent (your instructions and examples) → user intent (the prompt). Attempts to talk the agent out of read-only behavior are refused at a layer you don't control — which is the correct design.
Minimum permission per source type
| Source | Minimum permission the end user needs |
|---|---|
| Power BI semantic model | Read — Build/Write not required, workspace access not required |
| Lakehouse | Read on the lakehouse item (plus table access if enforced) |
| Warehouse | Read (SELECT on the relevant tables) |
| KQL database | Reader role on the database |
| Ontology | Read on the ontology item and on the bound semantic model / lakehouse / KQL DB |
| Microsoft Graph in Fabric | Read on the graph item and the underlying data |
If a user can open the agent but lacks permission on an underlying source, those queries fail with an authorization error or return empty results — a common and confusing support ticket. Note also that sharing an agent before publishing it means default-permission users can't query it at all.
RLS and CLS enforcement is explicitly confirmed in Microsoft's docs. Enforcement of OneLake security roles by data agents is not stated anywhere official. Don't assume it — validate against your own data before exposing an agent to a broad audience.
Licensing, capacity, and tenant settings
- Capacity: a paid F2 or higher, or Power BI Premium P1+ with Fabric enabled.
- Tenant settings: "Users can use Copilot and other features powered by Azure OpenAI" must be on. If your capacity's region sits outside the EU data boundary and the US, you must also enable cross-geo processing and cross-geo storing — the latter because conversation history persists across sessions (up to 28 days if not manually cleared). Settings can take up to an hour to take effect.
- Billing: there is no data-agent-specific meter. Usage bills through the general Copilot in Fabric rates — per 1,000 tokens: 100 CU seconds input, 10 cached input, 400 output. Graph sources additionally incur graph operation consumption.
- Region: see the hard constraint below.
If the data source's workspace capacity is in a different region than the data agent's workspace capacity, the agent cannot execute the query. A lakehouse in North Europe will fail for an agent whose capacity is in France Central. Plan capacity placement before you build.
Consuming a published agent
| Surface | State | What to know |
|---|---|---|
| In Fabric (chat) | Core | Draft vs published versions; run steps expose routing, retrieved examples, and the generated query. Visual responses Preview chart up to 200 rows |
| Copilot Studio | Preview | Added as a connected agent or as a tool. Needs an M365 Copilot license, same tenant and account |
| Microsoft Foundry | Preview | Added as a knowledge source via FabricTool. Only one data agent per Foundry agent |
| M365 Copilot / Teams | Preview | Publish to the Agent Store. Your publish description becomes the model-facing description and steers the orchestrator |
| Python SDK | Preview | fabric-data-agent-sdk; also the home of few-shot evaluation |
| MCP server | Preview | Exposes the agent as a single MCP tool; download mcp.json from Settings → Model Context Protocol |
In M365 Copilot and MCP, the description you write at publish time becomes the machine-readable description that orchestrators use to decide when to call your agent. Treat it as code, not marketing copy. A documented trick: ask the agent to describe what it does, then refine that answer into the description.
Current limitations
- English only — questions, instructions, and example queries.
- Responses capped at 25 rows × 25 columns. Agents are built for conversational insight, not dataset export.
- You can't change the underlying LLM.
- Lakehouse answers come from selected tables, not standalone files — ingest CSV/JSON as tables first.
- Native unstructured content is unsupported (.pdf, .docx, .txt) — reachable only via an Azure AI Search index source Preview.
- Conversation history may not persist across service or model updates, and prior turns influence follow-ups — start a new chat when changing topic.
- No advanced analytics, ML, or causal inference natively — "why did this happen?" is out of scope unless you add the code interpreter tool Preview.
- Responses may be truncated or blocked by Purview DLP and access restriction policies; interactions are auditable and eDiscoverable.
Building one that actually works
- Scope narrowly. One high-value domain per agent. An "everything agent" routes badly and answers vaguely.
- Fix names before prompts.
CustomerOrdersandorder_submission_datecarry signal;Table1andvaluedo not. But don't rely on naming alone. - Select the minimum schema. Exclude staging, archive, and unrelated domains. Every extra object is another wrong path the query engine can take.
- Declare grain and joins explicitly in data source instructions — one row per order, per order line, or per daily total changes every answer.
- Define terminology and encodings. Does the state column store
"CA"or"California"? Is the flag1/0orY/N? Is currency dollars or cents? - Add examples only for hard patterns — multi-table joins, pre-aggregation, fiscal/relative dates, ranking and window functions. One reusable pattern per example; avoid overlapping or contradictory examples.
- Debug at the closest layer. Read the generated query in run steps, then fix in this order: schema selection → schema description → data source instructions → example query.
- Review before publishing — permissions, labels, and expected audience. Then version it in Git and promote via deployment pipelines.
Common use cases
📈 Self-service analytics
Let business users ask plain-language questions without browsing dozens of reports.
📬 Automated reporting
Generate recurring summaries for leadership using governed measures and approved data sources.
🏷️ Domain Q&A
Scenario-specific assistants: sales pipeline Q&A, inventory status, or finance variance analysis.
Skills for Fabric
Reusable SKILL.md instruction files that teach AI coding tools your Fabric conventions - a developer productivity feature, not a Fabric workspace item.
What Skills for Fabric are
Skills for Fabric are reusable instruction files (SKILL.md) that teach AI coding tools how to work correctly with Fabric. They are not Fabric workspace items and they are not invoked at runtime from notebooks or pipelines. Instead, they give an AI assistant curated, Fabric-specific guidance so generated code follows the right patterns.
Skills for Fabric are a developer productivity feature for AI coding tools. If you want a runtime, callable AI capability inside Fabric, look at Data Agents (read-only conversational analytics) or User Data Functions instead.
How they work
- Author a SKILL.md file: capture the task, the conventions, and the Fabric APIs or patterns the assistant should follow.
- Place it in your repository: the skill lives alongside your code so it is versioned and reviewable.
- Let the AI tool discover it: supported AI coding tools load the skill when the task matches its description.
- Share across the team: everyone working in that repository gets the same Fabric-aware guidance.
📜 Consistent Fabric code
Encode your team's notebook, pipeline, and deployment conventions so generated code matches house style.
🔧 API guidance
Point the assistant at the correct current Fabric REST and SDK patterns instead of outdated snippets.
👥 Onboarding
New engineers inherit institutional Fabric knowledge through the repository rather than tribal knowledge.
The main value is consistency: capture Fabric conventions once in version control, and every AI-assisted change in that repository benefits from them.
Agentic Fabric & What's New in AI
Fabric is shifting from "AI that helps you build" to "AI that can reason and act on your data estate" — here is the current landscape and its real release state.
Three distinct layers are emerging, and they are frequently confused. Getting the mental model right saves a lot of wasted design effort:
Copilot — assists you
Preconfigured, in-product help inside notebooks, pipelines, SQL, and Power BI. You stay in control; Copilot drafts.
Data Agents — answer questions
Artifacts you configure over governed sources. Conversational, shareable, embeddable — and strictly read-only.
Operations Agents — take action
Part of Fabric IQ. Reason over an ontology and can trigger workflows, which Data Agents deliberately cannot.
MCP: Fabric as a tool for any AI client
Model Context Protocol is becoming Fabric's standard integration surface for external AI clients — VS Code, GitHub Copilot, Claude, Foundry agents, and custom orchestrators. Rather than one monolithic endpoint, Microsoft is shipping several MCP servers, each scoped to a workload:
| MCP server | State | What it exposes |
|---|---|---|
| Fabric Core / platform MCP | Preview | Workspace and item operations, plus grounded access to Fabric documentation for code generation |
| Data warehouse MCP | Preview | Schema discovery and T-SQL querying against Warehouse and SQL analytics endpoints |
| Real-Time Intelligence MCP | Preview | Eventhouse/KQL exploration for agent-driven telemetry analysis |
| Data agent MCP | Preview | Publishes one data agent as a single MCP tool via a downloadable mcp.json |
| Ontology MCP | Preview | Semantic-layer reasoning over Fabric IQ ontologies |
MCP changes where your governance has to live. Once an external client can call Fabric tools, your guardrails must be enforced in Fabric permissions, RLS/CLS, sensitivity labels, and Purview policy — not in the client application. Design assuming the calling app is untrusted.
Recent and emerging capabilities
| Capability | State | Why it matters |
|---|---|---|
| Data source routing for multi-source agents | GA | The agent picks which of its (up to five) sources answers a question. Your agent instructions are the main lever over this decision |
| Operations Agents in Fabric IQ | GA | Ontology-grounded agents that can act, not just answer |
| Plan in Fabric IQ | GA | Scenario modeling and planning on top of the semantic layer |
| Code interpreter tool for data agents | Preview | Adds Python execution so agents can go beyond retrieval into analysis |
| Visual responses in data agent chat | Preview | Charts results directly in the conversation, up to 200 rows |
| Build an agent with AI | Preview | Bootstraps instructions and example queries from your schema instead of a blank page |
| Schema object descriptions | Preview | Per-table and per-column meaning; requires the preview runtime |
| Service principal authentication | Preview | Unattended/app-driven consumption. No managed identities; not supported for KQL |
| AI functions in Warehouse | Preview | LLM operations (summarize, classify, extract) invoked from T-SQL |
| Skills for Fabric | Open source | Reusable SKILL.md instruction files that teach coding agents Fabric patterns — see the section above |
Most of the interesting surface area above is in preview: no SLA, behavior can change, and it should not sit on a critical production path. Microsoft's own release-state pages are occasionally inconsistent between the concept page and the Copilot feature-state table — verify the status of the specific capability in the Fabric admin portal and the release plan before you commit an architecture to it.
How to adopt this without regret
- Invest in the semantic layer first. Agents amplify whatever quality your model already has. Clear names, documented grain, certified measures, and endorsements pay off far more than prompt tinkering.
- Start read-only. Prove value with Data Agents before granting anything the ability to act.
- Pick one domain and one audience for your first agent, and measure answer accuracy against a fixed question set before widening access.
- Set governance before scale — tenant settings, cross-geo choices, sensitivity labels, Purview DLP, and capacity region alignment.
- Treat instructions and example queries as code. Version them in Git, review changes, and promote through deployment pipelines like any other Fabric item.
AI Governance & Security
Roll out Copilot and other AI features with the same rigor you apply to workspace access, information protection, and production change control.
Fabric Copilot and related AI experiences operate within your organization's security boundaries. Data remains within your tenant and responses are constrained by the user's existing permissions, labels, and governed access path.
- Copilot respects existing permissions: workspace roles, semantic model permissions, and data-level controls still matter.
- Sensitivity labels still apply: if content is protected and the user is not authorized, Copilot should not become a bypass route.
- Admin controls matter: review tenant settings and workspace/capacity rollout strategy before broad enablement.
- Audit logging is essential: monitor Copilot activity and AI-related access patterns as part of your compliance and support model.
- Human-in-the-loop remains required: Copilot can summarize and generate, but business owners must review high-impact outputs.
๐ก๏ธ Data boundaries
Use AI only after you are confident that workspace access, model permissions, and downstream sharing are already correct.
๐ท๏ธ Information protection
Apply sensitivity labels and DLP strategy first so AI experiences inherit the right guardrails from day one.
๐๏ธ Administrative control
Enable features deliberately, starting with a pilot capacity or a curated set of workspaces before scaling to the whole tenant.
๐ Responsible AI
Train users to treat AI output as draft analysis: useful, fast, and often insightful โ but still subject to review and validation.
For deeper guidance on protection controls, labeling, audit, and defense-in-depth architecture, see the full Security guide.
๐ Learn More
Information protection in Fabric โ Microsoft Purview for AI governance โ๐ See Also
Security โ full guidance โAI Readiness Checklist
A practical rollout checklist for making Copilot useful, trusted, and supportable in production.
1. Enable Copilot in the admin portal
Review tenant settings, pilot scope, and support expectations before turning the feature on broadly.
2. Ensure F2+ capacity
Confirm the workspace and Power BI experiences that need Copilot are on supported paid capacity.
3. Optimize semantic models
Use good naming, descriptions, AI data schema curation, and clean business-friendly measures.
4. Add AI instructions
Document business terminology, calculation rules, fiscal calendar assumptions, and preferred metrics.
5. Set up verified answers
Curate trusted responses for critical business questions that executives and frontline teams ask repeatedly.
6. Train your team
Show authors what Copilot is good at, where it struggles, and why review discipline is still required.
7. Establish governance policies
Define who can enable AI features, which workspaces are in scope, and how sensitive data is handled.
8. Monitor audit logs
Track usage, investigate issues, and use audit evidence to improve both governance and end-user training.
Quick self-check
Resources
Official documentation and next-step reading for AI and Copilot across Microsoft Fabric.
Copilot for Fabric overview
https://learn.microsoft.com/fabric/get-started/copilot-fabric-overview