Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Von Bedeutung
Dieses Feature befindet sich in der Vorschauphase.
Microsoft Fabric Dataflow Gen2 kann Machine Learning-Modellendpunkte aufrufen, um Während der Datentransformation Echtzeitvorhersagen zu erhalten. Mit dieser Integration können Sie Ihre Daten erweitern, indem Sie trainierte Machine Learning-Modelle als Teil Ihrer Dataflow-Pipeline anwenden. Sie können Modellendpunkte mithilfe der Dienstprinzipalauthentifizierung über M-Abfragefunktionen aufrufen.
Voraussetzungen
Bevor Sie ML-Modellendpunkte aus Dataflow Gen2 aufrufen können, stellen Sie folgendes sicher:
- Ein aktiver Endpunkt für maschinelles Lernen in Ihrem Microsoft Fabric-Arbeitsbereich
- Ein Dienstprinzipal , der in der Microsoft Entra-ID erstellt wurde
- Der Dienstprinzipal muss über entsprechende Berechtigungen für den Zugriff auf den Machine Learning-Modellendpunkt in Fabric verfügen.
- Grundlegende Kenntnisse in M-Abfragesprache und Dataflow Gen2
Einrichten von Dienstprinzipalberechtigungen
Damit Ihr Dienstprinzipal Machine Learning-Modellendpunkte aufrufen kann, müssen Sie ihm die entsprechenden Berechtigungen erteilen:
Navigieren Sie zu dem Arbeitsbereich, der Ihr Machine Learning-Modell in Fabric enthält.
Wählen Sie im Arbeitsbereichsmenü " Zugriff verwalten" aus.
Wählen Sie Personen oder Gruppen hinzufügen.
Suchen Sie nach Ihrem Dienstprinzipal anhand des Anwendungsnamens oder der Client-ID.
Weisen Sie dem Dienstprinzipal mindestens die Rolle "Mitwirkender" zu, um auf Modellendpunkte zuzugreifen und diese aufzurufen.
Abrufen Sie die Endpunkt-URL und Authentifizierungsdetails
Sammeln Sie vor dem Erstellen der M-Abfragefunktion die folgenden Informationen:
Endpunkt-URL: Navigieren Sie zu Ihrem Machine Learning-Modell in Fabric, und kopieren Sie die Endpunkt-URL aus dem Abschnitt "Endpunktdetails ".
Mandanten-ID: Suchen Sie Ihre Mandanten-ID im Azure-Portal unter Microsoft Entra ID.
Client-ID: Suchen Sie die Anwendungs-ID (Client-ID) Ihres Dienstprinzipals im Azure-Portal.
Geheimer Clientschlüssel: Erstellen oder Abrufen eines geheimen Clientschlüssels für Ihren Dienstprinzipal aus dem Azure-Portal.
Erstellen einer M-Abfragefunktion zum Aufrufen des Endpunkts
In Dataflow Gen2 können Sie eine benutzerdefinierte M-Abfragefunktion erstellen, die sich mithilfe des Dienstprinzipals authentifiziert und den ML-Modellendpunkt aufruft.
Wählen Sie in Ihrem Dataflow Gen2 Daten abrufen>Leere Abfrage aus.
Oder rufen Sie die Daten ab, die Sie anreichern möchten, und öffnen Sie dann den erweiterten Editor über die Registerkarte " Start ".
Ersetzen Sie die Abfrage durch den folgenden M-Funktionscode:
let CallMLEndpoint = (endpointUrl as text, tenantId as text, clientId as text, clientSecret as text, inputData as any) => let // Get access token using service principal tokenUrl = "https://login.microsoftonline.com/" & tenantId & "/oauth2/v2.0/token", tokenBody = "client_id=" & clientId & "&scope=https://api.fabric.microsoft.com/.default" & "&client_secret=" & clientSecret & "&grant_type=client_credentials", tokenResponse = Web.Contents( tokenUrl, [ Headers = [#"Content-Type" = "application/x-www-form-urlencoded"], Content = Text.ToBinary(tokenBody) ] ), tokenJson = Json.Document(tokenResponse), accessToken = tokenJson[access_token], // Call ML endpoint with bearer token requestBody = Json.FromValue(inputData), response = Web.Contents( endpointUrl, [ Headers = [ #"Content-Type" = "application/json", #"Authorization" = "Bearer " & accessToken ], Content = requestBody ] ), result = Json.Document(response) in result in CallMLEndpointBenennen Sie die Abfrage in CallMLEndpoint um, indem Sie im Bereich "Abfragen " mit der rechten Maustaste auf die Abfrage klicken.
Verwenden der Funktion im Datenfluss
Nachdem Sie die Funktion erstellt haben, können Sie sie verwenden, um den ML-Endpunkt für jede Zeile in Ihren Daten aufzurufen:
Laden oder Herstellen einer Verbindung mit Den Quelldaten im Datenfluss.
Fügen Sie eine benutzerdefinierte Spalte hinzu, die die ML-Endpunktfunktion aufruft. Wählen Sie Spalte hinzufügen>Benutzerdefinierte Spalte aus.
Verwenden Sie die folgende Formel, um Ihren Endpunkt aufzurufen (ersetzen Sie die Parameter durch Ihre tatsächlichen Werte):
CallMLEndpoint( "<your-machine-learning-endpoint-url>", "<your-tenant-id>", "<your-client-id>", "<your-client-secret>", [input1 = [Column1], input2 = [Column2]] )Die Funktion gibt das Vorhersageergebnis aus dem Machine Learning-Modell zurück, das Sie in nachfolgenden Transformationsschritten erweitern und verwenden können.
Bewährte Methoden
Sichere Anmeldeinformationen: Erwägen Sie die Verwendung von Dataflow Gen2-Parametern oder die Integration variabler Bibliotheken , um vertrauliche Werte wie geheime Clientschlüssel zu speichern, anstatt sie zu codieren.
Fehlerbehandlung: Fügen Sie Ihrer M-Abfrage Logik zur Fehlerbehandlung hinzu, um Endpunktfehler oder Timeoutszenarien ordnungsgemäß zu behandeln.
Verfügbarkeit von Endpunkten: Stellen Sie sicher, dass Ihr Endpunkt für maschinelles Lernen aktiv ist, bevor Sie den Datenfluss ausführen. Inaktive Endpunkte führen dazu, dass die Datenflussaktualisierung fehlschlägt. Deaktivieren Sie die automatische Schlafmodusfunktion, wenn Sie den Endpunkt regelmäßig aufrufen möchten.
Leistung: Das Aufrufen von Machine Learning-Endpunkten für jede Zeile kann für große Datasets langsam sein. Erwägen Sie das Filtern oder Sampling von Daten, bevor Sie Vorhersagen anwenden.
Überlegungen und Einschränkungen
- Die Dienstprinzipalauthentifizierung ist für das Aufrufen von Machine Learning-Endpunkten von Dataflow Gen2 erforderlich.
- Das Aufrufen von Machine Learning-Endpunkten verursacht Kosten sowohl für den Datenfluss-Compute als auch für den Verbrauch der Machine Learning-Endpunkte. Überwachen Sie die Fabric-Kapazitätsauslastung entsprechend.
Verwandte Inhalte
- Weitere Informationen zu Machine Learning-Modellendpunkten
- Übersicht über Dataflow Gen2
- Informationen zur Dienstprinzipalunterstützung in Data Factory
- Informationen zu Dataflow Gen2-Parametern