Share via


Interroger un modèle servi avec ai_query()

Important

Cette fonctionnalité est disponible en préversion publique.

Cet article explique comment interroger un point de terminaison de service de modèle à partir de SQL avec ai_query().

Qu'est-ce que ai_query() ?

La fonction ai_query() est une fonction intégrée Azure Databricks SQL faisant partie des fonctions IA. Elle permet à ces types de modèles d’être accessibles à partir de requêtes SQL :

  • Modèles personnalisés hébergés par un point de terminaison de mise en service de modèles.
  • Modèles hébergés par les API Databricks Foundation Model.
  • Modèles externes (modèles tiers hébergés à l’extérieur de Databricks).

Pour connaître la syntaxe et les modèles de conception, consultez la fonction ai_query.

Quand cette fonction est utilisée pour interroger un point de terminaison de mise en service de modèles, elle est uniquement disponible dans les espaces de travail et les régions où la Mise en service des modèles est disponible et activée.

Spécifications

Interroger le point de terminaison avec ai_query()

Vous pouvez interroger le modèle derrière le point de terminaison en utilisant ai_query() sur des entrepôts SQL serverless ou pro. Pour obtenir une demande de scoring et des formats de réponse, consultez Modèles de base pour les requêtes.

Remarque

  • Pour Databricks Runtime 14.2 et versions ultérieures, cette fonction est prise en charge dans les environnements de notebook, notamment les notebooks et les workflows Databricks.
  • Pour Databricks Runtime 14.1 et versions antérieures, cette fonction n’est pas prise en charge dans les environnements de notebook, y compris les notebooks Databricks.

Exemple : interroger un grand modèle de langage

L’exemple suivant interroge le modèle derrière le point de terminaison sentiment-analysis avec le jeu de données text et spécifie le type de retour de la requête.

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

Exemple : interroger un modèle prédictif

L’exemple suivant interroge un modèle de classification derrière le point de terminaison spam-classification pour prédire par lot si le text est un spam dans la table inbox_messages. Le modèle accepte 3 fonctionnalités d’entrée : timestamp, expéditeur, texte. Le modèle renvoie un tableau booléen.

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