AML-Fähigkeit

Note

Azure KI-Suche ist über das Azure Portal, REST-APIs und Azure SDKs verfügbar. Es unterstützt auch Foundry IQ, die verwaltete Wissensschicht, die Unternehmensinhalte in wiederverwendbare, berechtigungsfähige Wissensbasen für Agenten im Microsoft Foundry-Portal transformiert.

Wichtig

Die Unterstützung für Indexerverbindungen mit dem Modellkatalog befindet sich in der Vorschau unter zusätzlichen Nutzungsbedingungen. Vorschau-REST-APIs unterstützen diese Funktion.

Verwenden Sie die Fähigkeit AML, um die KI-Anreicherung mit einem bereitgestellten Basiseinbettungsmodell aus dem Microsoft Foundry-Modellkatalog oder einem benutzerdefinierten Azure Machine Learning (AML)-Modell zu erweitern. Ihre Daten werden im Geo verarbeitet, in dem Ihr Modell bereitgestellt wird.

Sie geben die AML-Fähigkeit in einem Skillset an, das dann Ihr bereitgestelltes Modell in eine KI-Anreicherungspipeline integriert. Die AML-Fähigkeit ist nützlich, um verarbeitungs- oder Rückschlüsse durchzuführen, die von integrierten Fähigkeiten nicht unterstützt werden. Beispiele hierfür sind das Generieren von Einbettungen mit Ihrem eigenen Modell und das Anwenden benutzerdefinierter Machine Learning-Logik auf angereicherte Inhalte.

Verwenden Sie für AML-Onlineendpunkte eine stabile API-Version oder eine entsprechende Azure SDK, um die AML-Fähigkeit aufzurufen. Verwenden Sie für Verbindungen mit dem Modellkatalog eine Vorschau-API-Version.

AML-Qualifikationsnutzung

Wie andere Fähigkeiten verfügt die AML-Fähigkeit über Eingaben und Ausgaben. Die Eingaben werden als JSON-Objekt an eine serverlose Bereitstellung aus dem Foundry-Modellkatalog oder einem AML-Onlineendpunkt gesendet. Die Ausgabe sollte einen Erfolgsstatuscode, eine JSON-Nutzlast und die Parameter enthalten, die durch Ihre AML-Qualifikationsdefinition angegeben wurden. Jede andere Antwort wird als Fehler betrachtet, und es werden keine Anreicherungen ausgeführt.

Der Indexer wiederholt zweimal die folgenden HTTP-Statuscodes:

  • 503 Service Unavailable
  • 429 Too Many Requests

AML-Fähigkeit für Modelle in Microsoft Foundry

Azure KI-Suche stellt den Microsoft Foundry Model Catalog Vectorizer bereit, der auch im Import data wizard für Abfragezeitverbindungen zum Modellkatalog verfügbar ist. Wenn Sie diesen Vektorizer für Abfragen verwenden möchten, ist die AML-Fähigkeit das Indizierungs-Gegenstück zum Generieren von Einbettungen mithilfe eines Modells aus dem Modellkatalog.

Während der Indizierung kann die AML-Fähigkeit eine Verbindung mit dem Modellkatalog herstellen, um Vektoren für den Index zu generieren. Zur Abfragezeit können Abfragen einen Vektorizer verwenden, um eine Verbindung mit demselben Modell herzustellen, um Textzeichenfolgen zu vektorisieren. Sie sollten die AML-Funktion und den Microsoft Foundry-Modellkatalog-Vektorisierer zusammen verwenden, damit für die Indizierung und die Abfragen dasselbe Einbettungsmodell verwendet wird. Weitere Informationen finden Sie unter Verwenden von Einbettungsmodellen aus dem Foundry-Modellkatalog.

Wir empfehlen die Verwendung des Assistenten zum Importieren von Daten, um ein Skillset zu generieren, das eine AML-Fähigkeit für bereitgestellte Einbettungsmodelle in Foundry enthält. Der Assistent generiert die AML-Qualifikationsdefinition für Eingaben, Ausgaben und Zuordnungen, die eine einfache Möglichkeit zum Testen eines Modells bieten, bevor Code geschrieben wird.

Voraussetzungen

@odata.type

Microsoft.Skills.Custom.AmlSkill

Qualifikationsparameter

Bei Parametern wird zwischen Groß- und Kleinschreibung unterschieden. Die von Ihnen verwendeten Parameter hängen davon ab, welche Authentifizierung Ihr Modellanbieter benötigt, falls vorhanden.

Parametername Beschreibung
uri (Erforderlich für die Schlüsselauthentifizierung) Der Ziel-URI der serverlosen Bereitstellung aus dem Microsoft Foundry-Modellkatalog oder dem Bewertungs-URI des AML-Onlineendpunkts. Nur das HTTPS-URI-Schema ist zulässig. Unterstützte Modelle aus dem Modellkatalog (nur serverlose Bereitstellungen) sind:
  • Cohere-embed-v3-englisch
  • Cohere-embed-v3-multilingual
  • Cohere-embed-v4
key (Erforderlich für die Schlüsselauthentifizierung) Der API-Schlüssel des Modellanbieters.
resourceId (Erforderlich für tokenauthentifizierung) Die Azure Resource Manager Ressourcen-ID des Modellanbieters. Verwenden Sie für einen AML-Onlineendpunkt das format subscriptions/{guid}/resourceGroups/{resource-group-name}/Microsoft.MachineLearningServices/workspaces/{workspace-name}/onlineendpoints/{endpoint_name}.
region (Optional für die Tokenauthentifizierung) Die Region, in der der Modellanbieter bereitgestellt wird. Erforderlich, wenn sich die Region von der Region des Suchdiensts unterscheidet.
timeout (Optional) Das Timeout für den HTTP-Client, der den API-Aufruf vornimmt. Sie muss als XSD-Wert "dayTimeDuration" formatiert werden, bei dem es sich um eine eingeschränkte Teilmenge eines ISO 8601-Dauerwerts handelt. Beispiel PT60S : 60 Sekunden. Wenn nicht festgelegt, wird ein Standardwert von 30 Sekunden ausgewählt. Sie können das Timeout auf mindestens 1 Sekunde und maximal 230 Sekunden festlegen.
degreeOfParallelism (Optional) Die Anzahl der Aufrufe, die der Indexer parallel zum von Ihnen bereitgestellten Endpunkt führt. Sie können diesen Wert verringern, wenn Ihr Endpunkt unter zu hohem Anforderungsladeaufwand fehlschlägt. Sie können ihn auslösen, wenn Ihr Endpunkt mehr Anforderungen annehmen kann und Sie eine Erhöhung der Leistung des Indexers wünschen. Wenn nicht festgelegt, wird ein Standardwert von 5 verwendet. Sie können degreeOfParallelism auf mindestens 1 und maximal 10 festlegen.

Authentifizierung

Die AML-Fähigkeit bietet zwei Authentifizierungsoptionen:

  • Schlüsselbasierte Authentifizierung: Sie stellen einen statischen Schlüssel zum Authentifizieren von Bewertungsanforderungen aus der AML-Fähigkeit bereit. Legen Sie die uri- und key-Parameter für diese Verbindung fest.

  • Tokenbasierte Authentifizierung: Das Foundry Hub-basierte Projekt oder DER AML-Onlineendpunkt wird mithilfe der tokenbasierten Authentifizierung bereitgestellt. Der Azure KI-Suche Dienst muss über eine managed Identity und eine Rollenzuweisung für den Modellanbieter verfügen. Die AML-Fähigkeit verwendet dann die Suchdienstidentität, um sich beim Modellanbieter zu authentifizieren, ohne dass statische Schlüssel erforderlich sind. Die Identität des Suchdiensts muss über die Rolle Besitzer oder Mitwirkender verfügen. Legen Sie den resourceId Parameter fest und den region Parameter, wenn sich der Suchdienst in einer anderen Region als der Modellanbieter befindet.

Qualifikationseingaben

Qualifikationseingaben sind ein Knoten des angereicherten Dokuments, das während der Dokumententschlüsselung erstellt wurde. Dies kann z. B. das Stammdokument, ein normalisiertes Bild oder der Inhalt eines Blobs sein. Für diese Fähigkeit gibt es keine vordefinierten Eingaben. Für Eingaben sollten Sie einen oder mehrere Knoten angeben, die zum Zeitpunkt der Ausführung der AML-Fähigkeit aufgefüllt werden.

Skill-Ergebnisse

Skill-Ergebnisse sind neue Knoten eines angereicherten Dokuments, das vom Skill erstellt wurde. Für diese Fähigkeit gibt es keine vordefinierten Ausgaben. Für Ausgaben sollten Sie Knoten bereitstellen, die aus der JSON-Antwort Ihres AML-Skills aufgefüllt werden können.

Beispieldefinition

  {
    "@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
    "description": "A custom model that detects the language in a document.",
    "uri": "https://language-model.models.contoso.com/score",
    "context": "/document",
    "inputs": [
      {
        "name": "text",
        "source": "/document/content"
      }
    ],
    "outputs": [
      {
        "name": "detected_language_code"
      }
    ]
  }

Beispiel für die JSON-Eingabestruktur

Diese JSON-Struktur stellt die Nutzlast dar, die an Ihr Foundry Hub-basiertes Projekt oder AML-Onlineendpunkt gesendet wird. Die Felder der obersten Ebene der Struktur entsprechen den im inputs Abschnitt der Qualifikationsdefinition angegebenen "Namen". Die Werte dieser Felder stammen aus den "Quellen" dieser Felder, die aus einem Feld im Dokument oder einer anderen Fähigkeit stammen können.

{
  "text": "Este es un contrato en Inglés"
}

Beispielausgabe-JSON-Struktur

Die Ausgabe entspricht der Rückmeldung Ihres Foundry hubbasierten Projekts oder Ihres AML-Online-Endpoints. Der Modellanbieter sollte ausschließlich eine JSON-Nutzlast zurückgeben (überprüfbar durch Blick auf den Content-Type-Antwortheader) und ein Objekt sein, dessen Felder Anreicherungen sind, die den "Namen" im output entsprechen, und dessen Wert als Anreicherung betrachtet wird.

{
    "detected_language_code": "es"
}

Beispieldefinition für die Inline-Formgebung

  {
    "@odata.type": "#Microsoft.Skills.Custom.AmlSkill",
    "description": "A sample model that detects the language of sentence",
    "uri": "https://language-model.models.contoso.com/score",
    "context": "/document",
    "inputs": [
      {
        "name": "shapedText",
        "sourceContext": "/document",
        "inputs": [
            {
              "name": "content",
              "source": "/document/content"
            }
        ]
      }
    ],
    "outputs": [
      {
        "name": "detected_language_code"
      }
    ]
  }

Inline-Formgebung der Eingabe-JSON-Struktur

{
  "shapedText": { "content": "Este es un contrato en Inglés" }
}

JSON-Ausgabestruktur des Inlinestrukturierungsbeispiels

{
    "detected_language_code": "es"
}

Fehlerfälle

Zusätzlich zu Ihrem Foundry Hub-basierten Projekt oder einem AML-Onlineendpunkt, der nicht verfügbar ist oder nicht erfolgreiche Statuscodes sendet, werden die folgenden Fälle als Fehler betrachtet:

  • Der Modellanbieter gibt einen Erfolgsstatuscode zurück, aber die Antwort zeigt, dass es nicht application/json ist. Die Antwort ist somit ungültig, und es werden keine Anreicherungen durchgeführt.

  • Der Modellanbieter gibt ungültigen JSON-Code zurück.

Wenn der Modellanbieter nicht verfügbar ist oder einen HTTP-Fehler zurückgibt, wird ein freundlicher Fehler mit allen verfügbaren Details zum HTTP-Fehler dem Indexerausführungsverlauf hinzugefügt.