Freigeben über


Abfragen eines bereitgestellten Modells mit ai_query()

Wichtig

Dieses Feature befindet sich in der Public Preview.

In diesem Artikel wird beschrieben, wie Sie einen Modellbereitstellungsendpunkt über SQL mit ai_query() abfragen.

Was ist ai_query()?

Die ai_query()-Funktion ist eine integrierte SQL-Funktion in Azure Databricks, die Teil von KI-Funktionen ist. Diese Typen von Modellen können über SQL-Abfragen zugänglich sein:

  • Benutzerdefinierte Modelle, die von einem modellorientierten Endpunkt gehostet werden.
  • Modelle, die von Databricks Foundation Model-APIs gehostet werden.
  • Externe Modelle (Drittanbietermodelle, die außerhalb von Databricks gehostet werden).

Syntax und Entwurfsmuster finden Sie unter ai_query-Funktion.

Wenn diese Funktion zum Abfragen eines Modellbereitstellungsendpunkts verwendet wird, ist sie nur in Arbeitsbereichen und Regionen verfügbar, in denen die Modellbereitstellung verfügbar und aktiviert ist.

Anforderungen

Abfragen des Endpunkts mit ai_query()

Sie können das Modell hinter dem Endpunkt mithilfe von ai_query() für SQL-Warehouses vom Typ „Serverlos“ oder „Pro“ abfragen. Informationen zum Bewerten von Anforderungs- und Antwortformaten finden Sie unter "Abfragegenerive KI-Modelle".

Hinweis

  • Für Databricks Runtime 14.2 und höher wird diese Funktion in Notebookumgebungen unterstützt, einschließlich Databricks-Notebooks und -Aufträge.
  • Für Databricks Runtime 14.1 und früher wird diese Funktion in Notebookumgebungen, einschließlich Databricks-Notebooks, nicht unterstützt.

Beispiel: Abfragen eines großen Sprachmodells

Das folgende Beispiel fragt das Modell hinter dem Endpunkt sentiment-analysis mit dem Dataset text ab und gibt den Rückgabetyp der Anforderung an.

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

Beispiel: Abfragen eines Vorhersagemodells

Im folgenden Beispiel wird ein Klassifizierungsmodell hinter dem spam-classification-Endpunkt abgefragt, um vorherzusagen, ob es sich bei text um Spam in der inbox_messages-Tabelle handelt. Das Modell verwendet drei Eingabefeatures: Zeitstempel, Absender, Text. Das Modell gibt ein boolesches Array zurück.

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