LookML mit agentenbasierten Programmier-Tools erstellen

1. Einführung

Agentenbasierte Tools zur Codeerstellung, die auf dem VS Code-Ökosystem basieren, sind sehr beliebt. Cursor und Antigravity sind nur zwei Beispiele. In diesem Codelab wird gezeigt, wie LookML mit diesen Code-Tools geschrieben werden kann.

Aufgaben

In diesem Codelab verwenden Sie die VS Code-Erweiterung von Looker, um ein LookML-Modell zu ändern. Sie fügen einen neuen Messwert hinzu, testen ihn und erstellen dann ein LookML-Dashboard mit diesem neuen Messwert. All dies wird durch das Prompten eines Coding-KI-Agenten erledigt.

Voraussetzungen

  • Eine Looker-Instanz, in der Sie Entwicklerberechtigungen haben.
  • Grundlegende Kenntnisse von Looker, einschließlich Neues LookML-Projekt erstellen und Explores in Looker ansehen und damit interagieren.
  • Eine API-Client-ID und ein API-Client-Secret für Ihren Nutzer in der Looker-Instanz.
  • VS Code-basierter Coding-Agent. In dieser Anleitung verwenden wir Antigravity.
  • Ein GitHub-Konto
  • Ein Google Cloud-Projekt mit aktiviertem BigQuery

Zielgruppe: LookML-Entwickler, Data Engineers und Architekten.

2. Looker-Instanz einrichten

Google Cloud-Projekt erstellen

  1. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
  2. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.

Looker mit der Datenquelle verbinden

  1. Klicken Sie in Looker unter Admin auf die Überschrift Datenbanken und wählen Sie Verbindungen aus.
  2. Klicken Sie rechts oben auf dem Bildschirm auf Verbindung hinzufügen.
  3. Erstellen Sie eine neue Datenquelle für das Cymbal Gadgets-Dataset. Geben Sie den Namen cymbal_gadgets ein. Wählen Sie Google BigQuery Standard SQL für den SQL-Dialekt aus. Screenshot der allgemeinen Verbindungseinstellungen
  4. Geben Sie auf der nächsten Seite den Namen Ihres Google Cloud-Projekts, das Speicherprojekt looker-private-demo und den Dataset-Namen cymbal_gadgets ein. Screenshot der Datenbankeinstellungen
  5. Übernehmen Sie die Standardeinstellungen für alle verbleibenden Felder und schließen Sie die Erstellung der neuen Datenquelle ab.
  6. Prüfen Sie im SQL-Runner, ob Sie das Dataset abfragen können, indem Sie
    SELECT count(*)
    FROM looker-private-demo.cymbal_gadgets.transactions
    

Projekt aus GitHub importieren

  1. Erstellen Sie einen Fork des Projekts https://github.com/looker-open-source/cymbal_gadgets von GitHub in Ihr eigenes Repository. Sie können einem Projekt, das Ihnen nicht gehört, keinen Bereitstellungsschlüssel hinzufügen. Daher ist das Forken erforderlich, um das Projekt mit Looker zu verknüpfen.
  2. Aktivieren Sie den Entwicklermodus.
  3. Wählen Sie Entwickeln und dann Projekte aus.
  4. Klicken Sie auf der Seite „LookML-Projekte“ auf Neues Modell.
  5. Klicken Sie auf den Link, um die alte Seite zum Erstellen von LookML-Modellen zu verwenden. Screenshot des alten Dialogfelds zum Erstellen von Modellen
  6. Erstellen Sie ein neues leeres Projekt in Looker mit dem Namen cymbal_gadgets. Screenshot des Dialogfelds „Neues Projekt“
  7. Wählen Sie Git konfigurieren aus, um eine Verbindung zum von Ihnen erstellten Fork des Repositorys herzustellen. Screenshot der Git-Einrichtung
  8. Fügen Sie das Deploy Key Ihrem Git-Repository hinzu. Klicken Sie auf das Kästchen, um mit dem Bereitstellungsschlüssel Schreibzugriff zu erlauben. Screenshot der Einrichtung des Git-Bereitstellungsschlüssels
  9. Wählen Sie dann Test and Finalize Setup (Einrichtung testen und abschließen) aus. Screenshot der abgeschlossenen Projekteinrichtung
  10. Prüfen Sie, ob das Projekt und die Datenquelle funktionieren, indem Sie Daten aus dem Explore „🛍️ Cymbal Gadgets: Transactions & Sales“ abfragen.
  11. Öffnen Sie das cymbal_gadgets-Projekt im LookML-Editor und klicken Sie rechts oben auf die Schaltfläche Entwicklerkopie erstellen.
  12. Klicken Sie unter Git Actions (Git-Aktionen) auf Push Changes To Remote (Änderungen per Push an Remote übertragen), damit der Entwicklungszweig in GitHub verfügbar ist. Screenshot von Git-Aktionen
  13. Führen Sie in einer Terminalsitzung auf Ihrem Computer Folgendes aus:
    cd $HOME
    git clone git@github.com:YOUR_GITHUB_USER/cymbal_gadgets.git
    cd cymbal_gadgets
    git checkout YOUR_DEV_BRANCH
    
    Ersetzen Sie YOUR_GITHUB_USER durch den Namen Ihres GitHub-Nutzerkontos. Ersetzen Sie außerdem YOUR_DEV_BRANCH durch den Namen Ihres Entwicklerzweigs. Ihr Entwicklerzweig hat einen Namen wie dev-john-doe-jhgr. Das ist das Wort dev gefolgt von Ihrem Vor- und Nachnamen und einer kurzen zufälligen Zeichenfolge. Ihr persönlicher Entwicklerzweig wird oben im LookML-Editor in der Looker-Benutzeroberfläche angezeigt.

3. Agentic IDE einrichten

VS Code-Erweiterung installieren

Klicken Sie in der IDE im linken Bereich auf das Symbol für Erweiterungen. Suchen Sie dann nach „Looker“ und installieren Sie die offizielle Erweiterung von Google, indem Sie auf die Schaltfläche „Installieren“ klicken.

MCP Toolbox for Databases-Server installieren

Damit Antigravity auf die Looker API zugreifen kann (Abfragen ausführen, SQL-Code und LookML-Modell prüfen sowie Informationen zum Verbindungsschema ansehen), benötigen Sie einen aktiven lokalen MCP Toolbox for Databases-Server. Die MCP Toolbox enthält die offizielle Looker-MCP-Implementierung. In diesem Abschnitt richten Sie das ein und konfigurieren es für Ihre Looker-Instanz.

  1. Zuerst benötigen Sie eine API client_id und client_secret. Verwenden Sie den Leitfaden zu Looker API-Schlüsseln, um die client_id und client_secret für Ihren Nutzer zu generieren. Außerdem benötigen Sie die Basis-URL für Ihre Looker-Instanz.
  2. Jetzt installieren Sie die MCP Toolbox mit npx. Sie können die URL Ihrer Looker-Instanz und die API-Anmeldedaten als Inline-Umgebungsvariablen angeben oder in Ihrer Shell-Umgebung festlegen. Führen Sie diesen Befehl in der Shell-Umgebung für Mac und Linux aus:
    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
    
    Führen Sie unter Windows Folgendes in PowerShell aus:
    $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
    

VS Code-Erweiterung konfigurieren

In diesem Schritt konfigurieren Sie die VS Code-Erweiterung, um eine Verbindung zu Looker und zum Looker-MCP-Server herzustellen.

  1. Verwenden Sie in Antigravity CMD-SHIFT-P (Mac) oder CTRL+SHIFT+P (Linux/Windows), um die Befehlspalette zu öffnen und Preferences: Open Workspace Settings (JSON) auszuwählen.
  2. Fügen Sie die folgenden Einstellungen in Ihre Workspace-Einstellungen ein, um die Erweiterung mit client_id und client_secret zu konfigurieren. Verwenden Sie für looker.projectId den Wert 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"
    }
    

Editor öffnen

  1. Öffnen Sie Antigravity.
  2. Klicken Sie auf Datei > Ordner öffnen….
  3. Rufen Sie den Ordner cymbal_gadgets auf und wählen Sie ihn aus.

4. Messwert für den Customer Lifetime Value erstellen

Zuerst erstellen Sie mit dem Agenten ein neues Measure im vorhandenen LookML-Modell. Eine Customer Lifetime Value-Messung ist in diesem Einzelhandelsanwendungsfall nützlich. Sie verwenden den Agenten, um die Methodik und den LookML-Code für diese Kennzahl zu ermitteln.

Prompt für den KI-Agenten

Im cymbal_gadgets-Projekt in Ihrem Antigravity-Arbeitsbereich sollte rechts eine neue Unterhaltungsoberfläche angezeigt werden. Starten Sie die Unterhaltung im Planungsmodus mit dem neuesten Gemini-Modell und dem Prompt: Create a Customer Lifetime Value measure.

Screenshot des Prompts in Antigravity

Implementierungsplan prüfen

Der KI-Agent erstellt zuerst einen Implementierungsplan. Öffnen Sie den Implementierungsplan, um ihn zu prüfen, und klicken Sie dann auf die Schaltfläche Weiter.

Screenshot des Implementierungsplans

LookML prüfen

Prüfen Sie das geänderte LookML. Prüfen Sie, ob die Änderungen sinnvoll und gültig sind.

Screenshot der geänderten LookML

Die geänderte LookML wird automatisch über die VS Code-Erweiterung mit Looker synchronisiert. Sie kann im Entwicklermodus getestet werden.

In IDE testen

Geben Sie in Antigravity den Prompt query CLV broken down by customer loyalty tier ein. Antigravity verwendet den Looker-MCP-Server, um die Modelle zu finden, die verfügbaren Felder zu untersuchen und eine Abfrage mit Looker auszuführen. Das Ergebnis sieht dann etwa so aus:

Screenshot von Daten in Antigravity

In Looker testen

Öffnen Sie in Looker bei aktiviertem Entwicklermodus das Explore 🛍️ Cymbal Gadgets: Transactions & Sales (🛍️ Cymbal Gadgets: Transaktionen und Verkäufe). Wählen Sie die Messung „Customer Lifetime Value“ aus und pivotieren Sie dann nach dem Jahr der Kundenregistrierung. Führen Sie die Abfrage aus. Das sollte in etwa so aussehen.

Screenshot des explorativen Analysetools

5. Dashboard für den Customer Lifetime Value erstellen

Sehen wir uns nun ein komplexeres Beispiel an. Wir bitten den Agenten, ein völlig neues LookML-Dashboard zu erstellen.

Neues Dashboard vom Agent anfordern

Wechseln Sie zurück zu Antigravity. Achten Sie darauf, dass im selben Gespräch Planungsmodus und das neueste Gemini-Modell ausgewählt sind. Geben Sie dann den Prompt Create a dashboard showing customer lifetime value based on customer loyalty tier ein.

Screenshot der Dashboard-Erstellung

Genehmigen Sie den Implementierungsplan und akzeptieren Sie die Codeänderungen. Diese neue LookML-Datei wird jetzt automatisch mit Looker synchronisiert.

In Looker testen

Rufen Sie im Entwicklermodus den Ordner LookML Dashboards auf. Wählen Sie das neu erstellte Dashboard aus, um es aufzurufen.

Screenshot des neuen Dashboards

6. Bereinigen

  1. Machen Sie in Antigravity im Bereich „Quellcodeverwaltung“ die LookML-Änderungen bei Bedarf rückgängig. Neben jeder geänderten LookML-Datei wird ein Symbol wie ↶ angezeigt, mit dem Sie die Datei zurücksetzen können. Drücken Sie diese Schaltfläche für jede Datei. Screenshot der Option zum Rückgängigmachen von Änderungen
  2. Wählen Sie in Looker Admin, Datenbank und dann Verbindungen aus. Klicken Sie auf das Zahnradsymbol für die cymbal_gadgets-Verbindung und wählen Sie Löschen aus. Bestätigen Sie, dass Sie die Verbindung löschen möchten.
  3. Verwenden Sie in Looker den Entwicklermodus. Wählen Sie Entwickeln und dann das Projekt cymbal_gadgets aus. Wählen Sie unter Projekteinstellungen die Option Projekt löschen aus. Bestätigen Sie, dass Sie das Projekt löschen möchten, indem Sie den Namen des Projekts eingeben: cymbal_gadgets. Klicken Sie dann auf die Schaltfläche cymbal_gadgets endgültig löschen.

7. Glückwunsch

Herzlichen Glückwunsch zum Abschluss des Codelabs.

Behandelte Themen

  • LookML mit einem Agent ändern
  • Implementierungspläne überprüfen
  • So testen Sie über die IDE.
  • So testen Sie in der Looker-Benutzeroberfläche.
  • So erstellen Sie ein neues Dashboard mit einem Agent.

Lösungsvorschlag

Probieren Sie nun die folgenden Prompts in der Benutzeroberfläche aus, um die verschiedenen Funktionen der agentenbasierten IDE kennenzulernen:

  • Gute Beschreibungen sind sowohl für Nutzer als auch für KI von entscheidender Bedeutung. Weisen Sie den Agent an, allen Feldern, die noch keine Beschreibung haben, eine Beschreibung hinzuzufügen.
  • Bitten Sie den Agent, einer der Dimensionsgruppen weitere Zeiträume hinzuzufügen.
  • Bitten Sie den Agenten, eine Abfrage wie „Umsatz nach Produktkategorie, aufgeschlüsselt nach Quartal“ auszuführen.

Weitere Informationen