Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Utilizzare
Importante
Questa funzionalità è in Anteprima Pubblica.
ai_query è una funzione di intelligenza artificiale per utilizzo generico che consente di eseguire query su qualsiasi modello di intelligenza artificiale supportato direttamente da SQL o Python. A differenza delle funzioni di intelligenza artificiale specifiche dell'attività, ottimizzate per una singola attività, ai_query offre il controllo completo sul modello, sul prompt e sui parametri.
Per la sintassi completa e il riferimento ai parametri, vedere ai_query funzione.
Quando usare ai_query
Databricks consiglia di iniziare con una funzione di intelligenza artificiale specifica per l'attività quando quella corrisponde all'obiettivo. Usare ai_query quando una funzione specifica dell'attività non soddisfa le proprie esigenze. Ad esempio, quando è necessario:
- Controllare più precisamente il prompt, i parametri del modello o il formato di output
- Eseguire una query su un modello personalizzato, ottimizzato o esterno
- Necessità di flessibilità per ottimizzare ulteriormente la velocità effettiva o la qualità
Procedure consigliate
- Usare modelli di base pre-distribuiti. Usare gli endpoint del modello di base ospitati da Databricks (preceduti da
databricks-), anziché gli endpoint con throughput allocato. Questi endpoint sono completamente gestiti e ridimensionati automaticamente senza provisioning o configurazione. - Selezionare un modello ottimizzato per l'inferenza batch. Databricks ottimizza modelli specifici per carichi di lavoro batch con velocità effettiva elevata. L'uso di un modello non ottimizzato può comportare una riduzione della velocità effettiva e tempi di completamento del processo più lunghi. Vedere Modelli supportati per l'elenco completo dei modelli ottimizzati per batch.
- Inviare il set di dati completo in una singola query. Le funzioni di intelligenza artificiale gestiscono automaticamente la parallelizzazione, i tentativi e il ridimensionamento. La suddivisione manuale dei dati in batch di piccole dimensioni può ridurre la velocità effettiva.
- Impostare
failOnErrorsufalseper carichi di lavoro di grandi dimensioni. Ciò consente al processo di completare e restituire messaggi di errore per le righe non riuscite, in modo da mantenere i risultati riusciti senza rielaborare l'intero set di dati.
Modelli supportati
ai_query supporta i modelli di Azure Databricks pre-distribuiti, i modelli portati dall'utente e i modelli esterni.
La tabella seguente riepiloga i tipi di modello supportati, i modelli associati e i requisiti di configurazione degli endpoint per ognuno di essi.
| Tipo | Descrizione | Modelli supportati | Requisiti |
|---|---|---|---|
| Modelli pre-distribuiti | Azure Databricks ospita questi modelli di base e offre endpoint preconfigurati su cui è possibile eseguire query usando ai_query. Vedere Modelli di base supportati in Mosaic AI Model Serving per i quali sono supportati i modelli per ogni funzionalità di gestione dei modelli e la relativa disponibilità dell'area. |
Questi modelli sono supportati e ottimizzati per iniziare a usare l'inferenza batch e i flussi di lavoro di produzione:
Altri modelli ospitati in Azure Databricks sono disponibili per l'uso con Funzioni di intelligenza artificiale, ma non sono consigliati per i flussi di lavoro di produzione di inferenza batch su larga scala. Questi altri modelli vengono resi disponibili per l'inferenza in tempo reale usando le API del modello di base con pagamento in base al token. |
Databricks Runtime 15.4 LTS o versione successiva è necessario per usare questa funzionalità. Non richiede alcun provisioning o configurazione degli endpoint. L'uso di questi modelli è soggetto alle condizioni di sviluppo del modello applicabile e alla disponibilità dell'area di Funzioni di intelligenza artificiale. |
| Porta il tuo modello | È possibile utilizzare modelli propri e interrogarli tramite le Funzioni di intelligenza artificiale. Funzioni di AI offrono flessibilità, in modo da poter eseguire query sui modelli per gli scenari di inferenza in tempo reale o per l'inferenza batch. |
|
|
Usare ai_query con i modelli di base
L'esempio seguente illustra come usare ai_query con un modello di base ospitato da Azure Databricks.
- Vedere
ai_queryla funzione per informazioni dettagliate sulla sintassi e parametri. - Consulta gli input multimodali per esempi di query multimodali.
- Vedere Esempi per scenari avanzati per indicazioni su come configurare i parametri per casi d'uso avanzati, ad esempio:
-
Gestire gli errori usando
failOnError - Output strutturati in Azure Databricks per sapere come specificare l'output strutturato per le risposte alle query.
-
Gestire gli errori usando
SELECT text, ai_query(
"databricks-meta-llama-3-3-70b-instruct",
"Summarize the given text comprehensively, covering key points and main ideas concisely while retaining relevant details and examples. Ensure clarity and accuracy without unnecessary repetition or omissions: " || text
) AS summary
FROM uc_catalog.schema.table;
Notebook di esempio: inferenza batch ed estrazione di dati strutturati
Il notebook di esempio seguente illustra come eseguire l'estrazione di dati strutturati di base usando ai_query per trasformare i dati non elaborati e non strutturati in informazioni organizzate e utilizzabili tramite tecniche di estrazione automatizzata. Questo notebook illustra anche come sfruttare la Agent Evaluation per valutare l'affidabilità usando i dati di base verificati.
Notebook per l'inferenza batch e l'estrazione di dati strutturati
Usare ai_query con i modelli di Machine Learning tradizionali
ai_query supporta modelli di Machine Learning tradizionali, inclusi quelli completamente personalizzati. Questi modelli devono essere distribuiti in endpoint di gestione del modello. Per informazioni dettagliate sulla sintassi e sui parametri, vedere ai_query funzione.
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
LIMIT 10
Notebook di esempio: inferenza batch con BERT per il riconoscimento di entità denominate
Il notebook seguente illustra un esempio di inferenza batch del modello di Machine Learning tradizionale usando BERT.
Inferenza batch con BERT per il riconoscimento di entità denominate nel notebook
Usare ai_query nei flussi di lavoro Python
ai_query può essere integrato in flussi di lavoro Python esistenti.
Di seguito l'output di ai_query viene scritto in una tabella di output.
df_out = df.selectExpr(
"ai_query('databricks-meta-llama-3-3-70b-instruct', CONCAT('Please provide a summary of the following text: ', text), modelParameters => named_struct('max_tokens', 100, 'temperature', 0.7)) as summary"
)
df_out.write.mode("overwrite").saveAsTable('output_table')