Le pides a un LLM que te escriba una medida de margen acumulado. Te devuelve código que parece DAX, lo pegas en Power BI y falla. O peor: funciona, pero calcula mal y no te das cuenta hasta el cierre.
SQLBI ha publicado la segunda versión de su benchmark DAX con LLMs. Los resultados cambian la conversación: los modelos de última generación escriben DAX correctamente en la mayoría de casos, pero ninguno llega al cien por cien.
Este artículo resume qué modelos funcionan hoy, qué metodología usa el benchmark para medirlos y qué regla práctica aplicar cuando trabajes con IA y DAX.
El DAX LLM Benchmark lo desarrollan Marco Russo, de SQLBI, y Maxim Anatsko, creador de la primera versión. Se consulta en daxbench.com.
El benchmark evalúa la capacidad de los LLMs para escribir código DAX correcto. No evalúa el modelo semántico: evalúa el código DAX que devuelve el modelo.
Las tareas incluyen escribir o corregir medidas, consultas DAX, tablas y columnas calculadas y funciones definidas por el usuario, sobre variaciones del modelo Contoso.
Metodología:
La respuesta se valida ejecutando una consulta de prueba. Si el resultado es correcto, se analizan las buenas prácticas. Una tarea incorrecta no puntúa aunque la sintaxis sea válida.
La versión 2 del benchmark evalúa modelos de lanzamiento reciente. Seis modelos de tres proveedores obtienen entre 90% y 96%.
Lo que deja claro es que la generación del modelo importa más que el proveedor.
Las diferencias entre modelos similares son pequeñas. Probablemente irrelevantes en el uso diario.
Cada tarea fue resuelta correctamente por al menos un LLM. Eso significa que ninguna tarea es imposible para la IA, pero también que ningún modelo es infalible.
Los modelos de código abierto siguen por detrás, con la misma tendencia de mejora.
Imagina que cierras cada mes con un dashboard de ventas. Tienes que escribir una medida nueva: margen acumulado por cliente, filtrado por región y comparado con el año anterior.
Puedes pedírselo a un LLM. Te devolverá código DAX. Puede que funcione a la primera. Puede que falle. Puede que funcione pero calcule mal.
El benchmark te dice dos cosas:
Primero: los modelos más recientes escriben DAX lo bastante bien como para ahorrar tiempo. No tienes que escribir todo desde cero.
Segundo: ningún modelo es fiable al cien por cien. Tienes que revisar el código y validar el resultado con una consulta de prueba.
SQLBI recomienda usar el benchmark para elegir generación de modelo y controlar costes, pero validar con pruebas propias sobre tus modelos semánticos.
El benchmark mide competencia general sobre el modelo Contoso. Tu modelo tiene sus propias tablas, relaciones y reglas de negocio. Un LLM puede escribir DAX correcto en el benchmark y fallar en tu modelo si no le das el contexto adecuado.
Prueba esto:
Si el modelo falla, revisa la petición. Puede que necesites describir mejor el modelo o dar ejemplos de medidas existentes.
El benchmark concluye que aprender DAX sigue siendo útil. No para escribir todo desde cero, sino para leer y validar las reglas de negocio que generan los LLM.
Piensa en esto: un LLM te escribe una medida de margen acumulado. La sintaxis es correcta. La pegas en Power BI y funciona. Publicas el dashboard.
Dos semanas después, un usuario te dice que los números no cuadran. Revisas la medida. El LLM usó CALCULATE con un filtro que no respeta la jerarquía de fechas. El error estaba ahí desde el principio, pero no lo viste porque no sabías leer DAX.
Aprender DAX no significa memorizarlo todo. Significa entender cómo funciona el contexto de filtro, cómo se evalúan las medidas y qué hace cada función. Lo suficiente para leer el código que genera el LLM y validar que cumple con las reglas de negocio.
Mi regla: úsalos para arrancar. Nunca para publicar sin revisar.
Los LLMs de última generación escriben DAX correctamente en la mayoría de casos. Eso te ahorra tiempo. Pero ninguno llega al cien por cien. Eso significa que tienes que revisar el código y validar el resultado antes de publicar.
El problema no es la IA. Es creer que ya no hace falta revisar.
Próximo paso: elige un modelo de última generación, pídele que escriba una medida sobre tu modelo y valida el resultado con una consulta de prueba. Si funciona, úsalo. Si falla, revisa la petición y vuelve a intentarlo. Y en cualquier caso, lee el código antes de publicar.
¿Qué te ha parecido? Comparte tu experiencia o tu pregunta en los comentarios.