Panoramica dell'AI generativa
Questo documento descrive le funzioni di intelligenza artificiale (AI) generativa supportate da BigQuery. Queste funzioni accettano input in linguaggio naturale e utilizzano modelli Vertex AI preaddestrati e modelli BigQuery integrati.
Panoramica
BigQuery offre una serie di funzioni di AI per aiutarti a svolgere attività come le seguenti:
- Generare contenuti creativi.
- Analizzare, rilevare il sentiment e rispondere a domande su testo o dati non strutturati, come le immagini.
- Riassumere le idee o le impressioni chiave trasmesse dai contenuti.
- Estrarre dati strutturati dal testo.
- Classificare testo o dati non strutturati in categorie definite dall'utente.
- Generare embedding per cercare testo, immagini e video simili.
- Valutare gli input per classificarli in base alla qualità, alla somiglianza o ad altri criteri.
Le seguenti categorie di funzioni di AI ti aiutano a svolgere queste attività:
Funzioni di AI per finalità generali: queste funzioni ti offrono il controllo completo e la trasparenza sulla scelta del modello, del prompt e dei parametri da utilizzare.
Eseguire l'inferenza LLM, ad esempio per rispondere a domande sui dati
AI.GENERATEè la funzione di inferenza più flessibile, che ti consente di analizzare qualsiasi dato strutturato o non strutturato.AI.GENERATE_TEXTè una versione con valori di tabella diAI.GENERATEche supporta anche i modelli partner e i modelli open.
Generare output strutturati, ad esempio estrarre nomi, indirizzi o descrizioni di oggetti da testo, documenti o immagini.
AI.GENERATE, quando specifichi uno schema di output.AI.GENERATE_TABLEè una versione con valori di tabella diAI.GENERATEche chiama un modello remoto e ti consente di specificare uno schema di output personalizzato.- Se lo schema di output ha un solo campo, puoi utilizzare una delle funzioni specializzate:
AI.GENERATE_BOOL,AI.GENERATE_DOUBLEoAI.GENERATE_INT.
Generare embedding per la ricerca semantica e il clustering
AI.EMBED: crea un embedding da dati di testo o immagine.AI.GENERATE_EMBEDDING: una funzione con valori di tabella che aggiunge una colonna di dati di testo, immagine, audio, video o documento incorporati alla tabella.
Funzioni di AI gestite: queste funzioni hanno una sintassi semplificata e sono ottimizzate per costi e qualità.
Filtrare i dati con condizioni in linguaggio naturale
AI.IF
Valutare l'input, ad esempio in base alla qualità o al sentiment
AI.SCORE
Classificare l'input in categorie definite dall'utente
AI.CLASSIFY
Funzioni specifiche per le attività: queste funzioni utilizzano le API Cloud AI per aiutarti a svolgere attività come l'elaborazione del linguaggio naturale, la traduzione automatica, l'elaborazione dei documenti, la trascrizione audio e la visione artificiale.
Funzioni di AI per finalità generali
Le funzioni di AI per finalità generali ti offrono il controllo completo e la trasparenza sulla scelta del modello, del prompt e dei parametri da utilizzare. Il loro output include informazioni dettagliate sulla chiamata al modello, inclusi lo stato e la risposta completa del modello, che potrebbero includere informazioni sulla valutazione di sicurezza o sulle citazioni.
Eseguire l'inferenza LLM
La funzione AI.GENERATE
è una funzione di inferenza flessibile che funziona inviando richieste a un modello Gemini di Vertex AI e restituendo la risposta del modello. Puoi utilizzare questa funzione per analizzare dati di testo, immagine, audio, video o PDF. Ad esempio, potresti analizzare le immagini di mobili per la casa per generare testo per una colonna design_type, in modo che lo SKU dei mobili abbia una descrizione associata, ad esempio mid-century modern o farmhouse.
Puoi eseguire attività di AI generativa utilizzando i modelli remoti in
BigQuery ML per fare riferimento ai modelli sottoposti a deployment
o ospitati in Vertex AI con la
AI.GENERATE_TEXT funzione con valori di tabella.
Puoi utilizzare i seguenti tipi di
modelli remoti:
Modelli remoti su uno dei modelli Gemini disponibili a livello generale o in anteprima per analizzare contenuti di testo, immagine, audio, video o PDF da tabelle standard o tabelle di oggetti con un prompt che fornisci come argomento della funzione.
Modelli remoti su Anthropic Claude, Mistral AI o Llama o modelli open supportati per analizzare un prompt che fornisci in una query o da una colonna in una tabella standard.
Utilizza i seguenti argomenti per provare la generazione di testo in BigQuery ML:
- Generare testo utilizzando un modello Gemini e la funzione
AI.GENERATE_TEXT. - Generare testo utilizzando un modello Gemma e la funzione
AI.GENERATE_TEXT. - Analizzare le immagini con un modello Gemini.
- Generare testo utilizzando la funzione
AI.GENERATE_TEXTcon i tuoi dati. - Ottimizzare un modello utilizzando i tuoi dati.
Per alcuni modelli, puoi scegliere di configurare l'ottimizzazione supervisionata, che ti consente di addestrare il modello sui tuoi dati per renderlo più adatto a l tuo caso d'uso. Tutta l'inferenza avviene in Vertex AI. I risultati vengono archiviati in BigQuery.
Generare dati strutturati
La generazione di dati strutturati è molto simile alla generazione di testo, tranne per il fatto che puoi formattare la risposta del modello specificando uno schema SQL. Ad esempio, potresti generare una tabella che contiene il nome, il numero di telefono, l'indirizzo, la richiesta e il preventivo di un cliente da una trascrizione di una telefonata.
Puoi generare dati strutturati nei seguenti modi:
La
AI.GENERATEfunzione chiama un endpoint Vertex AI e può generare un valoreSTRUCTcon il tuo schema personalizzato.Per provarlo, scopri come utilizzare l'output strutturato quando chiami la funzione
AI.GENERATE.La funzione
AI.GENERATE_TABLEchiama un modello remoto ed è una funzione con valori di tabella che genera una tabella con il tuo schema personalizzato.Per provare a creare dati strutturati, consulta Generare dati strutturati utilizzando la funzione
AI.GENERATE_TABLE.Per un singolo campo di output, puoi utilizzare una delle seguenti funzioni di inferenza specializzate:
Generare embedding
Un embedding è un vettore numerico ad alta dimensionalità che rappresenta una determinata entità, come un testo o un file audio. La generazione di embedding ti consente di acquisire la semantica dei dati in modo da semplificarne il ragionamento e il confronto.
Ecco alcuni casi d'uso comuni per la generazione di embedding:
- Utilizzare la Retrieval-Augmented Generation (RAG) per aumentare le risposte del modello alle query degli utenti facendo riferimento a dati aggiuntivi provenienti da un'origine attendibile. La RAG offre una migliore accuratezza fattuale e coerenza delle risposte, oltre a fornire l'accesso a dati più recenti rispetto ai dati di addestramento del modello.
- Eseguire la ricerca multimodale. Ad esempio, utilizzare l'input di testo per cercare immagini.
- Eseguire la ricerca semantica per trovare elementi simili per suggerimenti, sostituzioni e deduplicazione dei record.
- Creare embedding da utilizzare con un modello K-means per il clustering.
Per saperne di più su come generare embedding e utilizzarli per eseguire queste attività, consulta l' Introduzione agli embedding e alla ricerca vettoriale.
Funzioni di AI gestite
Le funzioni di AI gestite sono progettate appositamente per automatizzare le attività di routine, come la classificazione, l'ordinamento o il filtraggio. Queste funzioni utilizzano Gemini e non richiedono personalizzazione. BigQuery utilizza l'ingegneria dei prompt e può selezionare il modello e i parametri appropriati da utilizzare per l'attività specifica per ottimizzare la qualità e la coerenza dei risultati. Ogni funzione restituisce un valore scalare, ad esempio BOOL, FLOAT64 o STRING, e non include informazioni sullo stato aggiuntive dal modello.
Sono disponibili le seguenti funzioni di AI gestite:
AI.IF: filtra il testo o i dati multimodali, ad esempio in una clausolaWHEREoJOIN, in base a un prompt. Ad esempio, potresti filtrare le descrizioni dei prodotti in base a quelle che descrivono un articolo che sarebbe un buon regalo.AI.SCORE: valuta gli input in base a un prompt per classificare le righe in base alla qualità, alla somiglianza o ad altri criteri. Puoi utilizzare questa funzione in una clausolaORDER BYper estrarre i primi K elementi in base al punteggio. Ad esempio, potresti trovare le 10 recensioni degli utenti più positive o negative per un prodotto.AI.CLASSIFY: classifica il testo in categorie definite dall'utente. Puoi utilizzare questa funzione in una clausolaGROUP BYper raggruppare gli input in base alle categorie che definisci. Ad esempio, potresti classificare i ticket di assistenza in base al fatto che siano relativi a fatturazione, spedizione, qualità del prodotto o altro.
Per un tutorial che mostra esempi di come utilizzare queste funzioni, consulta Eseguire l'analisi semantica con le funzioni di AI gestite.
Per un tutorial sui blocchi note che mostra come utilizzare le funzioni di AI gestite e per finalità generali, consulta Analisi semantica con le funzioni di AI.
Funzioni specifiche per le attività
Oltre alle funzioni più generali descritte nelle sezioni precedenti, puoi sviluppare soluzioni specifiche per le attività in BigQuery ML utilizzando le API Cloud AI. Le attività supportate includono:
- Elaborazione del linguaggio naturale
- Traduzione automatica
- Elaborazione dei documenti
- Trascrizione audio
- Visione artificiale
Per saperne di più, consulta Panoramica delle soluzioni specifiche per le attività.
Località
Le località supportate per i modelli di generazione di testo e embedding variano in base al tipo e alla versione del modello che utilizzi. Per saperne di più, consulta Località.
Prezzi
Ti vengono addebitate le risorse di calcolo che utilizzi per eseguire query sui modelli. I modelli remoti effettuano chiamate ai modelli Vertex AI, pertanto le query sui modelli remoti comportano anche addebiti da Vertex AI.
Per saperne di più, consulta Prezzi di BigQuery ML.
Monitorare i costi
Le funzioni di AI generativa in BigQuery funzionano inviando richieste a Vertex AI, che possono comportare costi. Per monitorare i costi di Vertex AI sostenuti da un job eseguito in BigQuery:
- Visualizza i report sulla fatturazione in fatturazione Cloud.
Utilizza i filtri per perfezionare i risultati.
Per i servizi, seleziona Vertex AI.
Per visualizzare gli addebiti per un job specifico, filtra in base all'etichetta.
Imposta la chiave su
bigquery_job_id_prefixe il valore sull' ID job del tuo job. Se l'ID job è più lungo di 63 caratteri, utilizza solo i primi 63 caratteri. Se l'ID job contiene caratteri maiuscoli, convertili in minuscoli. In alternativa, puoi associare i job a un'etichetta personalizzata per aiutarti a cercarli in un secondo momento.
Potrebbero essere necessarie fino a 24 ore prima che alcuni addebiti vengano visualizzati in Fatturazione Cloud.
Monitoraggio
Per comprendere meglio il comportamento delle funzioni di AI che chiami in BigQuery, puoi abilitare la registrazione di richieste e risposte. Per registrare l'intera richiesta e la risposta inviate e ricevute da Vertex AI:
Abilita i log di richiesta-risposta in Vertex AI. I log vengono archiviati in BigQuery. Devi abilitare separatamente il logging per ogni foundation model e regione diversi. Per registrare le query eseguite nella regione
us, specifica laus-central1regione nella richiesta. Per registrare le query eseguite nella regioneeu, specifica la regioneeurope-west4nella richiesta.Esegui una query utilizzando una funzione AI che effettua una chiamata a Vertex AI utilizzando il modello per cui hai abilitato il logging nel passaggio precedente.
Per visualizzare la richiesta e la risposta complete di Vertex AI, esegui una query sulla tabella di logging per le righe in cui il
labels.bigquery_job_id_prefixcampo dellafull_requestcolonna corrisponde ai primi 63 caratteri del tuo ID job. Facoltativamente, puoi utilizzare un'etichetta di query personalizzata per aiutarti a cercare la query nei log.Ad esempio, puoi utilizzare una query simile alla seguente:
SELECT * FROM `my_project.my_dataset.request_response_logging` WHERE JSON_VALUE(full_request, '$.labels.bigquery_job_id_prefix') = 'bquxjob_123456...';
Passaggi successivi
- Per un'introduzione all'AI e al ML in BigQuery, consulta Introduzione all'AI e al ML in BigQuery.
- Per saperne di più sull'esecuzione dell'inferenza sui modelli di machine learning, consulta Panoramica dell'inferenza del modello.
- Per saperne di più sulle istruzioni e sulle funzioni SQL supportate per i modelli di AI generativa, consulta Percorsi utente end-to-end per i modelli di AI generativa.