Consultar un modelo servido con ai_query()

Importante

Esta característica está en versión preliminar pública.

En este artículo se describe cómo consultar un modelo que sirve un punto de conexión desde SQL con ai_query().

¿Qué es ai_query()?

La función ai_query() es una función SQL de Azure Databricks integrada, parte de las Funciones de IA. Permite que estos tipos de modelos sean accesibles desde consultas SQL:

  • Modelos personalizados hospedados por un punto de conexión de servicio de modelos.
  • Modelos hospedados por las API de modelo de Databricks Foundation.
  • Modelos externos (modelos de terceros hospedados fuera de Databricks).

Para conocer la sintaxis y los patrones de diseño, consulte ai_query función.

Al utilizar esta función para consultar un punto de conexión de servicio de modelos, solo está disponible en áreas de trabajo y regiones en las que el Servicio de modelos está disponible y habilitado.

Requisitos

Consultar el punto final con ai_query()

Puede consultar el modelo detrás del punto de conexión mediante ai_query() almacenes de SQL sin servidor o pro. Para obtener formatos de solicitud y respuesta de puntuación, vea Modelos de base de consulta.

Nota:

  • Para Databricks Runtime 14.2 y versiones posteriores, esta función se admite en entornos de cuadernos, incluidos cuadernos y flujos de trabajo de Databricks.
  • Para Databricks Runtime 14.1 y versiones posteriores, esta función no se admite en entornos de cuadernos, incluidos los cuadernos de Databricks.

Ejemplo: Consulta de un modelo de lenguaje grande

El siguiente ejemplo consulta el modelo detrás del sentiment-analysispunto finaltext con el conjunto de datos y especifica el tipo de retorno de la solicitud.

SELECT text, ai_query(
    "sentiment-analysis",
    text,
    returnType => "STRUCT<label:STRING, score:DOUBLE>"
  ) AS predict
FROM
  catalog.schema.customer_reviews

Ejemplo: Consulta de un modelo predictivo

En el ejemplo siguiente se consulta un modelo de clasificación detrás del punto de conexión spam-classificationpara predecir por lotes si el correo no deseado text está en la tabla inbox_messages. El modelo toma 3 características de entrada: marca de tiempo, remitente, texto. El modelo devuelve una matriz booleana.

SELECT text, ai_query(
  endpoint => "spam-classification",
  request => named_struct(
    "timestamp", timestamp,
    "sender", from_number,
    "text", text),
  returnType => "BOOLEAN") AS is_spam
FROM catalog.schema.inbox_messages