Por que o modelo semântico é o fundamento de tudo
O Copilot no Power BI não acessa dados brutos. Ele consulta o modelo semântico — a camada de abstração que define tabelas, relacionamentos, medidas DAX e metadados descritivos. Tudo o que o Copilot pode fazer está limitado ao que está modelado e documentado nessa camada.
Quando um usuário pergunta "quais produtos venderam mais no último trimestre?", o Copilot não procura em planilhas — ele usa o modelo semântico para entender o que é "produto", o que é "venda" e como calcular "último trimestre". Se essas definições estiverem ambíguas, ausentes ou incorretas, o Copilot vai produzir respostas correspondentemente ambíguas, ausentes ou incorretas.
Passo 1 — Star schema e nomenclatura descritiva
O Copilot performa melhor com modelos em star schema: uma tabela fato central conectada a tabelas dimensão. Estruturas snowflake aninhadas, tabelas bridge mal documentadas e relacionamentos muitos-para-muitos sem configuração adequada aumentam a chance de o Copilot gerar DAX incorreto.
As convenções de nomenclatura são igualmente críticas. O Copilot usa os nomes de tabelas, colunas e medidas para inferir semântica:
- Evite:
Fato_Vnd,dt_vnd,vlr_brto - Prefira:
Vendas,Data Venda,Valor Bruto - Use nomes que um analista de negócios entenderia sem contexto adicional
- Evite abreviações e siglas internas que não aparecem na linguagem do negócio
- Mantenha consistência: se a tabela de clientes se chama "Clientes", a medida relacionada não deveria se chamar "Qtd_Cust"
Passo 2 — AI Instructions: o campo mais importante que poucos configuram
As AI Instructions são um campo de texto livre no modelo semântico (disponível no Power BI Desktop e no Fabric portal) onde o analista pode fornecer contexto adicional ao Copilot sobre o negócio, as métricas e as regras específicas da organização.
Pense nas AI Instructions como um briefing que você daria a um analista novo antes de ele usar o modelo pela primeira vez. Exemplos do que incluir:
- Definição de termos específicos do negócio: "Receita Líquida exclui devoluções e descontos comerciais. Não confundir com Faturamento Bruto."
- Regras de cálculo não óbvias: "O mês fiscal começa no dia 25. Relatórios mensais sempre usam o calendário fiscal, não o calendário civil."
- Quais medidas usar para cada tipo de análise: "Para análises de margem, sempre use [Margem Ajustada], não [Margem Bruta], pois a segunda não considera as deduções fiscais do setor."
- Escopo do modelo: "Este modelo contém dados de vendas B2B apenas. Dados de varejo estão em um modelo separado."
- Instruções para UDFs: "Para cálculos de margem, use sempre a função [FN_MargemLiquida]. Não recrie essa lógica manualmente."
Passo 3 — Descrições de tabelas, colunas e medidas
Além das AI Instructions globais, cada tabela, coluna e medida pode ter uma descrição individual. O Copilot usa essas descrições para desambiguar perguntas e escolher os campos corretos. Priorize:
- Medidas calculadas complexas: explique o que a medida calcula, quais filtros aplica e quando deve ser usada vs. medidas similares
- Colunas com nomes ambíguos: se você tem "Data" em três tabelas diferentes, descreva qual é qual
- Colunas com valores codificados: se o campo "Status" tem valores 1, 2, 3 — descreva o que cada um significa
No Power BI Desktop, as descrições ficam em Visualização de Modelo → selecionar campo → campo Descrição no painel de propriedades. No Fabric, também é possível editar via interface web.
Passo 4 — DAX UDFs para lógica reutilizável
As DAX User-Defined Functions (UDFs), lançadas em preview em setembro de 2025, são a inovação mais relevante para uso do Copilot em modelos corporativos complexos.
O problema que elas resolvem: quando a lógica de negócio é complexa (margem com deduções fiscais específicas, score de cliente com múltiplas variáveis, cálculo de meta ajustada), o Copilot tende a tentar reconstruir essa lógica do zero — e frequentemente erra nos contextos de filtro.
Com UDFs, você encapsula essa lógica uma vez:
-- Definição da UDF no modelo
DEFINE
FUNCTION FN_MargemLiquida([Receita], [CustoTotal], [AliquotaEfetiva]) =
([Receita] - [CustoTotal]) * (1 - [AliquotaEfetiva])
Depois, nas AI Instructions, você instrui o Copilot a chamar essa função: "Para qualquer cálculo de margem líquida, use a função FN_MargemLiquida com os parâmetros Receita Líquida, Custo Total e Alíquota Efetiva do mês."
Resultado: o Copilot passa de tentar recriar lógica complexa para simplesmente orquestrar funções já validadas. A taxa de erros cai drasticamente.
Passo 5 — Habilitando Q&A para DirectQuery e Direct Lake
O Copilot usa o mecanismo de Q&A internamente para interpretar perguntas em linguagem natural sobre modelos semânticos. Para modelos em modo Import, o Q&A está habilitado por padrão. Para DirectQuery e Direct Lake, é necessário habilitar manualmente:
- No Power BI Desktop: Arquivo → Opções → Recursos de Visualização de Dados → Habilitar Q&A para este modelo
- No Fabric Semantic Model: Configurações → Q&A → Ativar Q&A
Sem isso, o Copilot terá capacidade limitada de responder perguntas sobre esses modelos — uma das causas mais comuns de "o Copilot não funciona bem com o meu modelo" em ambientes de produção com DirectQuery.
Passo 6 — Validando o output do Copilot
Nenhum modelo semântico, por melhor que seja, elimina a necessidade de validação. O processo recomendado para equipes que disponibilizam modelos com Copilot para usuários de negócio:
- Mapeie as 10–15 perguntas mais frequentes que os usuários fazem sobre aquele relatório
- Teste cada uma no Copilot e compare com os valores corretos conhecidos
- Identifique padrões de erro: o Copilot está errando sempre em perguntas sobre um determinado período? Sobre uma determinada dimensão? Isso indica onde as AI Instructions ou descrições precisam ser melhoradas
- Itere: ajuste as AI Instructions, adicione descrições nos campos problemáticos, re-teste
- Documente as limitações conhecidas para os usuários — o Copilot não responde bem perguntas sobre X porque Y
Checklist: modelo AI-ready para o Power BI Copilot
- ☐ Star schema implementado com relacionamentos corretos (sem ambiguidades de cardinalidade)
- ☐ Nomenclatura descritiva em tabelas, colunas e medidas — sem siglas ou abreviações internas
- ☐ AI Instructions preenchidas com definições de negócio, regras de cálculo e escopo do modelo
- ☐ Descrições individuais nas medidas complexas e nas colunas ambíguas
- ☐ DAX UDFs criadas para lógica de negócio complexa e referenciadas nas AI Instructions
- ☐ Q&A habilitado (especialmente para DirectQuery e Direct Lake)
- ☐ Validação das 10–15 perguntas mais frequentes realizada e documentada
- ☐ Limitações conhecidas documentadas para os usuários finais
Referências
- Microsoft Learn. Copilot for Power BI — Optimize Semantic Models. learn.microsoft.com
- Microsoft Learn. DAX User-Defined Functions Overview. learn.microsoft.com
- Webb, C. Calling DAX UDFs from Power BI Copilot. Crossjoin Blog, Nov 2025. blog.crossjoin.co.uk
- McNeely, R. Maximizing Power BI Copilot: A Data Analyst Guide to AI-Ready Semantic Models. Nov 2025. rossmcneely.com
- Fabric Community. Optimizing Semantic Models for Copilot: Best Practices and Why. community.fabric.microsoft.com
- NeuralFlow. Power BI Copilot: An Honest Review and Guide 2026. neuralflow.es
Why the semantic model is the foundation of everything
Copilot in Power BI doesn't access raw data — it queries the semantic model: the abstraction layer defining tables, relationships, DAX measures, and descriptive metadata. Everything Copilot can do is bounded by what's modeled and documented in that layer. Poor models produce incorrect outputs, and Copilot doesn't warn you when it's wrong.
Step 1 — Star schema and descriptive naming
Copilot performs best with star schema: a central fact table connected to dimension tables. Nested snowflake structures and poorly documented bridge tables increase the likelihood of incorrect DAX generation. Naming conventions are equally critical — use names a business analyst would understand without additional context. Avoid abbreviations, internal codes, and technical shorthand.
Step 2 — AI Instructions: the most important field few configure
AI Instructions are a free-text field in the semantic model where analysts can provide Copilot with additional business context, metric definitions, and organization-specific calculation rules. Think of it as a briefing for a new analyst. Include: term definitions, fiscal calendar rules, which measures to use for which analysis types, model scope boundaries, and instructions to use specific UDFs.
Step 3 — Descriptions for tables, columns, and measures
Beyond global AI Instructions, each table, column, and measure can have individual descriptions. Copilot uses these to disambiguate questions and select correct fields. Prioritize: complex calculated measures, ambiguously named columns, and columns with coded values (e.g., Status = 1, 2, 3).
Step 4 — DAX UDFs for reusable logic
DAX User-Defined Functions (preview, September 2025) encapsulate complex business logic once. Instead of Copilot trying to reconstruct complex filter logic from scratch — where it frequently makes errors — you define the logic as a UDF and instruct Copilot via AI Instructions to call that function. Error rates drop dramatically because Copilot orchestrates validated functions rather than recreating complex logic.
Step 5 — Enable Q&A for DirectQuery and Direct Lake
Copilot uses the Q&A engine internally. For Import mode models, Q&A is enabled by default. For DirectQuery and Direct Lake, enable manually: Power BI Desktop → File → Options → Data View Features → Enable Q&A for this model. Without this, Copilot will have limited capability on these models — one of the most common causes of poor Copilot performance in production environments.
Step 6 — Validating Copilot output
Map the 10–15 most frequent user questions, test each in Copilot against known correct values, identify error patterns (specific period? specific dimension?), iterate on AI Instructions and descriptions, and document known limitations for end users.
Checklist: AI-ready model for Power BI Copilot
- ☐ Star schema with correct relationships (no cardinality ambiguities)
- ☐ Descriptive naming — no internal abbreviations or codes
- ☐ AI Instructions with business definitions, calculation rules, and model scope
- ☐ Individual descriptions on complex measures and ambiguous columns
- ☐ DAX UDFs created for complex business logic, referenced in AI Instructions
- ☐ Q&A enabled (especially for DirectQuery and Direct Lake)
- ☐ Top 10–15 questions validated and documented
- ☐ Known limitations documented for end users
References
- Microsoft Learn. Copilot for Power BI.
- Microsoft Learn. DAX User-Defined Functions Overview.
- Webb, C. Calling DAX UDFs from Power BI Copilot. Nov 2025.
- McNeely, R. Maximizing Power BI Copilot: AI-Ready Semantic Models. Nov 2025.
- Fabric Community. Optimizing Semantic Models for Copilot.
Por qué el modelo semántico es el fundamento de todo
Copilot en Power BI no accede a datos brutos — consulta el modelo semántico. Todo lo que Copilot puede hacer está limitado a lo que está modelado y documentado en esa capa. Modelos mal preparados generan outputs incorrectos — y Copilot no avisa cuando se equivoca.
Paso 1 — Star schema y nomenclatura descriptiva
Copilot funciona mejor con star schema: una tabla de hechos central conectada a tablas de dimensiones. Las convenciones de nomenclatura son igualmente críticas — usa nombres que un analista de negocio entendería sin contexto adicional, sin siglas ni abreviaturas internas.
Paso 2 — AI Instructions: el campo más importante que pocos configuran
Las AI Instructions son un campo de texto libre donde el analista proporciona a Copilot contexto de negocio adicional: definiciones de términos, reglas de cálculo no obvias, qué medidas usar para cada tipo de análisis, alcance del modelo e instrucciones para usar UDFs específicas.
Paso 3 — Descripciones de tablas, columnas y medidas
Además de las AI Instructions globales, cada tabla, columna y medida puede tener descripción individual. Copilot las usa para desambiguar preguntas. Prioriza: medidas calculadas complejas, columnas con nombres ambiguos y columnas con valores codificados.
Paso 4 — DAX UDFs para lógica reutilizable
Las DAX User-Defined Functions (preview, septiembre 2025) encapsulan lógica de negocio compleja una sola vez. En lugar de que Copilot intente reconstruir lógica de filtros desde cero, defines la lógica como UDF y le indicas via AI Instructions que use esa función. La tasa de errores cae drásticamente.
Paso 5 — Habilitar Q&A para DirectQuery y Direct Lake
Para modelos en modo Import, Q&A está habilitado por defecto. Para DirectQuery y Direct Lake, habilita manualmente: Power BI Desktop → Archivo → Opciones → Características de Vista de Datos → Habilitar Q&A. Sin esto, Copilot tendrá capacidad limitada en esos modelos.
Checklist: modelo AI-ready para Power BI Copilot
- ☐ Star schema con relaciones correctas
- ☐ Nomenclatura descriptiva sin abreviaturas internas
- ☐ AI Instructions con definiciones de negocio y reglas de cálculo
- ☐ Descripciones individuales en medidas complejas y columnas ambiguas
- ☐ DAX UDFs para lógica compleja, referenciadas en AI Instructions
- ☐ Q&A habilitado para DirectQuery y Direct Lake
- ☐ Validación de las 10–15 preguntas más frecuentes
Referencias
- Microsoft Learn. Copilot for Power BI.
- Microsoft Learn. DAX User-Defined Functions Overview.
- Webb, C. Calling DAX UDFs from Power BI Copilot. Nov 2025.
- McNeely, R. Maximizing Power BI Copilot: AI-Ready Semantic Models. Nov 2025.