SELECTSELECT

SELECT

¿Qué es Databricks Genie y deberías usarlo? (Resumen del webinar)

Esta página también está disponible en English, Deutsch, Français, Italiano, 日本語 y Português.

By SELECTNov 12, 2022 min read

En esta sesión, Ian Whitestone (cofundador y CEO de SELECT by DoiT) y Olivier Soucy (fundador de Okube.ai y partner de Databricks) explicaron qué es realmente Databricks Genie, cómo encajan sus piezas y cuánto cuesta usarlo en la práctica. A continuación encontrarás un resumen completo, por si prefieres leer en lugar de ver el video o quieres tener algo a lo que volver más adelante.

TL;DR

  • Genie no es una sola funcionalidad de Databricks. Son tres productos distintos, Genie One, Genie Agents y Genie Code, que se apoyan en una capa de inteligencia compartida llamada Genie Ontology.
  • Antes era gratis. Desde julio pasado, Databricks empezó a cobrar por Genie Code, y se espera que Genie One y Genie Agents sigan el mismo camino.
  • El costo de la IA es fácil de seguir. El costo del cómputo que Genie genera no lo es, y suele ser la cifra más grande.
  • Los presupuestos de Genie pueden poner un tope a la parte de IA de la factura. Para controlar la parte de cómputo se necesita un SQL warehouse dedicado y correctamente etiquetado.

Genie son tres productos, no uno

Genie se ha convertido en un término que engloba varias cosas, y Databricks no lo ha puesto fácil. Como lo explicó Olivier, el nombre ha cambiado tantas veces que incluso a quienes llevan años trabajando con Databricks les resulta confuso. Esto es lo que hoy se encuentra realmente detrás del nombre Genie.

Genie One

El punto de entrada para usuarios de negocio. Es una interfaz de chat simplificada, parecida a usar ChatGPT o Claude, con la diferencia de que está conectada directamente a tus datos: tus tablas, tus metadatos y cualquier agente que hayas creado. Además, funciona fuera de Databricks: se puede integrar con Slack, Teams u hojas de cálculo a través de la API de Genie, de modo que alguien pueda preguntar "¿cuántas ventas tuvimos la semana pasada?" sin abrir Databricks en ningún momento.

Genie Agents

Por defecto, Genie tiene acceso a todas las tablas de tu catálogo, pero eso no siempre basta para responder bien una pregunta específica. Genie Agents resuelve ese problema al permitirte configurar un recurso con conocimiento real del dominio: qué tablas usar para un tema determinado, instrucciones en lenguaje natural y ejemplos de cálculos o métricas. Genie One invoca a estos agentes de forma automática cuando una pregunta corresponde a su área, sin que tengas que indicar qué agente usar.

Los agentes también pueden configurarse para ejecutarse con las credenciales de quien hace la pregunta, de modo que la seguridad a nivel de fila y el enmascaramiento de columnas existentes se siguen aplicando, o bien con una credencial compartida si quieres que el agente tenga un acceso más amplio.

Genie Code

La pieza orientada a desarrolladores. Ejecuta SQL y Python, y puede crear recursos reales de Databricks: jobs, pipelines, dashboards e incluso otros Genie Agents. En la demo, Olivier no escribió a mano la configuración de un agente: usó Genie Code para generarla, y este le fue pidiendo la información necesaria y luego lo formateó todo correctamente.

La capa subyacente: Genie Ontology

Con Genie Ontology no interactúas directamente: es la capa de inteligencia que hace funcionar a los otros tres productos. Construida sobre Unity Catalog, extrae automáticamente definiciones de negocio, mapea las relaciones entre tablas, analiza tu historial de consultas para entender qué se usa realmente y cómo, y lee los metadatos, comentarios y reglas de gobernanza que ya tienes configurados. Esto es lo que permite que Genie responda preguntas sobre tu negocio específico en lugar de dar respuestas genéricas y desconectadas.

Un ejemplo rápido: enseñarle a Genie sobre un portfolio de acciones

Para mostrar cómo se conectan estas piezas, Olivier hizo una demo sencilla. Tenía una tabla en Unity Catalog con precios históricos de acciones y le hizo a Genie One una pregunta directa: ¿cómo cambió el valor de mi portfolio en los últimos dos años?

Genie One no pudo responder. Podía ver la tabla de precios de acciones, pero no tenía idea de qué acciones poseía Olivier: esa información simplemente no existe en Databricks.

Así que creó un Genie Agent para resolverlo. Las instrucciones del agente incluían las acciones que realmente tenía (en la demo, unos $100 de Apple y $200 de Microsoft, comprados dos años antes) y una explicación en lenguaje natural de cómo calcular el valor del portfolio a partir de eso. También le indicó al agente las tablas de origen correctas.

Después volvió a Genie One y repitió exactamente la misma pregunta, palabra por palabra. Esta vez, en lugar de decir que no tenía información suficiente, Genie generó un gráfico del valor del portfolio a lo largo del tiempo, los rendimientos totales, las ganancias y los momentos clave de las posiciones. Genie One había reconocido automáticamente qué agente era relevante y lo invocó, sin que nadie se lo indicara.

Esta misma configuración también permite cosas como la conversión de unidades. Olivier dio el ejemplo de agregar una instrucción para convertir precios de USD a CAD, o marcas de tiempo a UTC, directamente en la configuración del agente, sin cambiar nada en las tablas subyacentes.

En torno a esta demo surgieron algunos puntos más:

  • Los agentes pueden pasarse el trabajo entre sí. Si una pregunta abarca varios temas, Genie One puede invocar a más de un agente, esperar cada respuesta y combinarlas en una sola.
  • Las definiciones de agentes se pueden exportar como JSON o YAML y desplegarse con Databricks Asset Bundles, la herramienta de despliegue simplificada de Databricks, similar a Terraform. El soporte nativo de Terraform específico para agentes aún no está disponible.
  • Los agentes se pueden evaluar como si fueran código, usando MLflow para definir preguntas de prueba, comparar respuestas esperadas contra respuestas reales a lo largo del tiempo y monitorear desviaciones una vez que el agente está en producción.

Olivier también compartió un ejemplo real de su propio trabajo: una configuración de monitoreo que consulta varios agentes (fallas de workflows, datos de costos, validaciones de calidad de datos) para generar reportes diarios de forma automática, además de la posibilidad de hacer preguntas de seguimiento como "¿por qué tengo duplicados?" y recibir una respuesta específica y útil.

Lo que realmente cuesta Genie

Genie era gratis. Eso cambió en julio pasado. Databricks planeaba originalmente empezar a cobrar por los tres productos a la vez, pero dio marcha atrás para dar tiempo a los equipos a adaptarse. Al momento de este webinar, solo Genie Code se factura, según el uso, aunque se espera que Genie One y Genie Agents también se midan con el tiempo.

Cada usuario recibe 150 DBUs gratis al mes (unos $7 a $8, según el proveedor de nube y la región) antes de que empiecen los cargos. Una excepción que vale la pena conocer: los service principals no reciben esta asignación gratuita. El uso automatizado se factura desde la primera solicitud.

El costo en sí se divide en dos piezas muy distintas:

  1. Uso del LLM. Esta parte es fácil de seguir. Se mide en DBUs y aparece en tus tablas de sistema: puedes consultarla directamente y filtrar por tipo de producto para ver exactamente cuánto te está costando el uso de IA de Genie.
  2. Cómputo. Esta es la parte difícil. Ejecutar Genie Code (o cualquier agente) implica ejecutar SQL y Python reales por debajo, y ese cómputo se factura como cómputo ordinario de Databricks. No hay ninguna columna en las tablas de sistema que diga "esta actividad del warehouse fue de Genie". Es invisible a menos que hagas el esfuerzo de aislarlo.

En la demo del portfolio, el costo total rondó los $5. La parte del LLM se facturó en $0 porque cayó dentro de la asignación mensual gratuita, aunque por sí sola habría costado unos $4. Olivier solo pudo separar el costo del LLM del costo de cómputo porque era su workspace personal, sin ninguna otra actividad en esa ventana de tiempo: en un entorno de producción compartido, ese nivel de separación no es realista sin configuración adicional.

Cómo mantener bajo control los costos de Genie

Para la parte del LLM, Databricks ofrece los presupuestos de Genie, configurables desde la interfaz o como código. Puedes establecer un tope mensual global y un tope por usuario, obtener un dashboard para seguir el consumo y recibir alertas por correo, Slack o Teams cuando alguien se acerca a su límite. Por ahora esto solo cubre Genie Code, ya que es el único producto que se factura, pero se espera que se extienda a Genie One y Genie Agents cuando esos también empiecen a medirse.

Para la parte de cómputo, no existe un control integrado equivalente. El enfoque recomendado es crear un SQL warehouse dedicado específicamente a los Genie Agents, etiquetarlo correctamente y dirigir el tráfico de los agentes a través de él. Así, un costo que de otro modo sería invisible se convierte en algo que realmente puedes ver y combinar con tu dashboard de costos del LLM para tener el panorama completo.

Preguntas frecuentes

¿Genie respeta mi seguridad a nivel de fila y el enmascaramiento de datos existentes? Sí. Puedes configurar un agente para que se ejecute con las credenciales de quien hace la pregunta, lo que significa que cualquier seguridad a nivel de fila o enmascaramiento de columnas existente se sigue aplicando. Como alternativa, puedes darle al agente una credencial compartida si quieres que tenga un acceso más amplio que el de cualquier usuario individual.

¿Puedo elegir qué modelo de IA usa Genie? No. Databricks gestiona y selecciona el modelo por ti: es un modelo propietario construido específicamente para sus productos de datos, y no hay forma de reemplazarlo dentro de Genie. La elección de modelo solo está disponible si construyes una Databricks App totalmente personalizada con tu propia lógica.

¿Pueden distintos Genie Agents trabajar juntos en una misma pregunta? Sí. Genie One actúa como orquestador. Si una pregunta toca varios temas, puede invocar a más de un agente, esperar a que cada uno responda y combinar los resultados en una sola respuesta.

¿Puedo versionar mis Genie Agents como lo haría con código? Parcialmente. Las definiciones de agentes se pueden exportar como JSON o YAML y desplegarse con Databricks Asset Bundles, la herramienta de despliegue de Databricks similar a Terraform. El soporte directo de Terraform para agentes aún no está disponible.

¿Cómo sé si un agente realmente está respondiendo correctamente? Databricks permite hacer evaluaciones con MLflow. Puedes definir un conjunto de preguntas de prueba con respuestas esperadas, seguir la precisión de un agente a lo largo del tiempo y monitorear desviaciones una vez que está en producción.

¿Snowflake tiene algo similar, y tiene el mismo modelo de precios? Sí. Snowflake tiene un producto comparable basado en agentes, con un modelo de precios de dos partes casi idéntico: el uso del LLM más el cómputo que el agente genera. En la mayoría de los casos de uso, el costo de cómputo termina siendo el factor más importante, no el costo del LLM en sí.

¿Genie es realmente gratis? Ya no. Desde julio pasado, Databricks empezó a cobrar específicamente por Genie Code, facturado por uso en DBUs, con una asignación mensual gratuita de 150 DBUs por usuario (los service principals quedan excluidos). Se espera que Genie One y Genie Agents también se midan en el futuro.

Recursos relacionados

¿Quieres la versión escrita y más detallada de todo lo que se cubrió aquí, incluida la consulta exacta a las tablas de sistema para obtener tus costos de Genie? Consulta nuestra guía gratuita: Databricks Genie Explained: What It Is, How to Use It, and What It Costs.