Lernprogramm: Erstellen einer End-to-End-Aktivatorregel mithilfe agentischer KI

Fabric Aktivator erkennt Muster in Streamingdaten und ergreift Maßnahmen, wenn Bedingungen erfüllt sind. In diesem Lernprogramm verwenden Sie einen KI-Agent, um eine End-to-End-Pipeline zu erstellen. Die Pipeline überwacht einen Strom von Telemetrieereignissen, erkennt eine anhaltende Überhitzung und ruft eine Fabric User Data Function (UDF) auf, um einen Reparaturauftrag anzulegen. Sie schreiben die Eingabeaufforderungen; der Agent führt die Erstellung durch.

Dieses Tutorial verwendet Telemetriedaten einer Widget-Herstellungsmaschine als durchgängiges Beispiel, aber dieselben Prompts eignen sich für fast alle Zeitreihendaten mit einer stabilen ID pro Entität – IoT-Geräte, Fahrzeugflotten, Logistikereignisse, Finanzmarktticks, Anwendungsmetriken usw. Ersetzen Sie die Feldnamen und den Schwellenwert, um sie an Ihre Datenstruktur anzupassen.

In diesem Tutorial führen Sie die folgenden Aufgaben durch:

  • Richten Sie einen Eventstream über Ihren Event Hub ein.
  • Erstellen Sie eine Benutzerdatenfunktion, um den Reparaturauftrag zu speichern.
  • Erstellen Sie eine Aktivierregel, die die Funktion auslöst.

Wenn Sie Fabric Activator noch nicht kennen, siehe Was ist Fabric Activator?. Wenn Sie noch nicht mit Fabric Benutzerdatenfunktionen arbeiten, lesen Sie What are Fabric User Data Functions?.

Beschreibung des Szenarios

Ein Hersteller betreibt eine Flotte von Widget-Herstellungsmaschinen in mehreren Anlagen. Jeder Computer sendet Telemetrie – Temperatur, Vibration, Druck, Ausführungszustand – in einen Azure Event Hub. Wenn eine Maschine eine hohe Lauftemperatur aufrecht erhält, benötigt sie einen Wartungsbesuch, bevor sie herunterbricht.

Für dieses Tutorial verwendet jedes Ereignis ein kleines repräsentatives Schema: eine maschinenbezogene ID (machine_id), ein Standort-Tag (plant_id), eine zu überwachende numerische Metrik (temperature_c) und ein Ausführungsstatusfeld (state). Die genauen Feldnamen sind nicht wichtig – dieselbe Prompt-Struktur funktioniert für jede entitätsspezifische ID plus eine Metrik, für die Sie einen Schwellenwert festlegen möchten.

Sie erstellen eine Fabric Pipeline, die den Telemetriedatenstrom überwacht, eine Regel mit einem dauerhaften Schwellenwert anwendet und eine Benutzerdatenfunktion aufruft, um den Reparaturauftrag zu speichern. Die Regel gruppiert Ereignisse nach machine_id und wird ausgelöst, wenn temperature_c für 5 Minuten über 50 °C bleibt. Wenn es ausgelöst wird, übergibt es machine_id, plant_id und die aktuelle Temperatur an die Aktion.

Architekturdiagramm der Telemetrie, die von Maschinen über Azure Event Hubs, einen Eventstream in Fabric, eine Activator-Regel und eine UDF fließt.

Voraussetzungen

Bevor Sie beginnen, benötigen Sie Folgendes:

  • Ein Fabric-Arbeitsbereich mit einer Kapazität von F4 oder höher, mit Erstellungsberechtigungen. Weitere Informationen zu Arbeitsbereichen finden Sie unter Arbeitsbereiche.
  • Ein mit Skills kompatibler Agent – z. B. GitHub Copilot CLI oder GitHub Copilot in Visual Studio Code –, auf dem die Fabric-Skills installiert sind.
  • Ein Azure Event Hubs-Namespace und ein Hub, der die Telemetriedaten streamt. Sie benötigen den Namespace-FQDN, den Hubnamen und eine Listen+Send Verbindungszeichenfolge.

Einrichten des Eventstreams

In diesem Schritt erstellen Sie den Eventstream, der Ihren Event Hub abonniert. Sie fordern den Agent auf und überprüfen das Ergebnis im Portal.

  1. Geben Sie dem Agent diese Eingabeaufforderung, und ersetzen Sie die Platzhalter durch Werte aus Ihrem Event Hub:

    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. Der Agent ruft die Fähigkeit zum Erstellen des Ereignisstreams auf. Es erstellt das Eventstream-Element, konfiguriert den Event Hub als Quelle und gibt eine klickbare URL zum Element im Fabric-Portal zurück. Sie benötigen kein Ziel– Aktivierer abonniert den Datenstrom direkt.

  3. Wählen Sie den Link aus, den Der Agent Ihnen gegeben hat. Vergewissern Sie sich in der Liveansicht, dass die Ereignishubquelle verbunden ist und Telemetrieereignisse des Widgetcomputers durchlaufen werden.

    Screenshot des WidgetMachineTelemetry-Ereignisstreams mit der verbundenen Ereignishubquelle und dem Aktivatorziel mit Livedatenvorschau.

    Abbildung 1: Der WidgetMachineTelemetry Ereignisstream – Ereignisfluss von der widget-telemetry Ereignishubquelle über den Datenstrom zum WidgetMachineMaintenance Aktivatorziel.

Erstellen der Benutzerdatenfunktion

In diesem Schritt erstellen Sie die Benutzerdatenfunktion, die von Ihrer Aktivatorregel aufgerufen wird. Die Funktion sendet die Reparaturauftragsanforderung an Ihre downstream-API.

  1. Geben Sie dem Agent folgende Eingabeaufforderung:

    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. Der Agent ruft den Skill zur Erstellung von Fabric UDFs auf. Es erstellt ein Gerüst für ein Python UDF-Element, implementiert file_repair_job mit httpx, veröffentlicht die UDF, bestätigt, dass die Funktion aufgerufen werden kann, und gibt eine klickbare URL zum Element zurück.

  3. Wählen Sie den Link aus, den Der Agent Ihnen gegeben hat, und verwenden Sie dann den integrierten Testbereich , um mit einer Beispielnutzlast aufzurufen file_repair_job . Beispiel: machine_id="widget-press-042", , plant_id="plant-eu-01"temperature_c=52.7. Der Aufruf an contoso.com liefert einen HTTP-Fehler – das ist zu erwarten, da der Platzhalterendpunkt nicht aufgelöst werden kann. Das wichtige Verhalten besteht darin, dass die UDF den ausgehenden HTTP-Aufruf bereitgestellt, registriert und erreicht hat.

    Screenshot der MaintenanceDispatcher-Benutzerdatenfunktion, der die file_repair_job-Python-Quelle im Portal-Editor zeigt.

    Abbildung 2: Die MaintenanceDispatcher Benutzerdatenfunktion –file_repair_job sendet die Details der Überhitzungsmaschine an das Wartungssystem.

Note

Dieses Tutorial verwendet https://contoso.com/maintenance/fileRepairJob als Platzhalter für den eigentlichen Endpunkt des Wartungssystems. Ersetzen Sie ihn durch jeden eigenen HTTPS-Endpunkt. Rufen Sie für authentifizierte Endpunkte Anmeldeinformationen von Azure Key Vault über eine generische UDF-Verbindung ab. Weitere Informationen finden Sie unter Auf Datenquellen in Benutzerdatenfunktionen in Fabric zugreifen.

Autor der Aktiviererregel

In diesem Schritt erstellen Sie die Aktivatorregel, die den Ereignisstream überwacht und Ihre UDF aufruft, wenn ein Computer überhitzt.

  1. Geben Sie dem Agent folgende Eingabeaufforderung:

    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. Der Agent ruft die Activator-Erstellungskompetenz auf und erstellt das Activator-Element. Der Agent gruppiert die Regel anhand von machine_id, erstellt die Erkennung anhaltender Schwellenwertüberschreitungen und konfiguriert die Aktion so, dass Ihre UDF mit machine_id, plant_id und der aktuellen Temperatur aufgerufen wird. Der Agent gibt dann eine klickbare URL zur Regel zurück.

  3. Wählen Sie den Link aus, den Der Agent Ihnen gegeben hat, und gehen Sie dann durch diese Checkliste:

    • Daten fließen in die Regel ein. Öffnen Sie das zugrunde liegende Aktivatorobjekt der Regel im Explorer-Bereich , und vergewissern Sie sich, dass die letzten Ereignisse in der Livetabelle mit nicht NULL machine_id und temperature_c Werten angezeigt werden.
    • Die Regel läuft. Vergewissern Sie sich, dass sich die Regel im Zustand "Gestartet " oder " Ausgeführt " befindet und in der Zusammenfassung des Aktivatorobjekts Ihre Computer als aktive Instanzen angezeigt werden.
    • Der Agent zeichnet Aktivierungen auf. Wenn überhitzte Maschinen 5 Minuten lang über 50 °C bleiben, erscheinen Einträge auf der Registerkarte "Verlauf" der Regel, wobei jeweils das ausgelöste machine_id, die Temperatur zum Auslösezeitpunkt und ein erfolgreicher Aufruf von file_repair_job angezeigt werden.

    Screenshot von der laufenden Regel „OverheatingDispatch Activator“, bei der die Aktion die UDF „file_repair_job“ aufruft und die Maschinen-ID, Anlagen-ID und Temperatur als Parameter übergibt.

    Abbildung 3: Die OverheatingDispatch Activator-Regel – wird ausgelöst, wenn die Temperatur einer Maschine 5 Minuten lang über 50 °C bleibt, wobei file_repair_job mit der Kennung der Maschine, der Anlage und der aktuellen Temperatur aufgerufen wird.

Bereinigen von Ressourcen

Wenn Sie fertig sind, löschen Sie den Eventstream, die Benutzerdatenfunktion und die Aktivatorelemente aus Ihrem Arbeitsbereich, und löschen Sie den Event Hubs-Namespace aus dem Azure-Portal, um Gebühren zu beenden.