Eseguire query su un modello servito con ai_query()
Importante
Questa funzionalità è disponibile in anteprima pubblica.
Questo articolo descrive come eseguire query su un endpoint di gestione di un modello da SQL con ai_query()
.
Cos’è ai_query()
?
La ai_query()
funzione è una funzione SQL predefinita di Azure Databricks, parte delle funzioni di intelligenza artificiale. Consente di accedere a questi tipi di modelli dalle query SQL:
- Modelli personalizzati ospitati da un endpoint di gestione del modello.
- Modelli ospitati dalle API modello di Databricks Foundation.
- Modelli esterni (modelli di terze parti ospitati all'esterno di Databricks).
Per la sintassi e i modelli di progettazione, vedere ai_query funzione.
Quando questa funzione viene usata per eseguire query su un endpoint di gestione di un modello, è disponibile solo nelle aree di lavoro e nelle aree in cui La gestione dei modelli è disponibile e abilitata.
Requisiti
- Vedere Requisiti.
Eseguire query sull'endpoint con ai_query()
È possibile eseguire query sul modello dietro l'endpoint usando ai_query()
nei warehouse SQL serverless o pro. Per i formati di richiesta e risposta per l'assegnazione dei punteggi, vedere Modelli di intelligenza artificiale generativi di query.
Nota
- Per Databricks Runtime 14.2 e versioni successive, questa funzione è supportata negli ambienti notebook, inclusi notebook e processi di Databricks.
- Per Databricks Runtime 14.1 e versioni successive, questa funzione non è supportata negli ambienti notebook, inclusi i notebook di Databricks.
Esempio: Eseguire query su un modello linguistico di grandi dimensioni
Nell'esempio seguente viene eseguita una query sul modello dietro l'endpoint sentiment-analysis
con il text
set di dati e viene specificato il tipo restituito della richiesta.
SELECT text, ai_query(
"sentiment-analysis",
text,
returnType => "STRUCT<label:STRING, score:DOUBLE>"
) AS predict
FROM
catalog.schema.customer_reviews
Esempio: Eseguire una query su un modello predittivo
Nell'esempio seguente viene eseguita una query su un modello di classificazione dietro l'endpoint spam-classification
per stimare in batch se è text
posta indesiderata nella inbox_messages
tabella. Il modello accetta 3 funzionalità di input: timestamp, mittente, testo. Il modello restituisce una matrice 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