Até pouco tempo atrás, se você quisesse fazer análise de sentimento em 1 milhão de reviews de clientes, precisava extrair os dados do Data Warehouse, passar por um script Python, bater na API da OpenAI e devolver o resultado pro banco.
Isso é lento, caro e um pesadelo de segurança. Com o Snowflake Cortex, a IA foi trazida para o banco. Você roda modelos fundacionais (Llama 3, Mistral) usando funções SQL simples, direto na tabela.
Neste hands-on, vou mostrar 3 funções prontas para uso no seu ambiente Snowflake.
1. SNOWFLAKE.CORTEX.SENTIMENT (Análise Direta)
Sem precisar de prompt. Você joga a string de texto e ele devolve um score de -1 (negativo) a 1 (positivo).
SQL
SELECT
id_review,
texto_review,
SNOWFLAKE.CORTEX.SENTIMENT(texto_review) as score_sentimento
FROM raw_reviews
WHERE data_review = CURRENT_DATE();
2. SNOWFLAKE.CORTEX.TRANSLATE (Tradução em Batch)
Ideal para normalizar logs de sistemas globais ou tickets de suporte de diferentes idiomas para o inglês, direto na pipeline dbt.
SQL
SELECT
id_ticket,
SNOWFLAKE.CORTEX.TRANSLATE(descricao_chamado, 'pt', 'en') as descricao_ingles
FROM suporte_latam;
3. SNOWFLAKE.CORTEX.COMPLETE (Inferência Customizada)
Aqui é onde a mágica do LLM acontece. Você escolhe o modelo e passa o prompt para criar categorias, resumos ou extrair JSON.
SQL
SELECT
nome_produto,
SNOWFLAKE.CORTEX.COMPLETE(
'llama3-8b', -- Escolhendo o modelo
CONCAT('Crie uma descrição de marketing de 2 linhas para o produto: ', nome_produto)
) as descricao_marketing
FROM dim_produtos;
Você não precisou gerenciar chaves de API, não precisou lidar com timeout de rede e seus dados sensíveis nunca saíram do perímetro governado do seu Data Warehouse.
Top comments (0)