Вызов моделей Машинное обучение Azure

Завершено

Схема azure_ml позволяет базе данных взаимодействовать с возможностями пользовательских моделей машинного обучения. Используя схемуazure_ml, вы можете легко интегрировать базу данных PostgreSQL с службами Машинное обучение Azure. Эта интеграция позволяет развертывать и обслуживать модели машинного обучения непосредственно из базы данных, делая вывод в режиме реального времени эффективным и масштабируемым.

Вывод в режиме реального времени со схемой azure_ml

При использовании azure_ai расширения azure_ml схема предоставляет функцию для выполнения вывода в режиме реального времени непосредственно из базы данных. Функция inference в этой схеме предназначена для упрощения прогнозирования или создания выходных данных с помощью обученной модели из Машинное обучение Azure. При развертывании модели функция вывода позволяет вызывать модель и получать прогнозы по новым данным.

azure_ml.inference(jsonb,integer,boolean,text)

Функция inference() ожидает следующие входные параметры:

Параметр Тип По умолчанию. Description
input jsonb Объект JSON, содержащий объект, необходимый input_data для взаимодействия с моделями Машинное обучение Azure.
timeout_ms integer NULL::integer Время ожидания...
throw_on_error boolean true Desc...
deployment_name text NULL::text (Необязательно) Имя развертывания модели для целевого объекта в указанной конечной точке Машинное обучение Azure.

Машинное обучение Azure конечные точки вывода ожидают объект нотации объектов JavaScript (JSON) в качестве входных данных. Однако структура этого объекта зависит от базовой модели. Например, модель регрессии, обученная прогнозировать ежедневные цены на аренду жилья для краткосрочной аренды жилья в сиэтле, учитывая конкретные входные данные, такие как район, ZIP-код, количество спальней и количество ванных комнат, имеет следующую форму:

{
  "input_data": {
    "columns": [
      "host_is_superhost",
      "host_has_profile_pic",
      "host_identity_verified",
      "neighbourhood_group_cleansed",
      "zipcode",
      "property_type",
      "room_type",
      "accommodates",
      "bathrooms",
      "bedrooms",
      "beds"
    ],
    "index": [0],
    "data": [["False", "False", "False", "Central Area", "98122", "House", "Entire home/apt", 4, 1.5, 3, 3]]
  }
}

Ожидаемая структура входных объектов может быть извлечена, проверив определение Swagger, связанное с развернутой конечной точкой. Это определение указывает ServiceInput и ServiceOutput структуры, которые можно использовать для определения входных и выходных данных.

Настройка подключения к Машинное обучение Azure

Прежде чем использовать azure_ml.inference() функцию для вывода в режиме реального времени, необходимо настроить расширение с помощью конечной точки и ключа оценки Машинное обучение Azure. Значением azure_ml.scoring_endpoint является конечная точка REST для развернутой модели. Значением azure_ml.endpoint_key может быть первичный или вторичный ключ для этой конечной точки.

SELECT azure_ai.set_setting('azure_ml.scoring_endpoint', '{endpoint}');
SELECT azure_ai.set_setting('azure_ml.endpoint_key','{api-key}');