Crea LookML con herramientas de programación con agentes

1. Introducción

Las herramientas de creación de código de agentes basadas en el ecosistema de VS Code se volvieron muy populares. 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, crear un panel de LookML con esa nueva medición. Todo esto se hará solicitando un agente de codificación.

Requisitos

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

2. Configura tu instancia de Looker

Cómo crear 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 sobre cómo 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. En la parte superior derecha de la pantalla, haz clic en Agregar conexión.
  3. Crea una fuente de datos nueva 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 desde GitHub a tu propio repositorio. No puedes agregar una clave de implementación a un proyecto que no es tuyo, por lo que es necesario bifurcarlo para vincular el proyecto a Looker.
  2. Habilita el Modo de desarrollo.
  3. Selecciona Desarrollar 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 de creación de modelos de LookML anterior. Captura de pantalla del vínculo del diálogo de creación del modelo anterior
  6. Crea un proyecto nuevo en blanco 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 la Deploy Key a tu repositorio de Git. Asegúrate de hacer clic en el cuadro 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. Para verificar que el proyecto y la fuente de datos funcionen, consulta los datos de la exploración "🛍️ Cymbal Gadgets: Transactions & Sales".
  11. Abre el proyecto cymbal_gadgets en el editor de LookML y presiona el botón Crear copia de desarrollador en la esquina superior derecha.
  12. En Acciones de Git , haz clic en Enviar cambios a remoto 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 el nombre de tu cuenta de usuario de GitHub por YOUR_GITHUB_USER. 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 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 de agentes

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 de MCP Toolbox para bases de datos local en ejecución. MCP Toolbox incluye la implementación oficial de MCP de Looker. En esta sección, configurarás esto para tu instancia de Looker.

  1. Primero, necesitas un client_id y un client_secret de la API. Usa la guía de claves de API de Looker para generar el client_id y el 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 puedes configurarlas en tu entorno de shell. Ejecuta esto 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
    
    Para Windows, ejecuta esto 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 conectarte 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 lugar de trabajo para configurar la extensión con client_id y client_secret. Para 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 el editor

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

4. Crea una medición 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 medición de Customer Lifetime Value será útil en este caso de uso de venta minorista. Usarás el agente para determinar la metodología y LookML para esta medición.

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 Modo de planificación con el modelo de Gemini más reciente con la 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 cambiado

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

Prueba en el IDE

Solicita a Antigravity que 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 medición del valor del ciclo de vida del cliente y, luego, crea una tabla dinámica por el año de registro del cliente. Ejecuta la consulta. Debería verse similar a esto.

Captura de pantalla de la exploración

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

Ahora probaremos 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, solicita 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 de 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 Control de la fuente, revierte los cambios de LookML si lo deseas. Junto a cada archivo de LookML modificado, habrá 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, luego, 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 Desarrollar y, luego, el proyecto cymbal_gadgets. En Configuración del proyecto , selecciona Borrar proyecto. Para confirmar que deseas borrar el proyecto, escribe su nombre (cymbal_gadgets) y, luego, selecciona el botón con la etiqueta Borrar cymbal_gadgets de forma permanente.

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 probar desde el IDE
  • Cómo probar 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 de agentes:

  • Las buenas descripciones son fundamentales para los usuarios y la IA. Solicita 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