Поделиться через


Интеграция База данных Azure для PostgreSQL со службами Машинное обучение Azure

Расширение ИИ Azure позволяет вызывать любые модели машинного обучения, развернутые на Машинное обучение Azure сетевых конечных точках из SQL. Эти модели можно использовать в каталоге Машинное обучение Azure или пользовательских моделях, которые обучены и развернуты.

Необходимые компоненты

Примечание.

Вы можете изучить Машинное обучение Azure примеры.

Настройка конечной точки Машинное обучение Azure

В Студия машинного обучения Azure в разделе "Конечные>точки" выберите использование конечной точки>, вы можете найти универсальный код ресурса (URI) конечной точки и ключ для сетевой конечной точки. Используйте эти значения, чтобы настроить azure_ai расширение для использования конечной точки вывода в сети.

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

azure_ml.invoke

Оценивает входные данные, вызывающие развертывание модели Машинное обучение Azure в сетевой конечной точке.

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

Аргументы

input_data

jsonb json, содержащий полезные данные запроса для модели.

deployment_name

textимя развертывания, соответствующего модели, развернутой в конечной точке вывода в интернете Машинное обучение Azure

timeout_ms

integer DEFAULT NULL время ожидания в миллисекундах, после чего операция остановлена. Развертывание модели может иметь время ожидания, указанное ниже параметра времени ожидания в определяемой пользователем функции. Если это время ожидания превышено, операция оценки завершится ошибкой.

throw_on_error

boolean DEFAULT true при ошибке функция вызывает исключение, что приводит к откату транзакций упаковки.

max_attempts

integer DEFAULT 1число повторных попыток расширения, вызывающего конечную точку Машинное обучение Azure, если она завершается ошибкой повторной попытки.

retry_delay_ms

integer DEFAULT 1000Время (миллисекунда), которое ожидает расширение, перед вызовом конечной точки Машинное обучение Azure, когда она завершается сбоем с любой повторяющейся ошибкой.

Возвращаемый тип

jsonb Вывод оценки для модели, которая была вызвана в JSONB.

Примеры

Вызов модели машинного обучения

При этом модель вызывается с помощью input_data и возвращает полезные данные jsonb.

-- 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' )