SELECTSELECT

SELECT

Snowflake Intelligence: visão geral, preços e monitoramento de custos

By Jeff SkoldbergOct 9, 202510 min read

Esta página também está disponível em English, Deutsch, Español, Français, Italiano e 日本語.

O que é o Snowflake Intelligence?

O Snowflake Intelligence é uma nova interface acessada em ai.snowflake.com que permite fazer perguntas sobre seus dados em linguagem natural e receber respostas na hora, com gráficos, tabelas ou insights em texto. É um app isolado para usuários de negócio que não querem lidar com toda a complexidade da interface do Snowsight. Eles não precisam explorar bancos de dados, schemas, roles, histórico de queries etc. Querem só uma interface de chat enxuta, sem precisar de SQL e sem ficar esperando os analytics engineers responderem. Por trás disso estão agentes de IA que orquestram dados estruturados (via Cortex Analyst), dados não estruturados (via Cortex Search) e ferramentas customizadas para te entregar uma visão completa do negócio.

Pense nele como um ChatGPT para os seus dados no Snowflake, só que ele realmente conhece as definições do seu negócio, respeita seus controles de acesso e alucina menos, porque se apoia em agentes e modelos semânticos construídos pelo seu time interno.

Agora, o pessoal de negócio pode perguntar com as próprias palavras, como "mostre a receita do Q4 por categoria de produto", sem saber em quais tabelas a receita está nem como os produtos são categorizados. Um analista de supply chain pode perguntar "quais problemas os clientes estão relatando sobre nossas jaquetas de inverno?" e obter insights tanto dos dados estruturados de vendas quanto dos tickets de suporte não estruturados. O agente decide quais ferramentas usar e como combinar os resultados.

Nada disso acontece sem um trabalho inicial de configuração, e os custos podem te pegar de surpresa se você não tomar cuidado. Vamos destrinchar como funciona, quanto custa e como manter a fatura sob controle.

Como usar o Snowflake Intelligence

O Snowflake Intelligence usa agentes, que são modelos de IA conectados a uma ou mais semantic views, modelos semânticos, serviços do Cortex Search e ferramentas. A mágica acontece em um fluxo de duas fases: configuração e uso.

Fase 1: preparando a infraestrutura e os agentes

Primeiro, crie a estrutura de banco de dados e schema para o Intelligence:

-- Create the Intelligence database
CREATE DATABASE IF NOT EXISTS snowflake_intelligence;
GRANT USAGE ON DATABASE snowflake_intelligence TO ROLE PUBLIC;

-- Create schema for agents
CREATE SCHEMA IF NOT EXISTS snowflake_intelligence.agents;
GRANT USAGE ON SCHEMA snowflake_intelligence.agents TO ROLE PUBLIC;

-- Grant agent creation privileges
GRANT CREATE AGENT ON SCHEMA snowflake_intelligence.agents TO ROLE your_admin_role;

Por padrão, o Snowflake Intelligence usa a role e o warehouse padrão do usuário, então garanta que essas configurações estejam definidas.

Fase 2: criando semantic views para dados estruturados

Uma semantic view mapeia a terminologia de negócio para o schema real do seu banco. Em vez de exigir que o usuário saiba que a receita fica em fact_sales.amt_total_excl_tax, você define "receita" como um conceito de negócio.

Dá para criar semantic views por um wizard no Snowsight ou enviando arquivos YAML. Pelo wizard:

  1. Vá em AI & ML → Cortex Analyst
  2. Clique em "Create new" → "Create new Semantic View"
  3. Selecione suas tabelas e colunas
  4. Defina métricas de negócio e relacionamentos
  5. Adicione perguntas de exemplo

Nos bastidores, isso gera um arquivo YAML. As semantic views resolvem o descompasso entre como o pessoal de negócio descreve os dados e como eles ficam armazenados nos schemas do banco. Veja um exemplo mínimo:

name: revenue_analysis
description: "Sales and revenue metrics by product and region"
tables:
  - name: sales
    description: "Daily sales transactions"
    base_table:
      database: analytics_db
      schema: sales
      table: fact_daily_sales
    dimensions:
      - name: product_category
        expr: product_category
        data_type: STRING
        description: "Product category"
    facts:

Expandir código

O segredo é caprichar nas descrições e nos sinônimos. Se alguém perguntar sobre "vendas totais" e você só tiver definido "receita bruta", o agente pode não entender.

O YAML pode ser editado direto no Snowsight, ou então pelo próprio wizard.

Fase 3: criando serviços do Cortex Search para dados não estruturados

Confira nosso post sobre Cortex Search para mais detalhes de implementação. Aqui vai um exemplo rápido.

Para documentos, tickets de suporte ou outros dados em texto:

-- Create search service on your document table
CREATE CORTEX SEARCH SERVICE support_tickets_search
  ON ticket_text
  ATTRIBUTES customer_id, ticket_date, severity
  WAREHOUSE = search_warehouse
  TARGET_LAG = '1 hour'
  AS (
    SELECT
      ticket_id,
      ticket_text,
      customer_id,
      ticket_date,
      severity
    FROM support.tickets
  );

O Cortex Search é útil para indexar e pesquisar trechos de dados com bastante texto, como documentos, conversas e transcrições.

Fase 4: criando e configurando agentes

Agora é hora de conectar tudo. No Snowsight:

  1. Vá em AI & ML → Agents → Create agent
  2. Escolha "Create this agent for Snowflake Intelligence"
  3. Dê um nome que os usuários vão ver
  4. Adicione suas semantic views como ferramentas do Cortex Analyst
  5. Adicione seus serviços do Cortex Search
  6. Configure as instruções de orquestração
  7. Configure o acesso baseado em roles

O agente passa a ter acesso tanto às fontes de dados estruturadas quanto às não estruturadas e consegue orquestrar entre elas. Quando o usuário faz uma pergunta, o agente:

  • Interpreta a pergunta
  • Decide quais ferramentas usar
  • Executa queries nas semantic views (gerando SQL via Cortex Analyst)
  • Busca nos dados não estruturados (via Cortex Search)
  • Combina os resultados e gera visualizações

Fase 5: usando o Intelligence

Os usuários acessam o Intelligence em ai.snowflake.com. Lá você encontra uma navegação lateral bem simples, com três opções:

New Chat:

Agents:

Recent (chats)

A maioria começa pelo "New chat". Basta escolher um agente, uma fonte de dados (a opção "auto" é a sugerida) e fazer uma pergunta.

Ao perguntar algo, você vai ver o agente entrar em modo de raciocínio profundo, exibindo cada passo do pensamento:

Quando o agente finaliza a resposta, ele oculta os detalhes do raciocínio por padrão, mas você sempre pode revisitar o processo clicando em "show details".

Limitações do Snowflake Intelligence

Uma das principais desvantagens, na minha visão, é que não dá para salvar análises para consultar com frequência. Não existe um "perguntou uma vez, revisita o relatório várias". Outros agentes de IA permitem fixar análises em um dashboard ou pasta e atualizar uma análise específica. No Snowflake Intelligence, se você tem a mesma pergunta todo dia, precisa voltar ao chat e pedir para atualizar a análise com os dados mais recentes. É uma experiência ruim para relatórios recorrentes.

Como funciona o preço do Snowflake Intelligence?

O Cortex Agents — e, portanto, o Snowflake Intelligence — não tem custos próprios além daqueles associados às funcionalidades subjacentes do Cortex Search e do Cortex Analyst. Já publicamos artigos detalhados sobre esses temas, com links abaixo. Mas aqui vai um resumo rápido de cada componente de custo.

Custos do Cortex Analyst:

O Cortex Analyst cuida das perguntas que exigem consultas a dados estruturados e semiestruturados; isso cobre os custos de IA para text-to-SQL. Custos adicionais de warehouse se aplicam quando você executa o SQL gerado pelo Cortex Analyst. O componente de AI Services cobra por requisição, não por token. De acordo com a Snowflake Service Consumption Table, o Cortex Analyst consome 6,7 créditos a cada 100 requisições para a maioria dos modelos.

Custos do Cortex Search (para dados não estruturados):

O Cortex Search cuida dos chats que consultam dados não estruturados. Os serviços de busca consomem créditos tanto na indexação quanto na pesquisa. Hoje, são 8 créditos por hora.

Como monitorar custos e uso do Snowflake Intelligence

Nossos artigos sobre Cortex Search e Cortex Analyst trazem mais detalhes sobre o monitoramento de cada um desses serviços. Os custos do Intelligence aparecem em vários tipos de serviço, então você precisa de queries abrangentes para acompanhar tudo. Não deixe de conferir a última query de monitoramento, que cobre todos os serviços que podem ser usados pelo Snowflake Intelligence!

Acompanhe o uso do Cortex Analyst

Isso mostra quem está usando mais o Cortex Analyst e quais warehouses estão executando as queries geradas.

-- Daily Cortex Analyst requests and costs
SELECT
  DATE_TRUNC('day', start_time) AS usage_date,
  SUM(request_count) AS total_requests,
  SUM(credits) AS analyst_credits,
  username
FROM snowflake.account_usage.cortex_analyst_usage_history
WHERE start_time >= DATEADD(day, -30, CURRENT_DATE())
GROUP BY DATE_TRUNC('day', start_time), username
ORDER BY usage_date DESC, analyst_credits DESC;

Acompanhe todos os custos de AI Services

Isso captura todos os custos ligados a IA, incluindo Cortex Search, Document AI e funções AISQL, em um só lugar.

-- AI Services consumption by service type
SELECT
  DATE_TRUNC('day', usage_date) as day,
  service_type,
  SUM(credits_used) as credits
FROM snowflake.account_usage.metering_daily_history
WHERE service_type = 'AI_SERVICES'
  AND usage_date >= DATEADD(day, -30, CURRENT_DATE())
GROUP BY DATE_TRUNC('day', usage_date), service_type
ORDER BY day DESC, credits DESC;

Monitore custos de warehouse das queries do Intelligence

Infelizmente, não há uma forma muito boa de identificar queries geradas por um agente. Você consegue filtrar por Warehouse ou Role, mas não existe um log específico que sinalize esses query IDs separadamente. Veja um exemplo filtrando por Warehouse. Pense em como você vai identificar essas queries e configure seu ambiente de acordo.

-- Warehouse consumption from Intelligence agent queries
-- Requires naming or tagging your Intelligence warehouses
SELECT
  DATE_TRUNC('day', start_time) as usage_date,
  warehouse_name,
  SUM(credits_used_compute) as compute_credits,
  SUM(credits_used_cloud_services) as cloud_credits,
  SUM(credits_used) as total_credits,
FROM snowflake.account_usage.warehouse_metering_history
WHERE warehouse_name IN (
  'INTELLIGENCE_WAREHOUSE',
  'ANALYST_WAREHOUSE',
  'SEARCH_WAREHOUSE'
)
  AND start_time >= DATEADD(day, -30, CURRENT_DATE())

Expandir código

Acompanhe as operações do Cortex Search

-- Cortex Search service usage
SELECT
  DATE_TRUNC('day', start_time) AS usage_date,
  service_name,
  database_name,
  schema_name,
  SUM(credits) AS search_credits,
  SUM(credits) * 2 AS cost_usd
FROM snowflake.account_usage.cortex_search_serving_usage_history
WHERE start_time >= DATEADD(day, -30, CURRENT_DATE())
GROUP BY DATE_TRUNC('day', start_time), service_name, database_name, schema_name
ORDER BY usage_date DESC, search_credits DESC;

Visão consolidada dos custos do Intelligence

Esta query te dá uma visão completa dos custos do Intelligence, detalhada por componente, mostrando se o gasto vem do volume de queries, das operações de busca ou do compute do warehouse.

-- Complete Intelligence cost rollup
WITH analyst_costs AS (
  SELECT
    DATE_TRUNC('day', start_time) AS day,
    'Cortex Analyst (AI requests)' AS component,
    SUM(credits) AS credits
  FROM SNOWFLAKE.ACCOUNT_USAGE.CORTEX_ANALYST_USAGE_HISTORY
  WHERE start_time >= DATEADD(day, -30, CURRENT_DATE())
  GROUP BY 1
),
search_costs AS (
  SELECT
    usage_date AS day,
    'Cortex Search (Serving + Indexing)' AS component,
    SUM(credits) AS credits

Expandir código

Monitore Semantic Views específicas no Snowsight

Na interface do Snowsight, vá em AI ML -> Cortex Analyst -> Semantic Views -> Monitoring. Lá você encontra o uso de semantic views específicas.

Boas práticas e recomendações ao usar o Snowflake Intelligence

Configure alertas, não só dashboards

Aquelas queries de monitoramento acima não servem para nada se ninguém executa. Para qualquer coisa que você queira monitorar no Snowflake, dá para encapsular o SQL em uma scheduled task com uma Notification Integration e criar um monitor customizado que dispara alertas para o Slack ou o Teams. Se você quer uma funcionalidade de monitoramento extremamente fácil de usar, confira os monitors do SELECT.

Faça o right-sizing dos warehouses para workloads do Intelligence

Os custos acima cobrem a parte de IA do text-to-SQL. Custos adicionais de warehouse entram quando você executa o SQL gerado pelo Cortex Analyst. Comece com um warehouse X-Small ou Small para as queries do Analyst. A geração do SQL em si é barata; é a execução da query que pode ficar cara se você usar warehouses superdimensionados.

Projete as semantic views de forma estratégica

Um design ruim de semantic view deixa os agentes lentos e caros. Siga estes princípios:

Comece enxuto e expanda aos poucos. Comece com 3 a 5 tabelas-chave e as perguntas mais comuns. Um arquivo semântico bem delimitado garante mais precisão e exatidão nos resultados. Você sempre pode adicionar mais tabelas depois.

Inclua repositórios de queries verificadas. São perguntas de exemplo com SQL validado que melhoram drasticamente a precisão. Quando os usuários fazem perguntas parecidas, o Cortex Analyst usa esses exemplos como referência:

verified_queries:
  - name: "total revenue last quarter"
    question: "What was total revenue in Q4?"
    sql: |
      SELECT SUM(revenue_amount)
      FROM fact_sales
      WHERE sale_date >= '2024-10-01'
        AND sale_date < '2025-01-01'
    verified_result: 1250000.00

Use nomes descritivos e adicione sinônimos. Se sua tabela se chama dim_product_category_master, defina-a com nomes amigáveis ao negócio:

dimensions:
  - name: product_category
    synonyms: ["category", "product type", "product class"]
    description: "High-level product grouping (Electronics, Clothing, etc.)"

Implemente cotas de uso por usuário ou role

O Snowflake Intelligence não traz cotas por usuário nativamente, mas dá para criá-las usando resource monitors nos warehouses dos agentes:

-- Create a resource monitor for Intelligence usage
CREATE RESOURCE MONITOR intelligence_monthly_quota
  WITH CREDIT_QUOTA = 500
  FREQUENCY = MONTHLY
  START_TIMESTAMP = IMMEDIATELY
  TRIGGERS
    ON 75 PERCENT DO NOTIFY
    ON 90 PERCENT DO NOTIFY
    ON 100 PERCENT DO SUSPEND;

-- Assign to Intelligence warehouses
ALTER WAREHOUSE intelligence_warehouse
  SET RESOURCE_MONITOR = intelligence_monthly_quota;

Otimize seus serviços do Cortex Search

Os custos de busca dependem muito de como você configura o serviço. Siga estas diretrizes:

Defina target lags apropriados. Se seus documentos não mudam com frequência, use intervalos de atualização maiores:

-- For static documentation
CREATE CORTEX SEARCH SERVICE product_docs_search
  ON document_text
  TARGET_LAG = '24 hours'  -- Instead of default 1 hour
  ...

Restrinja o escopo da busca quando der. Se os agentes só precisam de documentos recentes, adicione filtros:

CREATE CORTEX SEARCH SERVICE support_tickets_search
  ON ticket_text
  ATTRIBUTES customer_id, ticket_date, severity
  WHERE ticket_date >= DATEADD(year, -1, CURRENT_DATE())
  ...

Para fechar

O Snowflake Intelligence torna os dados corporativos acessíveis a usuários sem perfil técnico por meio de linguagem natural, combinando fontes de dados estruturadas e não estruturadas de forma fluida. A chave para controlar custos é entender os componentes: Cortex Analyst para a geração de SQL, virtual warehouses para a execução das queries, Cortex Search para dados não estruturados e a orquestração de LLM amarrando tudo.

Comece enxuto, com uma semantic view focada nas suas métricas mais críticas, acompanhe o uso de perto e expanda aos poucos, conforme você for entendendo os fatores que puxam o custo. E, principalmente, configure alertas em cima dessas queries de monitoramento para identificar picos de gasto antes que cheguem na sua fatura.

Conta pra gente como você está usando o Snowflake Intelligence! Vamos adorar ouvir histórias do mundo real sobre quais casos de uso justificam o custo e onde você viu o maior ROI.

Jeff é Consultor de Dados e Analytics com mais de 15 anos de experiência em automatizar insights e usar dados para guiar processos de negócio. Do lado tecnológico, ele é especialista em Snowflake + dbt + Tableau. Do lado de negócio, tem experiência em Serviços Públicos, Estudos Clínicos, Publishing, CPG e Manufatura. Fale com ele quando quiser: [email protected].