Como criar prompts iterativos em Copilot no Fabric: passo a passo
Este tutorial ensina a criar prompts iterativos em Copilot no Fabric para refinar resultados (texto, código, consultas) até obter a resposta desejada. Saber iterar com prompts é útil para reduzir erros, adaptar outputs ao contexto da organização e acelerar tarefas como gerar SQL, DAX ou explicações de modelos.
Pré-requisitos
- Conta com acesso ao Microsoft Fabric e Copilot ativado.
- Permissões para abrir Workspaces e ficheiros relevantes (Notebook, SQL Endpoint, Dataflow).
- Exemplo de base de dados ou ficheiro (CSV/Parquet) carregado no Lakehouse ou Warehouse para testar prompts.
Passo 1: Escolher o cenário e formular o primeiro prompt
Decida o objetivo concreto (ex.: gerar uma consulta SQL que compara vendas por categoria filtrando anomalias). Escreva um prompt inicial simples e directo. O primeiro prompt serve para dar contexto e intenção.
Prompt inicial (exemplo):
"Tenho uma tabela Sales no Warehouse com colunas: OrderDate, Category, Amount. Quero uma query SQL que mostre vendas mensais por Category e destaque meses com queda > 20% face ao mês anterior."
Passo 2: Executar no Copilot e analisar a resposta
Insira o prompt numa janela do Copilot ligada ao recurso (ex.: SQL endpoint ou Notebook). Quando receber a resposta, leia e identifique pontos que precisam de clarificação: suposições, missing columns, performance.
Exemplo de saída esperada (resumo):
-- SQL sugerido pelo Copilot
SELECT
FORMAT(OrderDate, 'yyyy-MM') AS Month,
Category,
SUM(Amount) AS TotalAmount,
LAG(SUM(Amount)) OVER (PARTITION BY Category ORDER BY FORMAT(OrderDate,'yyyy-MM')) AS PrevMonth
FROM Sales
GROUP BY FORMAT(OrderDate,'yyyy-MM'), Category
HAVING (TotalAmount < PrevMonth * 0.8);
Passo 3: Refinar com prompts iterativos — esclarecer suposições
Peça ao Copilot para explicar suposições ou adaptar a query ao formato da sua tabela. Por exemplo, garantir que OrderDate está em formato datetime e que a função FORMAT existe no dialecto SQL do seu Warehouse.
Prompt de refinamento:
"Agradeço. Confirma que OrderDate é datetime e que o Warehouse suporta FORMAT e LAG? Se não, adapta para usar CONVERT/TO_CHAR e janelas compatíveis."
Passo 4: Corrigir erros comuns com prompts focados
Se a primeira versão gerar erro (ex.: função não suportada, agregação inválida com window), peça correcção específica. Indique o erro que viu e peça uma solução alternativa.
Prompt de correcção:
"Ao executar recebi: 'Windowed aggregates not allowed'. Ajusta a query para calcular PrevMonth usando CTEs em vez de window aggregate."
Passo 5: Pedir optimizações e considerações de performance
Solicite ao Copilot opções de optimização: índices sugeridos, limitar escopo temporal, usar PARTITIONing ou pré-aggregate em Dataflow. Isso evita scans desnecessários em tabelas grandes.
Prompt de optimização:
"Sugere melhorias para performance numa tabela Sales com 100M+ linhas. Propõe índices, filtros iniciais e versão que usa CTE ou temp table."
Passo 6: Validar resultado no ambiente (Notebook ou SQL endpoint)
Execute a versão final gerada pelo Copilot no seu ambiente. Se usar Notebook, copie o SQL para um bloco SQL e corra; se usar Warehouse, teste no SQL Editor. Anote qualquer mensagem de erro para novo ciclo de iteração.
Verificar o resultado
Confirme que a query corre sem erros e que os resultados fazem sentido: colunas esperadas, meses com quedas identificadas correctamente e performance aceitável (tempo de execução). Compare resultados com amostras manuais (ex.: sumarizar em Excel) para validar lógica.
Conclusão
Prompts iterativos em Copilot no Fabric ajudam a transformar um pedido vago em código ou análises precisas, reduzindo erros comuns e melhorando performance. Próximos passos: automatizar o prompt final num Notebook paramétrico ou guardar versões num Repositório. Dica: mantenha um histórico das iterações para replicar melhorias e perguntar — que hipótese queres testar a seguir?