Cos'è Cortex AI SQL?
Le funzioni Cortex AISQL di Snowflake portano l'AI direttamente nelle Sue query SQL. Invece di esportare i dati per darli in pasto a un modello, basta aggiungere una colonna a una qualsiasi istruzione select e richiamare l'AI proprio dove risiedono i dati. Può analizzare testo, immagini e audio insieme ai dati strutturati grazie a funzioni come AI_COMPLETE, AI_EXTRACT, AI_CLASSIFY, AI_SUMMARIZE e altre ancora, tutte basate sui modelli di OpenAI, Anthropic, Meta, Mistral e altri.
Quello che spesso sfugge ai clienti Snowflake è che il pricing a token è radicalmente diverso da quello a warehouse a cui sono abituati. E i costi possono lievitare in fretta, se non si presta attenzione.
Ho visto team avviare un "test rapido" con Claude Opus e bruciare un'enormità di crediti in un pomeriggio. Non sapevano che anche i token di output vengono conteggiati, avevano scelto un modello costoso laddove uno più economico sarebbe bastato e non avevano alcun monitoraggio attivo per accorgersene.
In questo articolo vedremo come viene tariffato Cortex AISQL e Le mostreremo nel dettaglio come monitorarne i costi tramite le viste account_usage di Snowflake.
Come funziona Cortex AI SQL?
Usare le funzioni Cortex AISQL è immediato: si richiamano direttamente nelle istruzioni SQL come qualsiasi altra funzione. Ecco un esempio elementare che classifica il feedback dei clienti come positivo, negativo o neutro:
SELECT
customer_id,
feedback_text,
SNOWFLAKE.CORTEX.AI_CLASSIFY(
feedback_text,
['positive', 'negative', 'neutral']
) as sentiment
FROM customer_feedback
LIMIT 10;
L'unico prerequisito è che il Suo ruolo disponga del database role SNOWFLAKE.CORTEX_USER. Per impostazione predefinita viene assegnato al ruolo PUBLIC, quindi la maggior parte degli utenti ha già accesso.
Tutto qui. Nessuna chiave API esterna, nessuno spostamento di dati, nessuna infrastruttura da configurare. I modelli di AI girano direttamente nell'ambiente Snowflake.
Consulti sempre la Snowflake Credit Consumption Table
Prima di entrare nel merito dei costi di Cortex AISQL, vale la pena ricordare che tutti i dettagli sui prezzi di Snowflake sono riportati nella Credit Consumption Table, costantemente aggiornata. Nello screenshot qui sotto si vede chiaramente come il pricing dei vari modelli di AI vari in modo significativo. Claude-4-opus costa 12 crediti per milione di token, mentre alcuni modelli più piccoli si fermano a una frazione di credito per milione di token.
Come funziona il pricing di Cortex AI SQL?
Con le funzioni Cortex si paga per token elaborato (token di input + output per le funzioni generative, solo input per gli embedding).
Le funzioni generative come AI_COMPLETE, AI_CLASSIFY e AI_SUMMARIZE addebitano sia i token di input (il testo inviato al modello) SIA i token di output (la risposta generata dal modello). Se invia 100 token e ne riceve 200, sta pagando per 300 token complessivi.
La principale **funzione di embedding** è AI_EMBED, che vettorizza dati come testo o immagini. In questo caso vengono addebitati solo i token di input, dato che l'output è composto unicamente da numeri (non da testo generato).
Capire i token
- 1 token ≈ 4 caratteri di testo
- Usi la funzione
COUNT_TOKENSper stimare i costi prima di eseguire operazioni onerose - Per funzioni come
AI_COMPLETE,AI_CLASSIFYeAI_SUMMARIZEvengono conteggiati sia i token di input SIA quelli di output - Per
AI_EMBEDe per le funzioni di estrazione vengono conteggiati solo i token di input
Esempi di pricing
Riportiamo alcuni esempi per dare un'idea degli ordini di grandezza, ma Snowflake aggiorna i prezzi di continuo: faccia sempre riferimento alla Credit Consumption Table. Negli esempi usiamo un costo di 3 $ per credito a fini illustrativi.
Modelli piccoli:
openai-gpt-5-mini: 0,32 crediti = 0,96 $ per milione di tokenmistral-7b: 0,12 crediti = 0,36 $ per milione di token- Esempio:
- Analisi di 20.000 recensioni di prodotto con
openai-gpt-5-mini - Recensione media da 100 token l'una: 2M di token = ~1,92 $
- Analisi di 20.000 recensioni di prodotto con
Modelli medi:
llama3.1-70b: 1,21 crediti = 3,63 $ per milione di tokenopenai-gpt-4.1: 1,40 crediti = 4,20 $- Esempio: le stesse 20.000 recensioni con
llama3.1-70b= ~7,26 $
Modelli grandi (oltre 3 crediti per milione di token):
llama-3.1-405b: 3 crediti = 9 $ per milione di tokenclaude-4-opus: 12 crediti = 36 $ per milione di token- Esempio: le stesse 20.000 recensioni con
claude-4-opus= ~72 $
I fattori che moltiplicano i costi di Snowflake Cortex AI SQL
Alcuni fattori fanno bruciare i crediti più in fretta del previsto. Ecco a cosa prestare attenzione.
Gli output di grandi dimensioni moltiplicano rapidamente i costi, perché le funzioni generative addebitano sia i token di input sia quelli di output. Un riassunto prolisso da 500 parole costa 5 volte di più di uno conciso da 100 parole. Questo aspetto si governa con il prompt engineering.
La scelta del modello pesa molto più di quanto si creda: modelli premium come Claude Opus costano 37 volte di più rispetto a un modello base come GPT 5 mini, eppure per molte attività di classificazione o analisi del sentiment il modello più economico va benissimo.
Come monitorare costi e utilizzo di Cortex AI SQL
Snowflake mette a disposizione due viste dedicate per monitorare i costi delle funzioni Cortex AISQL, ciascuna con uno scopo diverso:
CORTEX_FUNCTIONS_USAGE_HISTORY – Dati di utilizzo aggregati su base oraria
- Raggruppa il consumo di token e crediti per funzione, modello e ora
- Non contiene l'ID della query, quindi non è possibile risalire a una specifica query, utente, ruolo, ecc.
- Ideale per analizzare pattern e trend di utilizzo complessivi
- Mostra quali funzioni e modelli generano i costi maggiori
- Dati aggregati in intervalli da 1 ora
CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY – Dettagli a livello di singola query
- Mostra il consumo di token e crediti per ogni singola query
- Indispensabile per individuare query o operazioni particolarmente costose
- Include gli ID delle query per analisi più approfondite
- Aiuta a individuare le query che vanno ottimizzate
Ecco alcune query di esempio per iniziare.
Riepilogo dei costi orari o giornalieri per funzione e modello:
-- Orario: basta selezionare ogni colonna dalla vista:
select
start_time,
end_time,
function_name,
model_name,
warehouse_id,
token_credits,
tokens
from
SNOWFLAKE.ACCOUNT_USAGE.CORTEX_FUNCTIONS_USAGE_HISTORY;
--giornaliero: basta aggregare
select
date_trunc('day',start_time) as date,
Espandi codice
Le 50 query più costose. Costo di ciascuna query, con testo della query, utente e warehouse:
SELECT
c.query_id,
q.query_text as query_text,
q.start_time,
q.execution_time / 1000 as execution_seconds,
c.function_name,
c.model_name,
c.tokens,
c.token_credits,
q.user_name,
q.warehouse_name,
FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY c
JOIN SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY q
ON c.query_id = q.query_id
WHERE q.start_time >= DATEADD(day, -7, CURRENT_TIMESTAMP())
Espandi codice
Mi sono imbattuto anche in una vista chiamata snowflake.account_usage.cortex_aisql_usage_history, della quale però non sono riuscito a trovare documentazione. Ha granularità a livello di query ID e fornisce usage_time, user_id e warehouse_id. Potrebbe trattarsi di una feature in preview non documentata.
Best practice e consigli per usare Cortex AI SQL
Dopo aver lavorato con diversi clienti sui costi di Cortex AISQL, ecco alcuni consigli.
Configuri alert, non solo dashboard
Le query di monitoraggio viste sopra sono inutili se nessuno le esegue. Per qualsiasi cosa voglia tenere d'occhio in Snowflake, può incapsulare l'SQL in un task pianificato con una Notification Integration, creando così un monitor personalizzato che invia alert a Slack o Teams. Se cerca un monitoraggio davvero semplice da configurare, dia un'occhiata ai monitor in SELECT.
Verifichi sempre prima il numero di token
Prima di elaborare 100.000 righe, esegua COUNT_TOKENS su un campione. Il conteggio dei token è quasi sempre più alto di quanto ci si aspetti. Un test rapido come SELECT AVG(COUNT_TOKENS(your_column)) FROM your_table LIMIT 1000 Le dirà subito con cosa ha a che fare.
Parta dal modello più piccolo che funzioni
Lo vedo di continuo: i team scelgono di default GPT-4 o i Claude più grandi perché sono i più noti e affidabili. Ma per la maggior parte delle attività di classificazione o analisi del sentiment, gpt-5-mini va benissimo e costa 10 volte meno. Provi un modello premium su 100 righe, poi confronti con il modello più economico. Potrebbe sorprenderLa scoprire che il modello piccolo produce risultati analoghi.
Chieda esplicitamente all'AI di rispondere in modo breve
Quando usa AI_COMPLETE o AI_SUMMARIZE, paga sia il prompt SIA la risposta. Se il prompt richiede spiegazioni dettagliate e sta elaborando migliaia di righe, quei token di output si accumulano in fretta. Sia esplicito nel chiedere risposte brevi.
Metta in cache i risultati o usi aggiornamenti incrementali
Se classifica le stesse descrizioni di prodotto ogni volta che qualcuno lancia un report, sta sprecando soldi. Materializzi i risultati dell'AI in una tabella. Sembra ovvio, eppure non tutti lo fanno.
Tenga d'occhio quali modelli vengono effettivamente usati
Esegua regolarmente la query "Costi per utente e warehouse". Capita spesso di scoprire qualcuno che ha fatto test con un modello costoso in dev senza mai passare a un'opzione più economica in produzione. O, peggio, di trovare una query fuori controllo che sta elaborando milioni di righe con uno dei modelli Claude più costosi.
In sintesi
Snowflake offre tutto il necessario per monitorare i costi di AISQL: viste account usage con il dettaglio dei costi, un pricing trasparente (anche se complesso) e funzionalità di alerting integrate. La vera sfida è cambiare modello mentale e abituarsi al pricing a token. Gli utenti Snowflake di lunga data ragionano istintivamente in termini di durata delle query e dimensione del warehouse, ma d'ora in avanti dovranno tenere d'occhio anche il numero di token e la scelta del modello. Tratti le prime settimane con Cortex AISQL come un periodo di rodaggio. Parta in piccolo, monitori in modo ossessivo e definisca dei pattern prima di scalare. Questo modello di pricing premia un'implementazione ragionata e punisce l'approccio "lo lancio su tutto e vediamo cosa succede". Ho visto team andare nel panico per costi AI andati fuori controllo, quando in realtà i modelli hanno prezzi più che ragionevoli, se usati con criterio. Se elabora quotidianamente dataset davvero enormi con le funzioni AI, parli con il Suo account team Snowflake del pricing a volume. Quando si raggiungono i milioni di token al giorno, c'è margine per negoziare tariffe migliori. Mi auguro che ora si senta a Suo agio nell'utilizzare le funzioni Cortex AISQL senza brutte sorprese in fattura. Mi piacerebbe conoscere le Sue esperienze con queste funzionalità.
Jeff è un consulente Data and Analytics con oltre 15 anni di esperienza nell'automazione degli insight e nell'uso dei dati per governare i processi di business. Sul fronte tecnologico è specializzato in Snowflake + dbt + Tableau. Sul fronte dei settori, vanta esperienza in Public Utility, Clinical Trials, Publishing, CPG e Manufacturing. Può contattarlo in qualsiasi momento all'indirizzo [email protected].