Tutorial: Crie uma regra do Activator de extremo a extremo com IA agêntica

O Fabric Activator deteta padrões em dados em fluxo e age quando as condições são cumpridas. Neste tutorial, utilizas um agente de IA para construir um pipeline de ponta a ponta. A pipeline monitoriza um fluxo de eventos de telemetria, deteta um sobreaquecimento persistente e chama uma Função de Dados do Utilizador do Fabric (UDF) para registar uma ordem de reparação. Escreves as instruções; o agente trata da redação.

Este tutorial utiliza a telemetria de uma máquina de fabrico de widgets como exemplo recorrente, mas as mesmas instruções funcionam para praticamente quaisquer dados de séries temporais com um ID estável por entidade — dispositivos IoT, frotas de veículos, eventos logísticos, cotações financeiras, métricas de aplicações, entre outros. Substitua os nomes dos campos e o limiar de modo a corresponderem à estrutura dos seus dados.

Neste tutorial, vai concluir as seguintes tarefas:

  • Configura um event stream sobre o teu event hub.
  • Crie uma Função de Dados de Utilizador para arquivar o trabalho de reparação.
  • Crie uma regra de Ativador que desencadeie a função.

Se és novo no Fabric Activator, vê O que é Fabric Activator?. Se ainda não conhece as Funções de Dados do Utilizador do Fabric, veja O que são as Funções de Dados do Utilizador do Fabric?.

Descrição geral do cenário

Um fabricante opera uma frota de máquinas de fabrico de widgets em várias fábricas. Cada máquina emite telemetria — temperatura, vibração, pressão, estado de execução — para um hub de eventos Azure. Quando uma máquina mantém uma temperatura de funcionamento elevada, precisa de uma visita de manutenção antes de avariar.

Para este tutorial, cada evento utiliza um pequeno esquema representativo: um ID por máquina (machine_id), uma etiqueta de localização (plant_id), uma métrica numérica para monitorizar (temperature_c), e um campo de estado de execução (state). Os nomes exatos dos campos não são importantes — a mesma estrutura do prompt funciona para qualquer ID por entidade e para qualquer métrica à qual queiras aplicar um limiar.

Cria um pipeline do Fabric que monitoriza o fluxo de telemetria, aplica uma regra de limiar persistente e chama uma função de dados do utilizador para registar a ordem de reparação. A regra agrupa eventos por machine_id e é acionada quando temperature_c se mantiver acima de 50 °C durante 5 minutos. Quando é acionado, transmite machine_id, plant_id e a temperatura atual para a ação.

Diagrama de arquitetura da telemetria que flui a partir das máquinas, passando pelo Hubs de Eventos do Azure, por um eventstream do Fabric, por uma regra do Activator e por uma UDF.

Pré-requisitos

Antes de começar, você precisa:

  • Um espaço de trabalho Fabric com capacidade F4 (ou superior), com permissões de autoria. Para saber mais sobre espaços de trabalho, consulte Espaços de Trabalho.
  • Um agente compatível com as competências — por exemplo, o GitHub Copilot CLI ou o GitHub Copilot no Visual Studio Code — com as competências do Fabric instaladas.
  • Um espaço de nomes e um hub de eventos do Hubs de Eventos do Azure que transmitem a telemetria. Precisas do espaço de nomes FQDN, nome do hub e um Listen+Send cadeia de ligação.

Configurar o fluxo de eventos

Neste passo, cria o fluxo de eventos que subscreve o seu hub de eventos. Dás instruções ao agente e validas o resultado no portal.

  1. Dê ao agente este prompt, substituindo os marcadores por valores do seu hub de eventos:

    Create a Fabric eventstream in my workspace called `WidgetMachineTelemetry` that ingests from this Azure event hub:
    
    - Namespace: `<your namespace FQDN>`
    - Hub name: `<your hub name>`
    - Connection string: `<your Listen+Send connection string>`
    
    When you're done, give me a direct portal link to the eventstream item so I can verify it.
    
  2. O agente aciona a capacidade de criação de fluxos de eventos. Cria o item do fluxo de eventos, configura o hub de eventos como fonte e devolve um URL clicável para o item no portal Fabric. Não precisa de um destino — o Activator subscreve diretamente a transmissão.

  3. Selecione o link que o agente lhe deu. Na visualização em direto, confirme que a fonte do hub de eventos está Conectada e que os eventos de telemetria da máquina widget estão a fluir.

    Captura de ecrã do fluxo de eventos WidgetMachineTelemetry mostrando a origem do hub de eventos ligada e o destino do Ativador, com pré-visualização de dados em tempo real.

    Figura 1: O WidgetMachineTelemetry fluxo de eventos—os eventos fluem da widget-telemetry fonte do hub de eventos através do fluxo até ao WidgetMachineMaintenance destino do Ativador.

Criar a Função de Dados do Utilizador

Neste passo, cria a Função de dados do utilizador que é chamada pela sua regra do Activator. A função envia o pedido de reparação para a sua API downstream.

  1. Dê ao agente este pedido:

    Create a Fabric User Data Function called `MaintenanceDispatcher` in my workspace, written in Python, with a function `file_repair_job(machine_id, plant_id, temperature_c)` that sends those values as JSON in a POST request to `https://contoso.com/maintenance/fileRepairJob` and returns the parsed response.
    
    When you're done, give me a direct portal link to the UDF item so I can verify it.
    
  2. O agente invoca a capacidade de criação de UDF do Fabric. Estrutura um item Python UDF, implementa file_repair_job com httpx, publica a UDF, confirma que a função é chamável e devolve um URL clicável ao item.

  3. Selecione o link que o agente lhe deu, depois use o painel de Teste incorporado para invocar file_repair_job com uma carga útil de exemplo. Por exemplo: machine_id="widget-press-042", plant_id="plant-eu-01", temperature_c=52.7. A chamada para contoso.com devolve um erro HTTP — isso é esperado, porque o endpoint provisório não resolve. O comportamento importante é que o UDF foi implantado, registado e chegou à chamada HTTP de saída.

    Captura de ecrã da Função de Dados de Utilizador do MaintenanceDispatcher, mostrando o código-fonte Python file_repair_job no editor do portal.

    Figura 2: A MaintenanceDispatcher Função de Dados do Utilizador —file_repair_job envia os detalhes da máquina a sobreaquecer para o sistema de manutenção.

Observação

Este tutorial usa https://contoso.com/maintenance/fileRepairJob como marcador de posição para o endpoint real do sistema de manutenção. Substitui-o por qualquer endpoint HTTPS seu. Para endpoints autenticados, recupere credenciais do Azure Key Vault através de uma ligação genérica UDF. Para mais informações, consulte Acesso às fontes de dados em Fabric Funções de dados do utilizador.

Autor da regra do Ativador

Neste passo, cria a regra do Activator que monitoriza o fluxo de eventos e invoca a sua UDF quando uma máquina sobreaquece.

  1. Dê ao agente este pedido:

    Create an Activator rule in my workspace subscribed to the `WidgetMachineTelemetry` eventstream, that triggers my `file_repair_job` UDF when a machine's temperature stays above 50°C for 5 minutes.
    
    When you're done, give me a direct portal link to the rule so I can verify it.
    
  2. O agente invoca a habilidade de autoria do Ativador e cria o item do Ativador. O agente agrupa a regra por machine_id, constrói a deteção de limiar persistente e configura a ação para chamar o seu UDF com machine_id, plant_id e a temperatura atual. O agente devolve então um URL clicável para a regra.

  3. Selecione o link que o agente lhe deu e depois percorra esta lista de verificação:

    • Os dados estão a fluir para a regra. Abra o objeto Activator subjacente da regra no painel Explorer e confirme que os eventos recentes aparecem na tabela em tempo real com valores machine_id e temperature_c não nulos.
    • A regra está em execução. Confirme que a regra está no estado Iniciado ou Em execução e que o resumo do objeto Activator mostra as suas máquinas como instâncias ativas.
    • O agente regista as ativações. Quando as máquinas sobreaquecidas permanecem acima de 50 °C durante 5 minutos, surgem registos no separador Histórico da regra, cada um mostrando o machine_id que a acionou, a temperatura no momento da ativação e uma chamada efetuada com sucesso para file_repair_job.

    Captura de ecrã da regra de ativação OverheatingDispatch em execução, com a ação a chamar a UDF file_repair_job e a passar o ID da máquina, o ID da instalação e a temperatura como parâmetros.

    Figura 3: A OverheatingDispatch regra do Ativador — dispara quando a temperatura de uma máquina se mantém acima dos 50°C durante 5 minutos, invocando file_repair_job a identidade, planta e temperatura atual da máquina.

Limpeza de recursos

Quando terminares, apaga o fluxo de eventos, a Função de Dados do Utilizador e os itens do Ativador do teu espaço de trabalho, e elimina o namespace dos Centros de Eventos do portal do Azure para evitar cobranças.