SELECTSELECT

SELECT

O que é o Databricks Genie — e você deveria estar usando? (Resumo do webinar)

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

By SELECTNov 12, 2022 min read

Nesta sessão, Ian Whitestone (cofundador e CEO da SELECT by DoiT) e Olivier Soucy (fundador da Okube.ai e parceiro Databricks) explicaram o que o Databricks Genie realmente é, como as peças se encaixam e quanto custa, de fato, colocá-lo para rodar. Abaixo está o resumo completo, caso você prefira ler em vez de assistir ou queira ter algo para consultar depois.

TL;DR

  • O Genie não é um único recurso do Databricks. São três produtos distintos — Genie One, Genie Agents e Genie Code — todos construídos sobre uma camada de inteligência compartilhada chamada Genie Ontology.
  • Antes era gratuito. Desde julho passado, a Databricks passou a cobrar pelo Genie Code, e a expectativa é que Genie One e Genie Agents sigam o mesmo caminho em algum momento.
  • O custo de IA é fácil de rastrear. O custo de computação que o Genie dispara, não — e esse geralmente é o número maior.
  • Os Genie budgets podem limitar a parte de IA da conta. Controlar a parte de computação exige um SQL Warehouse dedicado e devidamente tagueado.

Genie são três produtos, não um

Genie virou um termo guarda-chuva, e a Databricks não facilitou o entendimento. Como disse o Olivier, a nomenclatura já mudou tantas vezes que até quem trabalha com Databricks há anos fica confuso. Veja o que realmente está debaixo do nome Genie hoje.

Genie One

A porta de entrada para usuários de negócio. É uma interface de chat simplificada, parecida com o ChatGPT ou o Claude, só que conectada diretamente aos seus dados: suas tabelas, seus metadados e quaisquer agentes que você tenha criado. Ele também funciona fora do próprio Databricks — pode ser integrado ao Slack, ao Teams ou a planilhas pela API do Genie, de modo que alguém consiga perguntar algo como "quantas vendas tivemos na semana passada?" sem nunca abrir o Databricks.

Genie Agents

Por padrão, o Genie tem acesso a todas as tabelas do seu catálogo, mas isso nem sempre basta para responder bem a uma pergunta específica. Os Genie Agents resolvem isso permitindo que você configure um recurso com conhecimento real de domínio: quais tabelas usar para determinado tema, instruções em linguagem simples e exemplos de cálculos ou métricas. O Genie One aciona esses agentes automaticamente quando uma pergunta cai na área deles, sem que você precise indicar qual agente usar.

Os agentes também podem ser configurados para rodar com as credenciais de quem está fazendo a pergunta — o que significa que a segurança em nível de linha e o mascaramento de colunas existentes continuam valendo — ou com uma credencial compartilhada, caso você queira que o agente tenha acesso mais amplo.

Genie Code

A peça voltada para desenvolvedores. Ele executa SQL e Python e consegue criar recursos reais do Databricks: jobs, pipelines, dashboards e até outros Genie Agents. Na demo, o Olivier não escreveu à mão a configuração de um agente — ele usou o Genie Code para gerá-la, e a ferramenta perguntou quais informações precisava e depois formatou tudo corretamente.

A camada por baixo: Genie Ontology

O Genie Ontology não é algo com que você interage diretamente — é a camada de inteligência que faz os outros três produtos funcionarem. Construído sobre o Unity Catalog, ele extrai automaticamente definições de negócio, mapeia relacionamentos entre tabelas, analisa seu histórico de queries para entender o que realmente está sendo usado e como, e lê metadados, comentários e regras de governança que você já configurou. É isso que permite ao Genie responder perguntas sobre o seu negócio específico, em vez de dar respostas genéricas e desconectadas.

Um exemplo rápido: ensinando o Genie sobre um portfólio de ações

Para mostrar como essas peças se conectam, o Olivier fez uma demo simples. Ele tinha uma tabela no Unity Catalog com preços históricos de ações e fez uma pergunta direta ao Genie One: como o valor do meu portfólio mudou nos últimos dois anos?

O Genie One não conseguiu responder. Ele enxergava a tabela de preços de ações, mas não fazia ideia do que o Olivier realmente possuía — essa informação simplesmente não existe no Databricks.

Então ele criou um Genie Agent para resolver isso. As instruções do agente incluíam as ações efetivamente em carteira (na demo, cerca de US$ 100 em Apple e US$ 200 em Microsoft, compradas dois anos antes) e uma explicação em linguagem simples de como calcular o valor do portfólio a partir disso. Ele também apontou o agente para as tabelas de origem corretas.

Depois disso, voltou ao Genie One e fez exatamente a mesma pergunta, palavra por palavra. Dessa vez, em vez de dizer que não tinha informações suficientes, o Genie gerou um gráfico do valor do portfólio ao longo do tempo, retornos totais, ganhos e momentos-chave da carteira. O Genie One reconheceu automaticamente qual agente era relevante e o acionou, sem que ninguém precisasse pedir.

Essa mesma configuração também dá conta de coisas como conversão de unidades. O Olivier deu o exemplo de adicionar uma instrução para converter preços de USD para CAD, ou timestamps para UTC, diretamente na configuração do agente, sem mudar nada nas tabelas de origem.

Alguns outros pontos surgiram em torno dessa demo:

  • Agentes podem delegar tarefas entre si. Se uma pergunta abrange vários temas, o Genie One pode acionar mais de um agente, aguardar cada resposta e combiná-las em uma resposta única.
  • Definições de agentes podem ser exportadas como JSON ou YAML e implantadas via Databricks Asset Bundles, a ferramenta de deployment simplificada da Databricks, no estilo Terraform. Suporte nativo do Terraform especificamente para agentes ainda não está disponível.
  • Agentes podem ser avaliados como código, usando o MLflow para definir perguntas de teste, acompanhar respostas esperadas versus reais ao longo do tempo e monitorar desvios depois que um agente entra em produção.

O Olivier também compartilhou um exemplo real do próprio trabalho: uma configuração de monitoramento que puxa dados de vários agentes (falhas de workflow, dados de custo, verificações de qualidade de dados) para gerar relatórios diários automaticamente, com a possibilidade de fazer perguntas de acompanhamento como "por que tenho duplicatas?" e receber de volta uma resposta específica e útil.

Quanto o Genie realmente custa

O Genie costumava ser gratuito. Isso mudou em julho passado. A Databricks planejava originalmente começar a cobrar pelos três produtos de uma vez, mas recuou para dar tempo às equipes de se adaptarem. Na data deste webinar, apenas o Genie Code é cobrado, por uso, embora a expectativa seja de que Genie One e Genie Agents também passem a ser medidos no futuro.

Cada usuário recebe 150 DBUs gratuitos por mês (aproximadamente US$ 7 a US$ 8, dependendo do provedor de nuvem e da região) antes que as cobranças comecem. Uma exceção que vale conhecer: service principals não recebem essa franquia gratuita. O uso automatizado é cobrado desde a primeira requisição.

O custo em si se divide em duas partes bem diferentes:

  1. Uso de LLM. Essa parte é simples de rastrear. É medida em DBUs e aparece nas suas system tables — você pode consultá-la diretamente e filtrar por tipo de produto para ver exatamente quanto o uso de IA do Genie está custando.
  2. Computação. Essa é a parte difícil. Rodar o Genie Code (ou qualquer agente) significa executar SQL e Python de verdade por baixo, e essa computação é cobrada como computação comum do Databricks. Não existe uma coluna nas system tables dizendo "essa atividade do warehouse foi do Genie". Ela fica invisível, a menos que você faça um esforço deliberado para isolá-la.

Na demo do portfólio, o custo total ficou em torno de US$ 5. A parte de LLM foi cobrada a US$ 0 porque ficou dentro da franquia mensal gratuita — mas, sozinha, teria custado cerca de US$ 4 se não fosse por isso. O Olivier só conseguiu separar o custo de LLM do custo de computação porque era o workspace pessoal dele, sem nenhuma outra atividade rodando naquela janela de tempo — em um ambiente de produção compartilhado, esse tipo de separação limpa não é realista sem configuração extra.

Como manter os custos do Genie sob controle

Para o lado de LLM, a Databricks oferece os Genie budgets, configuráveis pela interface ou como código. Você pode definir um limite global mensal e um limite por usuário, ter um dashboard para acompanhar o uso e receber alertas por e-mail, Slack ou Teams quando alguém se aproximar do limite. Por enquanto, isso cobre apenas o Genie Code, já que é o único produto cobrado atualmente, mas a expectativa é que se estenda ao Genie One e aos Genie Agents assim que eles também passarem a ser medidos.

Para o lado de computação, não há um controle nativo equivalente. A abordagem recomendada é criar um SQL Warehouse dedicado especificamente para os Genie Agents, tagueá-lo corretamente e direcionar o tráfego dos agentes por ele. Isso transforma um custo que seria invisível em algo que você consegue de fato enxergar e combinar com seu dashboard de custos de LLM para ter o panorama completo.

FAQ

O Genie respeita minha segurança em nível de linha e meu mascaramento de dados existentes? Sim. Você pode configurar um agente para rodar com as credenciais de quem está fazendo a pergunta, o que significa que qualquer segurança em nível de linha ou mascaramento de colunas existente continua valendo. Como alternativa, você pode dar ao agente uma credencial compartilhada, caso queira que ele tenha acesso mais amplo do que qualquer usuário individual.

Posso escolher qual modelo de IA alimenta o Genie? Não. A Databricks gerencia e seleciona o modelo por você — é um modelo proprietário criado especificamente para os produtos de dados dela, e não há como trocá-lo dentro do próprio Genie. A escolha de modelo só está disponível se você estiver construindo um Databricks App totalmente customizado, com sua própria lógica.

Diferentes Genie Agents podem trabalhar juntos em uma mesma pergunta? Sim. O Genie One atua como orquestrador. Se uma pergunta toca em vários temas, ele pode acionar mais de um agente, aguardar a resposta de cada um e combinar os resultados em uma resposta única.

Posso versionar meus Genie Agents como faria com código? Parcialmente. As definições de agentes podem ser exportadas como JSON ou YAML e implantadas via Databricks Asset Bundles, a ferramenta de deployment da própria Databricks, no estilo Terraform. Suporte direto do Terraform para agentes ainda não está disponível.

Como sei se um agente está realmente respondendo corretamente? A Databricks oferece suporte a avaliações via MLflow. Você pode definir um conjunto de perguntas de teste com respostas esperadas, acompanhar a precisão de um agente ao longo do tempo e monitorar desvios depois que ele estiver rodando em produção.

A Snowflake tem algo parecido, e o preço é igual? Sim. A Snowflake tem um produto comparável baseado em agentes, com um modelo de precificação em duas partes praticamente idêntico: uso de LLM mais a computação que o agente dispara. Na maioria dos casos de uso, o custo de computação acaba sendo o fator maior, e não o custo de LLM em si.

O Genie é realmente gratuito? Não mais. Desde julho passado, a Databricks passou a cobrar especificamente pelo Genie Code, por uso em DBUs, com uma franquia mensal gratuita de 150 DBUs por usuário (service principals excluídos). A expectativa é que Genie One e Genie Agents também passem a ser medidos no futuro.

Recursos relacionados

Quer a versão escrita e mais aprofundada de tudo o que foi abordado aqui, incluindo a query exata das system tables para extrair seus custos do Genie? Confira nosso guia gratuito: Databricks Genie Explained: What It Is, How to Use It, and What It Costs.