Freigeben über


Integrieren der Azure Database for PostgreSQL in Azure Machine Learning Services

Die Azure KI-Erweiterung bietet die Möglichkeit, alle Machine Learning-Modelle aufzurufen, die auf Azure Machine Learning-Onlineendpunkten in SQL bereitgestellt werden. Dabei kann es sich um Modelle aus dem Azure Machine Learning-Katalog oder benutzerdefinierte Modelle handeln, die trainiert und bereitgestellt werden.

Voraussetzungen

Hinweis

Sie können sich Azure Machine Learning-Beispiele ansehen.

Konfigurieren eines Azure Machine Learning-Endpunkts

In Azure Machine Learning Studio finden Sie unter Endpunkte>Endpunkt auswählen>Verbrauchen die Endpunkt-URI und den Schlüssel für den Onlineendpunkt. Verwenden Sie diese Werte, um die Erweiterung azure_ai so zu konfigurieren, dass der Online-Rückschluss-Endpunkt verwendet wird.

select azure_ai.set_setting('azure_ml.scoring_endpoint','<URI>');
select azure_ai.set_setting('azure_ml.endpoint_key', '<Key>');

azure_ml.invoke

Bewertet die Eingabedaten, die eine Azure Machine Learning-Modellbereitstellung auf einem Online-Endpunkt aufrufen.

azure_ml.invoke(input_data jsonb, timeout_ms integer DEFAULT NULL, throw_on_error boolean DEFAULT true, deployment_name text DEFAULT NULL)

Argumente

input_data

jsonb json mit der Anforderungsnutzlast für das Modell.

deployment_name

text Name der Bereitstellung, die dem Modell entspricht, das auf dem Azure Machine Learning Online-Rückschluss-Endpunkt bereitgestellt wird.

timeout_ms

integer DEFAULT NULL Timeout in Millisekunden, nach dem der Vorgang beendet wird. Für die Bereitstellung eines Modells selbst kann ein Zeitlimit festgelegt werden, das niedriger ist als der Zeitlimit-Parameter in der benutzerdefinierten Funktion. Wenn dieses Zeitlimit überschritten wird, schlägt der Bewertungsvorgang fehl.

throw_on_error

boolean DEFAULT true Bei Fehler sollte die Funktion eine Ausnahme auslösen, die zu einem Rollback des Umbruchs von Transaktionen führt.

max_attempts

integer DEFAULT 1 Häufigkeit, mit der die Erweiterung das Aufrufen des Azure Machine Learning-Endpunkts wiederholt, wenn ein Fehler auftritt, der wiederholt werden kann

retry_delay_ms

integer DEFAULT 1000 Zeitdauer (Millisekunden), die die Erweiterung wartet, bevor sie den Azure Machine Learning-Endpunkt aufruft, wenn ein Fehler auftritt, der wiederholt werden kann

Rückgabetyp

jsonb Bewertungsausgabe für das Modell, das in JSONB aufgerufen wurde.

Beispiele

Aufrufen des Machine Learning-Modells

Dadurch wird das Modell mit input_data aufgerufen und eine JSONB-Nutzlast zurückgegeben.

-- Invoke model, input data depends on the model.
  SELECT * FROM azure_ml.invoke('
  {
    "input_data": [
      [1,2,3,4,5,6,7,8],
      [-1,-2,-3,-4,-5,-6,-7,-8]
    ],
    "params": {}
  }', deployment_name=>'Housingprediction' )

-- Get JSON elements from model output
SELECT jsonb_array_elements(invoke.invoke) as MedianHousePrediction
FROM azure_ml.invoke('
{
  "input_data": [
    [1,2,3,4,5,6,7,8],
    [-1,-2,-3,-4,-5,-6,-7,-8]
  ],
 "params": {}
}', deployment_name=>'Housingprediction' )