Invocación de modelos de Azure Machine Learning
El esquema de azure_ml
permite a la base de datos interactuar con las funcionalidades de los modelos de aprendizaje automático creados de forma personalizada. Mediante el uso del esquema de azure_ml
, puede integrar sin problemas la base de datos de PostgreSQL con Azure Machine Learning Services. Esta integración le permite implementar y servir modelos de aprendizaje automático directamente desde la base de datos, lo que hace que la inferencia en tiempo real sea eficaz y escalable.
Inferencia en tiempo real con el esquema de azure_ml
Cuando se usa la extensión azure_ai
, el esquema de azure_ml
proporciona una función para realizar la inferencia en tiempo real directamente desde la base de datos. La función inference
dentro de este esquema está diseñada para facilitar la realización de predicciones o la generación de salidas mediante un modelo entrenado de Azure Machine Learning. Al implementar un modelo, la función de inferencia permite invocar el modelo y obtener predicciones sobre nuevos datos.
azure_ml.inference(jsonb,integer,boolean,text)
La función inference()
espera los siguientes parámetros de entrada:
Parámetro | Tipo | Predeterminado | Descripción |
---|---|---|---|
entrada | jsonb |
Objeto JSON que contiene el objeto input_data necesario para interactuar con los modelos de Azure Machine Learning. |
|
timeout_ms | integer |
NULL::integer |
Tiempo de espera... |
throw_on_error | boolean |
true |
Desc... |
nombre_de_despliegue | text |
NULL::text |
(Opcional) Nombre de la implementación del modelo que se va a establecer como destino en el punto de conexión de Azure Machine Learning especificado. |
Los puntos de conexión de inferencia de Azure Machine Learning esperan un objeto de notación de objetos JavaScript (JSON) como entrada. Sin embargo, la estructura de este objeto depende del modelo subyacente. Por ejemplo, un modelo de regresión entrenado para predecir los precios diarios de alquiler para alquileres de viviendas a corto plazo en el área de Seattle, dadas entradas específicas como el vecindario, el código postal, el número de dormitorios y el número de baños, tiene la siguiente forma:
{
"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]]
}
}
La estructura de objetos de entrada esperada se puede recuperar examinando la definición de Swagger asociada al punto de conexión implementado. Esta definición especifica las estructuras ServiceInput
y ServiceOutput
, que puede usar para determinar las entradas y salidas.
Configuración de una conexión a Azure Machine Learning
Antes de usar la función azure_ml.inference()
para realizar la inferencia en tiempo real, debe configurar la extensión con el punto de conexión y la clave de puntuación de Azure Machine Learning. El valor de azure_ml.scoring_endpoint
es el punto de conexión REST del modelo implementado. El valor de azure_ml.endpoint_key
puede ser la clave principal o secundaria para este punto de conexión.
SELECT azure_ai.set_setting('azure_ml.scoring_endpoint', '{endpoint}');
SELECT azure_ai.set_setting('azure_ml.endpoint_key','{api-key}');