Crea LookML con herramientas de programación con agentes

1. Introducción

Las herramientas de creación de código con agentes basadas en el ecosistema de VS Code se volvieron muy populares. El cursor y Antigravity son solo dos ejemplos. En este codelab, se demostrará cómo se puede escribir LookML con estas herramientas de código.

Actividades

En este codelab, usarás la extensión de VS Code de Looker para modificar un modelo de LookML y agregar una nueva medición, probarla y, luego, compilar un panel de LookML con esa nueva medición. Todo esto se hará solicitándole a un agente de codificación.

Requisitos

Público: Desarrolladores de LookML, ingenieros y arquitectos de datos.

2. Configura tu instancia de Looker

Crea un proyecto de Google Cloud

  1. En la consola de Google Cloud, en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud.
  2. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información para verificar si la facturación está habilitada en un proyecto.

Conecta Looker a la fuente de datos

  1. En Looker, en Administrador, ve al encabezado Bases de datos y selecciona Conexiones.
  2. Haz clic en Agregar conexión en la parte superior derecha de la pantalla.
  3. Crea una nueva fuente de datos para el conjunto de datos de Cymbal Gadgets. Asígnale el nombre cymbal_gadgets. Selecciona Google BigQuery Standard SQL para el dialecto de SQL. Captura de pantalla de la configuración general de conexión
  4. En la página siguiente, ingresa el nombre de tu proyecto de Google Cloud, el proyecto de almacenamiento looker-private-demo y el nombre del conjunto de datos cymbal_gadgets. Captura de pantalla de la configuración de la base de datos
  5. Acepta los valores predeterminados de todos los campos restantes y completa el proceso de creación de la nueva fuente de datos.
  6. En el Ejecutor de SQL, confirma que puedes consultar el conjunto de datos ejecutando
    SELECT count(*)
    FROM looker-private-demo.cymbal_gadgets.transactions
    

Importa el proyecto desde GitHub

  1. Bifurca el proyecto https://github.com/looker-open-source/cymbal_gadgets de GitHub en tu propio repositorio. No puedes agregar una clave de implementación a un proyecto que no te pertenece, por lo que es necesario bifurcarlo para vincularlo a Looker.
  2. Habilita el Modo de desarrollador.
  3. Selecciona Desarrollo y, luego, Proyectos.
  4. En la página Proyectos de LookML, haz clic en Modelo nuevo.
  5. Haz clic en el vínculo para usar la página anterior de creación de modelos de LookML. Captura de pantalla del vínculo del diálogo de creación del modelo anterior
  6. Crea un proyecto en blanco nuevo en Looker llamado cymbal_gadgets. Captura de pantalla del diálogo de proyecto nuevo
  7. Elige Configurar Git para conectarlo al repositorio bifurcado que creaste. Captura de pantalla de la configuración de Git
  8. Agrega Deploy Key a tu repositorio de Git. Asegúrate de hacer clic en la casilla para permitir el acceso de escritura con la clave de implementación. Captura de pantalla de la configuración de la clave de implementación de Git
  9. Luego, elige Probar y finalizar la configuración. Captura de pantalla de la configuración del proyecto completada
  10. Verifica que el proyecto y la fuente de datos funcionen consultando datos desde la exploración "🛍️ Cymbal Gadgets: Transactions & Sales".
  11. Abre el proyecto cymbal_gadgets en el editor de LookML y presiona el botón Create Developer Copy en la esquina superior derecha.
  12. En Git Actions, haz clic en Push Changes To Remote para que la rama de desarrollo esté disponible en GitHub. Captura de pantalla de las acciones de Git
  13. Desde una sesión de terminal en tu computadora, ejecuta lo siguiente:
    cd $HOME
    git clone git@github.com:YOUR_GITHUB_USER/cymbal_gadgets.git
    cd cymbal_gadgets
    git checkout YOUR_DEV_BRANCH
    
    Sustituye YOUR_GITHUB_USER por el nombre de tu cuenta de usuario de GitHub. También sustituye el nombre de tu rama de desarrollo por YOUR_DEV_BRANCH. Tu rama de desarrollo se llamará algo como dev-john-doe-jhgr, es decir, la palabra dev seguida de tu nombre y apellido, y, luego, una cadena aleatoria corta. Encontrarás tu rama de desarrollo personal en la parte superior del editor de LookML en la IU de Looker.

3. Configura tu IDE agentic

Instala la extensión de VS Code

En el IDE, haz clic en el ícono de Extensiones en el panel izquierdo. Luego, busca "Looker" y haz clic en el botón de instalación para instalar la extensión oficial de Google.

Instala el servidor de MCP Toolbox para bases de datos

Para proporcionar a Antigravity acceso a la API de Looker (ejecutar consultas, inspeccionar SQL, inspeccionar el modelo de LookML y la información del esquema de conexión), necesitas un servidor local en ejecución de MCP Toolbox para bases de datos. MCP Toolbox incluye la implementación oficial del MCP de Looker. En esta sección, configurarás esta opción para tu instancia de Looker.

  1. Primero, necesitas una API de client_id y client_secret. Usa la guía de claves de la API de Looker para generar client_id y client_secret para tu usuario. También necesitarás la URL base de tu instancia de Looker.
  2. Ahora usarás npx para instalar MCP Toolbox. Puedes proporcionar la URL de tu instancia de Looker y las credenciales de la API como variables de entorno intercaladas, o bien puedes establecerlas en tu entorno de shell. Ejecuta lo siguiente en el entorno de shell para Mac y Linux:
    LOOKER_BASE_URL="https://your-instance.looker.com" \
    LOOKER_CLIENT_ID="YOUR_CLIENT_ID" \
    LOOKER_CLIENT_SECRET="YOUR_CLIENT_SECRET" \
    npx @toolbox-sdk/server --prebuilt=looker,looker-dev
    
    En Windows, ejecuta este comando en PowerShell:
    $env:LOOKER_BASE_URL="https://your-instance.looker.com"
    $env:LOOKER_CLIENT_ID="YOUR_CLIENT_ID"
    $env:LOOKER_CLIENT_SECRET="YOUR_CLIENT_SECRET"
    npx @toolbox-sdk/server --prebuilt=looker,looker-dev
    

Configura la extensión de VS Code

En este paso, configurarás la extensión de VS Code para que se conecte a Looker y al servidor de MCP de Looker.

  1. En Antigravity, usa CMD-MAYÚS-P (Mac) o CTRL + MAYÚS + P (Linux/Windows) para abrir la paleta de comandos y elegir Preferences: Open Workspace Settings (JSON).
  2. Agrega lo siguiente a la configuración del espacio de trabajo para configurar la extensión con client_id y client_secret. Para el looker.projectId, usa cymbal_gadgets:
    {
       "looker.instanceURL": "https://your-instance.looker.com",
       "looker.clientId": "YOUR_API_KEY_CLIENT_ID",
       "looker.clientSecret": "YOUR_API_KEY_CLIENT_SECRET",
       "looker.projectId": "cymbal_gadgets"
    }
    

Abre tu editor

  1. Abre Antigravity.
  2. Haz clic en File > Open Folder….
  3. Navega hasta la carpeta cymbal_gadgets y selecciónala.

4. Crea una métrica del valor del ciclo de vida del cliente

Primero, crearás una nueva medición en el modelo de LookML existente con el agente. Una medida de Customer Lifetime Value será útil en este caso de uso de comercio minorista. Usarás el agente para determinar la metodología y el LookML de esta medida.

Solicita al agente

En el proyecto cymbal_gadgets de tu espacio de trabajo de Antigravity, deberías tener una nueva interfaz de conversación a la derecha. Inicia la conversación en el modo de planificación con el modelo de Gemini más reciente y la siguiente instrucción: Create a Customer Lifetime Value measure.

Captura de pantalla de la instrucción en Antigravity

Verifica el plan de implementación

Primero, el agente creará un plan de implementación. Abre el plan de implementación para revisarlo y, luego, haz clic en el botón Continuar.

Captura de pantalla del plan de implementación

Revisa el LookML

Revisa el LookML modificado. Asegúrate de que los cambios tengan sentido y sean válidos.

Captura de pantalla del LookML modificado

La extensión de VS Code sincroniza automáticamente el LookML modificado con Looker. Se puede probar en el modo de desarrollo.

Probar en el IDE

Escribe instrucciones en Antigravity para query CLV broken down by customer loyalty tier. Antigravity usará el servidor de MCP de Looker para encontrar los modelos, examinar los campos disponibles y ejecutar una consulta con Looker. El resultado será similar al siguiente:

Captura de pantalla de los datos en Antigravity

Prueba en Looker

En Looker, con el modo de desarrollo activado, abre la exploración 🛍️ Cymbal Gadgets: Transactions & Sales. Selecciona la métrica Valor del ciclo de vida del cliente y, luego, crea una tabla dinámica según el año de registro del cliente. Ejecuta la consulta. Debería tener un aspecto similar al siguiente:

Captura de pantalla de la exploración

5. Crea un panel del valor del ciclo de vida del cliente

Ahora probaremos con un ejemplo más complejo. Le pediremos al agente que cree un panel de LookML completamente nuevo.

Solicita un panel nuevo al agente

Vuelve a Antigravity. En la misma conversación, asegúrate de que estén seleccionados el Modo de planificación y el modelo de Gemini más reciente. Luego, ingresa la instrucción Create a dashboard showing customer lifetime value based on customer loyalty tier.

Captura de pantalla de la creación del panel

Nuevamente, aprueba el plan de implementación y acepta los cambios en el código. Ahora, este nuevo archivo de LookML se sincronizará automáticamente con Looker.

Prueba en Looker

En el modo de desarrollo, navega a la carpeta LookML Dashboards. Selecciona el panel recién creado para verlo.

Captura de pantalla del panel nuevo

6. Limpia

  1. En Antigravity, en el panel Source Control, revierte los cambios de LookML si lo deseas. Junto a cada archivo de LookML modificado, aparecerá un símbolo como ↶ para revertir el archivo. Presiona ese botón para cada archivo. Captura de pantalla de la opción para revertir cambios
  2. En Looker, selecciona Administrador, luego Base de datos y, por último, Conexiones. Haz clic en el ícono de ajustes de la conexión cymbal_gadgets y elige Borrar. Confirma que deseas borrar la conexión.
  3. En Looker, usa el Modo de desarrollo. Selecciona Desarrollo y, luego, el proyecto cymbal_gadgets. En Project Settings, selecciona Delete Project. Para confirmar que quieres borrar el proyecto, escribe su nombre (cymbal_gadgets) y, luego, selecciona el botón etiquetado como Permanently Delete cymbal_gadgets.

7. Felicitaciones

Felicitaciones por completar el codelab.

Temas abordados

  • Cómo modificar LookML con un agente
  • Cómo verificar los planes de implementación
  • Cómo realizar pruebas desde el IDE
  • Cómo realizar pruebas en la IU de Looker
  • Cómo crear un panel nuevo con un agente

Solución

Ahora, prueba las siguientes instrucciones en la IU para ver las diferentes capacidades del IDE agentic:

  • Las buenas descripciones son fundamentales tanto para los usuarios como para la IA. Indícale al agente que agregue descripciones a todos los campos que no tengan una.
  • Pídele al agente que agregue más períodos a uno de los grupos de dimensiones.
  • Pídele al agente que realice una consulta como "Ingresos desglosados por categoría de producto y segmentados por trimestre".

Más información