Modo de roteamento para o Cortex Analyst

O modo de roteamento é uma estratégia de geração de consultas que prioriza o SQL semântico e retorna ao SQL padrão somente quando necessário. Ele atua como uma versão mais simples do SQL, com proteções provenientes de suas exibições semânticas. O modo de roteamento usa suas exibições semânticas para gerar maior precisão e consistência. Como resultado, métricas, junções e filtros seguem definições determinadas da exibição semântica.

O Cortex Analyst usa automaticamente o modo de roteamento nas gerações baseadas em uma exibição semântica. Não há alterações em seu fluxo de trabalho, exceto uma maior qualidade de texto para SQL.

Nota

O modo de roteamento não altera as permissões. As exibições semânticas são objetos Snowflake com privilégios padrão. O acesso é aplicado da mesma forma que nas tabelas ou exibições.

Benefícios do modo de roteamento

O modo de roteamento oferece os seguintes benefícios:

  • Métricas consistentes: as consultas usam as definições das exibições semânticas, não do SQL.

  • Padrões mais seguros: dimensões, métricas e junções vêm de metadados controlados.

  • Habilitado para LLM: o SQL mais curto facilita a produção correta de LLM.

O modo de roteamento pode ser útil nas seguintes situações:

  • Você tem uma ou mais exibições semânticas que definem as principais entidades e métricas de negócios.

  • Você quer respostas consistentes para perguntas comuns, com flexibilidade para casos extremos.

Por exemplo, considere os seguintes cenários e como o modo de roteamento é aplicado a eles:

  • Solicitação de uma métrica controlada por uma dimensão de negócios

    • Intenção do usuário: «valor médio de pedidos por segmento de cliente.»

    • Comportamento de roteamento: tenta primeiro o SQL semântico, depois os cálculos das junções e métricas são baseados na exibição.

      SELECT *
      FROM SEMANTIC_VIEW(
        tpch_analysis
        DIMENSIONS customer.customer_market_segment
        METRICS orders.order_average_value
      )
      ORDER BY customer_market_segment;
      
      Copy
    • Beneficio: não há necessidade de fórmulas manuais de junções ou métricas. Os resultados são alinhados às suas definições de BI.

  • Várias métricas controladas com uma dimensão

    • Intenção do usuário: «mostrar a receita e a contagem de pedidos totais por ano.»

      SELECT *
      FROM SEMANTIC_VIEW(
        tpch_analysis
        DIMENSIONS orders.order_year
        METRICS orders.total_revenue, orders.order_count
      )
      ORDER BY order_year;
      
      Copy
    • Benefício: ambas as métricas usam as mesmas definições e filtros que na exibição semântica.

  • Fallback para solicitações não cobertas

    • Intenção do usuário: «mostrar uma coluna ou transformação bruta não modelada na exibição.»

    • Comportamento de roteamento: se a exibição semântica não puder atender à solicitação, o Cortex Analyst a encaminhará automaticamente para o SQL padrão nas tabelas base.

    • Benefício: flexibilidade sem bloquear o usuário.

Como funciona

O procedimento a seguir descreve as etapas que o Cortex Analyst executa ao usar o modo de roteamento.

  1. O Cortex Analyst usa o modo de roteamento no playground, na API e em todas as superfícies de produtos.

  2. O Cortex Analyst tenta produzir um SQL semântico.

    SELECT  FROM SEMANTIC_VIEW(...).
    
    Copy
  3. Se o Cortex Analyst não puder produzir uma consulta SQL semântica válida que responda à pergunta dentro do tempo limite, ele a roteará para o SQL padrão nas tabelas físicas.

Nota

O modo de roteamento apenas resulta em um SQL semântico para cerca de 10% das consultas, no total. Esse número varia de acordo com o nível de cobertura das métricas definidas na exibição semântica.

Considerações

  • Se a exibição semântica não puder responder a uma pergunta, o Cortex Analyst retornará ao SQL padrão. Você deve expandir a exibição semântica para reduzir fallbacks ao longo do tempo.