Estudo Aprofundado
Databricks Genie
Da arquitetura interna ao deploy em produção: como o Genie converte linguagem natural em SQL, como curar um agente, a API completa e casos de uso reais — baseado em documentação oficial docs.databricks.com, consultada em agosto/2026.
O Genie foi reestruturado
Leia antes de tudo — muda a terminologia do resto do documento
Se seu conhecimento sobre Genie vem de conteúdo anterior a meados de 2026 (cursos, guias de certificação, artigos), atenção: a Databricks reorganizou o produto. O que antes era chamado de "Genie Spaces" (o recurso único de AI/BI Genie) agora é parte de uma família de três produtos, todos com o nome "Genie":
| Nome atual | O que era antes | Público-alvo |
|---|---|---|
| Genie One | Não existia como tal — é a nova porta de entrada única | Usuários de negócio (self-service) |
| Genie Agents | Genie Spaces (renomeado) | Analistas configuram; usuários de negócio consomem |
| Genie Code | Databricks Assistant (evoluído/renomeado) | Desenvolvedores/praticantes técnicos |
A documentação oficial reforça isso em nota explícita em toda a seção de Genie Agents:
Isso é relevante porque materiais de certificação (Data Analyst Associate, GenAI Engineer Associate) que mencionam "Genie Spaces" continuam conceitualmente corretos — apenas o nome mudou para "Genie Agents". A API pública, inclusive, ainda usa o termo spaces nos endpoints (/api/2.0/genie/spaces/...), então a mudança foi de branding/UI, não de arquitetura interna.
Este documento cobre a família inteira, com foco em Genie Agents, componente tecnicamente mais relevante para quem trabalha com dados.
Visão geral: o que é o Genie
A família de três produtos e onde cada um se encaixa
Genie é a experiência de IA da Databricks para trabalhar com dados em linguagem natural. Dá a qualquer usuário da organização um único lugar para fazer perguntas sobre dados em linguagem natural, explorar dashboards de AI/BI e rodar Databricks Apps — tudo com respostas fundamentadas nos dados da organização e governadas via Unity Catalog.
A família Genie
- Genie One — interface simplificada para usuários de negócio descobrirem e interagirem com ativos de dados (chat unificado sobre dados, dashboards e apps).
- Genie Agents — ambientes específicos de domínio onde times de dados configuram dados confiáveis, métricas e regras de negócio que alimentam as respostas do Genie One. Este é o antigo "Genie Spaces".
- Genie Code — assistente de IA para código e dados, voltado a desenvolvedores dentro do workspace Databricks (notebooks, SQL editor, Lakeflow Pipelines Editor, dashboards de AI/BI, MLflow).
Também existe Genie mobile (acesso via iOS/Android) e uma versão account-level do Genie One, que permite descobrir e interagir com ativos compartilhados entre todos os workspaces de uma conta.
Genie | Databricks on AWS — docs.databricks.com/aws/en/genie
Arquitetura técnica em profundidade
O sistema de IA composto por baixo do capô
2.1 Não é um LLM fazendo text-to-SQL — é um sistema de IA composto
O post oficial de lançamento do AI/BI é explícito sobre por que uma abordagem ingênua falha: apontar um LLM genérico para o schema de um banco de dados não é suficiente, porque o schema sozinho não carrega o conhecimento de negócio (definições de métricas, regras de tratamento de dados "sujos", sinônimos internos). A alternativa clássica — modelos semânticos formais — exige investimento inicial alto e fica desatualizada rapidamente.
A resposta da Databricks foi um sistema de IA composto: em vez de um único modelo monolítico, um conjunto (ensemble) de agentes de IA especializados, cada um responsável por uma tarefa estreita e bem definida:
| Agente / componente | Responsabilidade |
|---|---|
| Planning | Decompõe a pergunta de negócio em passos executáveis |
| SQL generation | Converte a intenção estruturada em consulta SQL |
| Explanation | Gera o resumo em linguagem natural do resultado |
| Visualization | Decide e monta o gráfico/tabela mais apropriado |
| Result certification | Verifica se a resposta pode ser marcada como confiável (trusted assets) |
Apoiados por: response ranking subsystem (pontua e escolhe o melhor caminho de resposta quando há múltiplas opções) e vector index (recupera contexto semântico relevante de forma eficiente, em vez de despejar todo o metadata no prompt).
2.2 Fluxo de execução de uma pergunta (ponta a ponta)
somente-leitura2.3 "Tools" e certified answers como mecanismo de confiabilidade
O Genie usa o conceito agêntico de "tools" para reduzir o risco de alucinação de lógica de negócio. Um analista pode registrar uma peça de lógica governada e confiável — por exemplo, uma Unity Catalog Function ou uma Metric — como ferramenta que o Genie pode invocar. Quando o Genie usa essa ferramenta, elimina a possibilidade de inferência incorreta de lógica, porque a resposta vem de lógica pré-verificada, não de SQL gerada "do zero". Esse é o mecanismo por trás de trusted assets (seção 03.4): o Genie sinaliza ao usuário final o status de confiança da resposta.
2.4 Aprendizado contínuo
O sistema aprende com feedback humano e persiste esse conhecimento além de uma única conversa — como um analista humano que fica mais eficiente com o tempo. Exemplo do blog oficial: se você ensina ao Genie a definição de "cliente churned", ele não só usa isso para perguntas similares (churn na EMEA vs. Américas), como consegue inferir conceitos relacionados (ex.: "clientes retidos") e reaproveitar essa definição para calcular taxa de churn. Além do feedback direto, o Genie também aprende de: pipelines de ETL, linhagem (lineage), estatísticas de popularidade e outras queries rodadas sobre os mesmos dados.
2.5 Onde o Genie se encaixa no AI/BI
Genie é um dos dois pilares do Databricks AI/BI (o outro são os Dashboards), ambos construídos sobre o mesmo sistema de IA composto:
- AI/BI Dashboards — conjunto fixo e recorrente de perguntas de negócio (BI tradicional, baixo código)
- Genie — conjunto amplo e sempre mutável de perguntas ad-hoc que não cabe em dashboard nenhum
Os dois compartilham a mesma base de raciocínio composto e integração nativa com Unity Catalog (governança/linhagem unificadas), Databricks SQL + Photon (performance sem extração de dados) e o IAM da Databricks (Entra AD, Okta, sem licenças extras por assento).
Introducing AI/BI: Intelligent Analytics for Real-World Data (blog oficial) — databricks.com/blog
AI/BI concepts — docs.databricks.com/aws/en/ai-bi/concepts
Genie Agents concepts — docs.databricks.com/aws/en/genie-agents/concepts
Genie Agents em profundidade
O antigo Genie Spaces — conceitos, dados, Inspect e Agent mode
3.1 Conceito
Um Genie Agent é uma interface de chat em linguagem natural, específica de domínio, na qual usuários fazem perguntas sobre seus dados e recebem de volta consultas SQL, tabelas de resultado e visualizações. Analistas de dados curam cada agente com datasets registrados no Unity Catalog, exemplos de consultas SQL, expressões SQL para semântica de negócio e instruções em texto adaptadas à terminologia da organização.
3.2 Como funciona (fluxo conceitual)
Quando um usuário envia uma pergunta, o Genie:
- Interpreta (parse) a solicitação;
- Identifica as fontes de dados relevantes;
- Determina como gerar uma resposta apropriada;
- Gera uma consulta SQL (sempre somente leitura) que roda no SQL warehouse do agente;
- Se não conseguir gerar uma resposta, pode fazer perguntas de esclarecimento antes de responder.
3.3 Componentes usados para gerar uma resposta
| Componente | Descrição |
|---|---|
| Metadados de tabela (UC) | Nomes de tabela, descrições e relacionamentos PK/FK — base para converter linguagem natural em SQL |
| Nomes/descrições de coluna | Genie filtra inteligentemente as colunas relevantes |
| Knowledge Store | Metadados específicos do agente adicionados pelo autor (não altera metadados do Unity Catalog) |
| Exemplos de SQL | Genie seleciona exemplos relevantes da biblioteca do agente |
| Funções SQL | Todas as funções SQL adicionadas ao agente |
| Instructions | Notas em texto simples fornecidas em General instructions |
| Histórico da conversa | Prompts e respostas atuais (truncado por limites de token quando necessário) |
3.4 Conceitos-chave (glossário técnico)
| Conceito | Descrição |
|---|---|
| Knowledge store | Definições semânticas curadas no nível do agente: descrições de tabela/coluna, sinônimos, joins, expressões SQL, prompt matching. Não afeta metadados do Unity Catalog. |
| Instructions | Notas em texto plano: regras de negócio, terminologia preferida, formatos de data etc. |
| Example SQL queries | Consultas de referência para perguntas comuns — Genie escolhe exemplos relevantes da biblioteca do agente |
| Trusted assets | Consultas parametrizadas e funções SQL com lógica verificada pelo autor. Resposta com trusted asset = maior confiabilidade. |
| Benchmarks | Perguntas de teste para avaliação — não melhoram o contexto do Genie, servem só para medir precisão |
| Agent mode | Raciocínio multi-etapas para análises profundas (antigo "Research Agent" — ver 3.7) |
3.5 Que dados posso usar?
Um Genie Agent é baseado em dados registrados no Unity Catalog: tabelas gerenciadas, tabelas externas, tabelas foreign, views, metric views e materialized views.
3.6 Melhoria de precisão: Inspect Public Preview
Inspect usa raciocínio avançado para revisar e melhorar a precisão da SQL gerada:
- Revisa a consulta SQL gerada inicialmente;
- Escreve instruções SQL menores para verificar aspectos específicos (filtros, intervalos de data, joins, agregações);
- Identifica lacunas ou problemas potenciais;
- Se necessário, gera uma consulta melhorada;
- Compara a original com a melhorada;
- Retorna a que responde com mais precisão.
Use Inspect quando quiser confiança adicional em consultas complexas (múltiplos filtros, intervalos de data, múltiplas tabelas).
3.7 Agent mode antigo Research Agent
Permite respostas a perguntas complexas e exploratórias usando raciocínio multi-etapas e teste de hipóteses:
- Cria planos de pesquisa — desenvolve abordagem estruturada e hipóteses
- Executa múltiplas consultas — várias SQLs para reunir evidências de diferentes ângulos
- Aprende e itera — ajusta a abordagem com base no que descobre
- Entrega relatórios abrangentes — com citações, visualizações e tabelas de suporte
Também responde sobre arquivos não estruturados em Unity Catalog Volumes anexados ao agente, e pode ser acionado programaticamente via Agent mode APIs (Beta).
| Região | Disponibilidade |
|---|---|
| Américas & Europa | Disponível (cross-Geo não exigido) |
| Austrália, Nova Zelândia, Japão | Disponível (cross-Geo não exigido) |
| Demais regiões | Só com cross-Geo habilitado |
Genie Agents concepts — docs.databricks.com/aws/en/genie-agents/concepts
Requisitos técnicos, limites e permissões
Compute, ACLs e o modelo de segurança por identidade
4.1 Requisitos e limites técnicos
- Unity Catalog: os dados do agente devem estar registrados no Unity Catalog. Limite: até 30 tabelas ou views por agente.
- Compute: requer SQL warehouse Pro ou Serverless, com ao menos permissão CAN USE. As credenciais de compute do autor ficam embutidas no agente e processam as consultas de todos os usuários.
- Capacidade: cada agente suporta até 10.000 conversas, cada conversa até 10.000 mensagens.
4.2 Permissões necessárias
Autor do agente
- Entitlement do workspace Databricks SQL
- CAN USE em SQL warehouse pro/serverless
- Privilégios
SELECTnos dados usados - ACL: ao menos CAN EDIT (criador ganha CAN MANAGE)
Usuário final
- Entitlement "consumer" ou Databricks SQL
- Não precisa de permissão direta no warehouse
SELECTnos objetos UC usados — só vê o que tem permissão- ACL: ao menos CAN VIEW/CAN RUN
4.3 Como funciona o controle de acesso a dados
Ponto conceitualmente importante (e provável pegadinha de prova): as consultas geradas rodam com as credenciais de compute do autor (embutidas no warehouse configurado), mas os resultados são filtrados pelas permissões do Unity Catalog de cada usuário individual. Ou seja:
- Você não precisa conceder permissão direta de warehouse aos usuários;
- Row filters e column masks do Unity Catalog são aplicados automaticamente por usuário;
- Pergunta sobre dados que o usuário não pode acessar retorna resposta vazia — não erro, não dado de outro usuário;
- Para filtragem por usuário, aplique row-level security nas tabelas subjacentes via Unity Catalog.
Create and manage a Genie Agent — docs.databricks.com/aws/en/genie-agents/set-up
Genie Agents concepts — docs.databricks.com/aws/en/genie-agents/concepts
Criando e gerenciando um Genie Agent
Do setup assistido por Genie Code ao compartilhamento
5.1 Fluxo básico de criação
- Clique em Genie Agents na barra lateral;
- Clique em New;
- Escolha as fontes de dados (tabelas/views do Unity Catalog);
- Clique em Create.
5.2 Setup assistido por Genie Code
Ao criar um agente, o Genie Code é acionado automaticamente: lê os dados e sugere contexto (descrições de tabela, exemplos de consulta). Você revisa e aceita as sugestões, ou pede para preencher lacunas específicas. Também é possível pedir ao Genie Code para criar o agente inteiro a partir de uma descrição em linguagem natural, sem saber de antemão quais tabelas usar.
Create a Genie agent for our sales team that answers questions about weekly revenue, units sold, and returns by store and region. Use the sales and store tables in the retail catalog.
5.3 Revisão de consultas sugeridas
Ao adicionar dados a um agente, o Genie busca automaticamente consultas populares do workspace associadas àqueles ativos (usando as credenciais do usuário, respeitando CAN VIEW). As sugestões aparecem na aba Data do painel Instructions, e podem ser aceitas ou rejeitadas uma a uma.
5.4 Configurações do agente
Em Configure → Settings:
5.5 Compartilhamento
Novos agentes são salvos na pasta pessoal do usuário por padrão, herdando permissões da pasta. É possível compartilhar com usuários/grupos específicos (CAN MANAGE, CAN EDIT, CAN RUN, CAN VIEW) ou com todos os usuários da conta. Também há suporte a OpenSharing para compartilhar com usuários fora da organização.
5.6 Outras ações (menu kebab)
- Clonar — cópia independente com tabelas, configurações, instruções gerais, exemplos SQL e funções SQL. Threads de chat e dados de monitoramento não são copiados.
- Exportar como metric view — cria uma metric view a partir do contexto/dados configurados no agente.
- Certificar/depreciar — usa a tag governada
system.certification_statusdo Unity Catalog.
Create and manage a Genie Agent — docs.databricks.com/aws/en/genie-agents/set-up
Boas práticas de curadoria
As mais cobradas em avaliações práticas
A documentação trata a curadoria como um processo de engenharia de contexto, análogo a onboarding de um novo analista de dados.
6.1 Hierarquia de confiabilidade das fontes de contexto
Da mais para a menos confiável/manutenível:
- Datasets bem documentados (descrições de tabela/coluna no UC, views pré-unidas, metric views)
- Expressões SQL (semântica de negócio —
revenue,active_customers,gross_margin) - Exemplos de consultas SQL completas (perguntas complexas, multi-etapas ou ambíguas)
- Instruções em texto — último recurso, só quando SQL/expressões não resolvem
6.2 "Comece pequeno" (start small)
- Prefira 5 tabelas ou menos por agente — foco estreito melhora a precisão
- Limite de 30 tabelas/views: se precisar de mais, pré-una em views ou metric views antes de adicionar
- Metric views são particularmente eficazes porque pré-definem métricas, dimensões e agregações
- Comece com configuração mínima e itere com base em feedback e monitoramento
- Construa sobre tabelas bem anotadas — revise descrições geradas por IA antes de aceitar
6.3 Quem deve curar o agente
Um bom curador entende tanto os dados quanto os insights que podem ser extraídos deles. Analistas de dados proficientes em SQL costumam ter o perfil ideal.
6.4 Definir propósito e público
Um agente deve responder perguntas de um tópico e público específicos, não perguntas genéricas cross-domínio. Oculte colunas confusas ou irrelevantes.
6.5 Prompt matching
Ajuda o Genie a casar valores relevantes à pergunta do usuário e corrigir erros de digitação, melhorando a correspondência entre prompts e colunas/valores corretos. Habilitado automaticamente ao adicionar tabelas; gerenciável por coluna.
6.6 Instruir o Genie a pedir esclarecimentos
Estruture instruções de clarificação com quatro componentes: condição de gatilho, detalhes ausentes, ação exigida e exemplo da pergunta:
6.7 Customizar resumos (summaries)
Apenas instruções em texto afetam a geração de resumos (SQL examples/expressions não influenciam). Customize adicionando uma seção dedicada ao final das instruções gerais com o cabeçalho "Instructions you must follow when providing summaries".
6.8 Testar, ajustar e implantar
- Seja o primeiro usuário do seu próprio agente — examine as SQLs geradas
- Transforme perguntas revisadas em benchmarks para pontuação sistemática de precisão
- Use Declarative Automation Bundles para versionar e implantar agentes como código, com histórico e promoção entre ambientes (dev/staging/produção)
- Conduza testes com usuários de negócio reais — upvote/downvote, refinamento via instruções adicionais no próprio chat
Curate an effective Genie Agent — docs.databricks.com/aws/en/genie-agents/best-practices
API do Genie Agents
Conversation API + Management API — com exemplos completos
A API do Genie oferece dois tipos de capacidade:
- Conversation APIs — consultas em linguagem natural com estado (follow-up e histórico), para chatbots, agentes e aplicações
- Management APIs — criação, configuração e deploy programático de agentes entre workspaces, para CI/CD e controle de versão
7.1 Pré-requisitos
- Workspace com entitlement Databricks SQL
- Ao menos CAN USE em um SQL warehouse pro/serverless
- Autenticação via OAuth U2M (usuário com browser) ou OAuth M2M (service principal, sem browser)
7.2 Criar um Genie Agent via API (Management API)
POST /api/2.0/genie/spaces Host: <DATABRICKS_INSTANCE> Authorization: Bearer <your_authentication_token> { "description": "Space for analyzing sales performance and trends", "parent_path": "/Workspace/Users/<username>", "title": "Sales Analytics Space", "warehouse_id": "<warehouse-id>", "serialized_space": "<JSON escapado — ver 7.3>" }
/genie/spaces/ — reforça que a renomeação para "Genie Agents" foi de produto/UI, não da API.7.3 O campo serialized_space
String JSON que define toda a configuração do agente. Estrutura (versão 2, atual):
{
"version": 2,
"config": {
"sample_questions": [
{ "id": "a1b2c3d4e5f60000000000000000000a", "question": ["What were total sales last month?"] }
]
},
"data_sources": {
"tables": [
{
"identifier": "sales.analytics.customers",
"description": ["Customer master data..."],
"column_configs": [
{ "column_name": "customer_id", "synonyms": ["cust_id", "account_id"] },
{ "column_name": "customer_name", "enable_entity_matching": true },
{ "column_name": "internal_notes", "exclude": true }
]
}
],
"metric_views": [
{ "identifier": "sales.analytics.revenue_metrics" }
]
},
"instructions": {
"text_instructions": [
{ "id": "01f0b37c378e1c9100000000000000a1", "content": ["When calculating revenue, sum order_amount..."] }
],
"example_question_sqls": [
{
"id": "01f0821116d912db00000000000000b1",
"question": ["Show top 10 customers by revenue"],
"sql": ["SELECT customer_name, SUM(order_amount) AS total_revenue\n",
"FROM sales.analytics.orders o\n",
"JOIN sales.analytics.customers c ON o.customer_id = c.customer_id\n",
"GROUP BY customer_name\n",
"ORDER BY total_revenue DESC\n",
"LIMIT 10"]
}
],
"join_specs": [
{
"id": "01f0c0b4e815100000000000000000c1",
"left": { "identifier": "sales.analytics.orders", "alias": "orders" },
"right": { "identifier": "sales.analytics.customers", "alias": "customers" },
"sql": ["`orders`.`customer_id` = `customers`.`customer_id`", "--rt=FROM_RELATIONSHIP_TYPE_MANY_TO_ONE--"]
}
],
"sql_snippets": {
"expressions": [{ "id": "...", "alias": "order_year", "sql": ["YEAR(orders.order_date)"] }],
"measures": [{ "id": "...", "alias": "total_revenue", "sql": ["SUM(orders.order_amount)"] }]
}
},
"benchmarks": {
"questions": [
{ "id": "...", "question": ["What is the average order value?"],
"answer": [{ "format": "SQL", "content": ["SELECT AVG(order_amount) AS avg_order_value\n", "FROM sales.analytics.orders"] }] }
]
}
}
Regras de validação importantes (rejeitadas se violadas)
- IDs: string hexadecimal minúscula de 32 caracteres (formato UUID sem hífens)
- Ordenação obrigatória: arrays como
data_sources.tables,text_instructions,example_question_sqls,join_specs,sql_snippets.*ebenchmarks.questionsdevem vir pré-ordenados alfabeticamente porid(ouidentifier) — a API rejeita arrays não ordenados - Unicidade: IDs de
sample_questions+benchmarks.questionsúnicos entre si; IDs de instructions únicos entre si;(table_identifier, column_name)único - Limites: strings até 25.000 caracteres; arrays até 10.000 itens; no máximo 1 text instruction por agente (bloco único, não um texto por linha)
join_specs.sql: exatamente dois elementos — condição de join (aliases entre crases) + anotação"--rt=FROM_RELATIONSHIP_TYPE_<CARDINALIDADE>--". Valores válidos:MANY_TO_ONE,ONE_TO_MANY,ONE_TO_ONE,MANY_TO_MANY. Omitir a anotação causa erro de parsing.- Identificadores de tabela: formato de três níveis (
catalog.schema.table) - Benchmarks: cada pergunta com exatamente uma resposta
format: "SQL"
7.4 Usando a Conversation API
Iniciar uma conversa:
POST /api/2.0/genie/spaces/{space_id}/start-conversation { "content": "<sua pergunta>" }
Retorna conversation.id e message.id para consultas subsequentes.
Consultar status/SQL gerada (polling):
GET /api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}
attachments é populado progressivamente — já dá para ler dados úteis em PENDING_WAREHOUSE/EXECUTING_QUERY, sem esperar COMPLETED. Ao contrário da UI (resposta preliminar → correção via Inspect), a Conversation API não tem esse padrão de duas fases.Recuperar resultados da consulta:
GET /api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages/{message_id}/query-result/{attachment_id}
Visualização (Beta): definir enable_visualization: true ao iniciar a conversa/criar mensagem; attachments passa a incluir um objeto viz (GenieVizAttachment), baixável via endpoint de download-visualization.
Perguntas de follow-up (mantém contexto/histórico):
POST /api/2.0/genie/spaces/{space_id}/conversations/{conversation_id}/messages { "content": "Which of these customers opened and forwarded the email?" }
- Trusted asset? verifique se
attachmentscontémquery.parameters— presença indica uso de trusted asset - Raciocínio do Genie: verifique
attachmentsparaquery_attachmentsdo tipoGenieQueryAttachments
7.5 Boas práticas de uso da API
- Implementar retry com backoff exponencial (a API não reenvia falhas automaticamente)
- Logar requests/responses para debug, monitoramento e custo
- Poll a cada 1–5s, com backoff exponencial até 1 min, limitando a 10 minutos
- Nova conversa a cada sessão — reutilizar threads entre sessões reduz precisão por reuso indevido de contexto
- Gerenciar o limite de 10.000 conversas: listar, identificar obsoletas, deletar via
DELETE .../conversations/{conversation_id}
Use the Genie Agents API — docs.databricks.com/aws/en/genie-agents/conversation-api
Genie em arquiteturas multi-agente
Supervisor + Genie + RAG, via MCP ou LangGraph/DSPy
Além de ser consumido diretamente por humanos (Genie One, dashboards, app dedicado), um Genie Agent pode ser usado como uma ferramenta dentro de um sistema multi-agente maior — o ponto onde Genie se conecta ao ecossistema mais amplo de agentic AI da Databricks (Mosaic AI Agent Framework / Agent Bricks).
8.1 Por que combinar Genie com outros agentes
O Genie Agent tem uma característica que o diferencia de uma "tool" de SQL tradicional: ao contrário de funções SQL, que só executam consultas pré-definidas, o Genie tem a flexibilidade de criar consultas novas para responder a perguntas não antecipadas.
Padrão típico documentado pela Databricks: um agente supervisor direciona e gerencia o contexto entre agentes especializados:
- Um agente RAG já implantado, consultando um corpus de documentos não estruturados (políticas, contratos, manuais)
- Um Genie Agent, consultando um banco de dados estruturado (vendas, operações, financeiro)
- Um agente function-calling baseado em Unity Catalog Functions, para ações determinísticas (ex.:
system.ai.python_exec)
O supervisor recebe a pergunta do usuário, decide qual(is) agente(s) acionar, e combina as respostas — o usuário obtém uma resposta única sem saber que, por trás, são sistemas completamente diferentes.
8.2 Duas formas de integrar o Genie em um agente
(a) Via MCP (Model Context Protocol) — abordagem recomendada para a maioria dos casos. A Databricks expõe um servidor MCP gerenciado para cada Genie Agent:
from databricks.sdk import WorkspaceClient from databricks_mcp import DatabricksMCPClient import mlflow workspace_client = WorkspaceClient() host = workspace_client.config.host # Conecta ao servidor MCP do Genie Agent mcp_client = DatabricksMCPClient( server_url=f"{host}/api/2.0/mcp/genie/<genie-space-id>", workspace_client=workspace_client, ) # Lista as ferramentas disponíveis expostas pelo Genie Agent tools = mcp_client.list_tools() # Registra o agente (que usa o Genie como tool) com os recursos para deploy mlflow.pyfunc.log_model( "agent", python_model=my_agent, resources=mcp_client.get_databricks_resources(), )
(b) Genie como agente de pleno direito (não apenas via MCP) — abordagem "código primeiro" usando o Mosaic AI Agent Framework, tipicamente com LangGraph ou DSPy, com um nó supervisor orquestrando um GenieAgent node ao lado de outros. Vantagem sobre o MCP: permite passar deterministicamente o contexto de conversa já existente para o Genie, em vez de depender do roteamento genérico de tools. A Databricks disponibiliza notebooks de exemplo prontos para os dois frameworks.
Também existe a opção de autorização on-behalf-of-user: o sistema multi-agente acessa o Genie Agent e seus recursos usando as permissões do usuário final que interage com o agente — não credenciais de um service principal genérico, preservando o modelo de segurança por identidade da seção 04.3.
Use Genie in multi-agent systems (Model Serving) — learn.microsoft.com
Connect agents to structured data — docs.databricks.com
Casos de uso práticos
9 cenários reais — problema, solução e exemplo citado pela Databricks
Esta seção traduz a arquitetura em cenários concretos — organizados por padrão de uso.
Self-service analytics para reduzir fila de pedidos ad-hoc
Companion conversacional em dashboards ("Ask Genie")
Genie embutido em apps corporativos (Slack, Teams)
Multi-agente: dados estruturados + não estruturados
Curadoria centralizada de métricas de negócio
Governança multi-tenant com um único agente
CI/CD e promoção entre ambientes
serialized_space) tratam a config como código, versionada e promovida dev → staging → produção.Acesso móvel para decisão fora do workspace
Blend com arquivos avulsos (CSV/Excel locais)
Genie Agents with dashboards — learn.microsoft.com
Conversational Analytics for Business Teams — databricks.com/product/genie/agents
Introducing AI/BI (citações de clientes) — databricks.com/blog
Use Genie One — docs.databricks.com/aws/en/genie-one
Genie e as certificações Databricks
Relevância real para cada trilha — sem inflar expectativa
| Certificação | Peso/relevância do Genie |
|---|---|
| Data Engineer Associate/Professional | Não é domínio de peso relevante — foco em Delta Lake, Spark, Lakeflow (ex-DLT), Unity Catalog para engenharia, orquestração e governança |
| Data Analyst Associate | Domínio explícito, peso reportado de ~12% — desenvolvimento, compartilhamento e manutenção de Genie Spaces, junto com modelagem SQL e dashboards |
| GenAI Engineer Associate | Aparece em sistemas multi-agente — subdomínios sobre habilitar agentes a usar Genie Spaces/Conversation API para recuperar dados |
Se seu objetivo é só Data Engineer, este estudo serve mais como conhecimento de plataforma (útil em conversas com clientes/stakeholders, e para saber quando recomendar Genie Agents em vez de pipelines de BI tradicionais) do que preparação direta de prova. Se avançar para Data Analyst Associate depois, este documento já cobre boa parte do domínio de Genie daquele exame.
Cheat sheet — referência rápida
Terminologia, limites, hierarquia de contexto e segurança
- Dados bem documentados no Unity Catalog / metric views
- Expressões SQL (métricas/filtros reutilizáveis)
- Exemplos de consulta SQL completos
- Instruções em texto (último recurso)
/api/2.0/mcp/genie/<space-id> ou nó LangGraph/DSPy sob um supervisorGenie Code e as Scheduled TasksBeta
O terceiro membro da família, agora trabalhando em segundo plano
Seção adicionada em setembro/2026: Scheduled Tasks é a novidade mais relevante do Genie Code desde seu lançamento, e ainda não existia quando o restante deste documento foi escrito — vale ler mesmo se você já conhece o Genie Code "clássico" (o antigo Databricks Assistant, ver nota 00).
12.1 Linha do tempo
- 11 de março de 2026 — lançamento oficial do Genie Code, descrito pela Databricks como "an autonomous AI agent that fundamentally changes how data work gets done" (comunicado de imprensa).
- 17 de junho de 2026 (Data + AI Summit 2026) — anúncio do Full-Page Command Center, integrações mais profundas com MLflow/Model Serving, provisionamento de compute consciente da tarefa (GPU sob demanda), e o recurso de Scheduled Tasks, divulgado então como "coming soon".
- 8 de julho de 2026, 00:00 UTC — início da cobrança pay-as-you-go do Genie Code (ver 12.8).
- Hoje — Scheduled Tasks já está documentado oficialmente como recurso beta, exigindo aprovação do admin do workspace na página de Previews.
12.2 Genie Code em detalhe (recap)
Diferente do Genie Agents (self-service via chat para usuários de negócio), o Genie Code é voltado a quem escreve código: aparece como painel em notebooks, SQL Editor, Lakeflow Pipelines Editor, dashboards de AI/BI, MLflow e num editor de arquivos. Abre-se pelo ícone de sparkle no canto superior direito da superfície, ou pelo atalho Cmd+I (macOS) / Ctrl+I (Windows) dentro de notebooks.
Por padrão opera em Agent Mode: planeja a solução, busca ativos relevantes (tabelas, notebooks, jobs), roda código, usa o resultado das células para refinar a resposta e corrige erros sozinho — sem exigir aprovação manual a cada micro-passo. Para voltar a um modo só-consultivo, basta pedir algo como "Just explain this to me, don't run any code."
12.3 Sistema de aprovação de ferramentas
Por padrão, o Genie Code pede aprovação antes de usar qualquer ferramenta (rodar uma célula, criar um arquivo, etc.). As opções configuráveis são:
12.4 O que são as Scheduled Tasks
Scheduled Tasks deixam o Genie Code trabalhar enquanto você não está olhando: você define um prompt (e, opcionalmente, um ativo relevante — notebook, workflow ou dashboard) e uma agenda; quando a task roda, o Genie Code executa uma sessão completa e entrega os resultados numa conversa nova, pronta para revisão, refinamento ou continuação interativa.
| Aspecto | Comportamento |
|---|---|
| Aprovação de ferramentas | Sempre automática (classificador de IA bloqueia ações arriscadas) — o usuário não pode desativar isso numa task agendada |
| Conversa | Cada execução cria um chat novo, não estende uma conversa existente |
| Permissões | A execução roda com as permissões de Unity Catalog do criador da task, não de um usuário "de sistema" |
| Compartilhamento | A task em si não pode ser compartilhada entre usuários; o chat de uma execução individual pode, como qualquer chat do Genie Code |
| Limites de uso | Conta para os mesmos limites de uso do Genie do usuário — ao estourar, a execução falha como falharia uma sessão interativa |
12.5 Como criar uma Scheduled Task
Três formas, todas dentro do painel Scheduled tasks (ícone de calendário no Full-Page Genie Code):
- Linguagem natural — peça direto no chat; o Genie pode fazer perguntas de esclarecimento antes de criar a task.
- Sugeridas — o painel oferece uma lista de tasks prontas com base no contexto do workspace.
- Manual — "Create manually" no painel, preenchendo
Title,Prompt,ScheduleeTimezone.
Every morning at 6 AM, check last night's job runs, summarize failures and anomalies, and flag anything that needs my attention today.
12.6 Gerenciando tasks já criadas
- Disparo manual — botão de play, sem esperar o horário agendado;
- Pausar — desliga a task sem apagá-la;
- Editar — título, prompt, agenda ou timezone;
- Excluir — via menu kebab;
- Histórico — cada execução fica registrada, com acesso ao chat individual daquela rodada.
12.7 Casos de uso citados pela Databricks
12.8 Genie Code como task de Job (Databricks Workflows)
Além das Scheduled Tasks (nativas do próprio Genie Code, seção 12.4), existe um recurso relacionado mas distinto: o Genie Code task é um tipo de tarefa que pode ser adicionado a um Job/Workflow multi-task do Databricks, ao lado de tarefas do tipo Notebook, Python, SQL ou dbt. Ao rodar, ele "lança um novo chat do Genie Code com seu prompt e produz uma resposta", de forma não-assistida, dentro do DAG do job.
| Genie Code task (em um Job) | Scheduled Tasks (12.4) | |
|---|---|---|
| Onde vive | Um passo dentro de um Job/Workflow multi-task | Nativa da interface do próprio Genie Code |
| Execução | Não-assistida, como parte da orquestração do job | Segundo a documentação, roda "interativamente" e gera um chat na sua lista de chats |
| Parâmetros | Aceita parâmetros do job via sintaxe {{nome}}, para valores dinâmicos a cada execução | Prompt fixo definido na criação da task |
| Saída | Uma thread de conversa continuável, acessível pela saída (output) da execução do job | Um chat novo por execução, na lista de chats do Genie Code |
Configura-se com um prompt em linguagem natural descrevendo a ação desejada — útil para automatizar passos como analisar anomalias nos dados, resumir resultados de outras tasks do job, ou gerar relatórios de compliance como parte de um pipeline já orquestrado.
12.9 Pricing do Genie Code
A partir de 8 de julho de 2026, 00:00 UTC, o Genie Code passou a ser cobrado em modelo pay-as-you-go, sem mensalidade fixa por usuário:
Auto, padrão, vs. Low) é configurável e persiste durante a conversa — Low reduz custo em tarefas simples. Como Scheduled Tasks conta para os mesmos limites de uso, vale considerar esse ajuste em tasks agendadas de alto volume.Genie Code | Databricks on AWS — docs.databricks.com/aws/en/genie-code
Use Genie Code — docs.databricks.com/aws/en/genie-code/use-genie-code
Genie Code scheduled tasks — docs.databricks.com/aws/en/genie-code/scheduled-tasks
Full page Genie Code — docs.databricks.com/aws/en/genie-code/full-page
Genie Code task (Jobs) — docs.databricks.com/aws/en/jobs/tasks/genie-code
Databricks Launches Genie Code (press release, 11/mar/2026) — prnewswire.com
What's new in Genie Code at Data + AI Summit 2026 (blog, 17/jun/2026) — databricks.com/blog
Anexo — Fontes oficiais consultadas
Referências completas
Para equivalentes em Azure Databricks, os mesmos caminhos existem em learn.microsoft.com/en-us/azure/databricks/genie/.
databricks.com (blog/produto) em vez de docs.databricks.com — incluídas por conterem o único detalhamento oficial disponível sobre arquitetura interna e citações diretas de clientes. São fontes primárias da Databricks, não de terceiros.