LookML mit agentenbasierten Programmier-Tools erstellen

1. Einführung

Agentenbasierte Tools zur Codeerstellung, die auf dem VS Code-Ökosystem basieren, sind sehr beliebt geworden. 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, einen neuen Messwert hinzuzufügen, den neuen Messwert zu testen und dann ein LookML-Dashboard mit diesem neuen Messwert zu erstellen. All das geschieht durch Prompts an einen Coding-Agenten.

Voraussetzungen

  • Eine Looker-Instanz, in der Sie Entwicklerberechtigungen haben.
  • Grundlegende Kenntnisse in Looker, einschließlich Erstellen eines neuen LookML-Projekts und Explores in Looker ansehen und damit interagieren.
  • Eine API-`client_id` und ein `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. Gehen Sie in Looker unter Admin zur Ü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 Dataset „Cymbal Gadgets“. Geben Sie ihr den Namen cymbal_gadgets. 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 Standardwerte für alle verbleibenden Felder und schließen Sie die Erstellung der neuen Datenquelle ab.
  6. Bestätigen Sie im SQL-Runner , dass 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 ein Fork 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 zur Erstellung von LookML-Modellen zu verwenden. Screenshot des alten Links zum Erstellen von Modellen
  6. Erstellen Sie in Looker ein neues leeres Projekt mit dem Namen cymbal_gadgets. Screenshot des Dialogfelds „Neues Projekt“
  7. Wählen Sie Git konfigurieren aus, um es mit dem von Ihnen erstellten Fork-Repository zu verbinden. Screenshot der Git-Einrichtung
  8. Fügen Sie Ihrem Git-Repository den Deploy Key hinzu. Klicken Sie auf das Kästchen, um Schreibzugriff mit dem Bereitstellungsschlüssel zuzulassen. Screenshot der Einrichtung des Git-Bereitstellungsschlüssels
  9. Wählen Sie dann 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 der Explore-Abfrage „🛍️ Cymbal Gadgets: Transactions & Sales“ abfragen.
  11. Öffnen Sie das Projekt cymbal_gadgets im LookML-Editor und klicken Sie rechts oben auf die Schaltfläche Entwicklerkopie erstellen.
  12. Klicken Sie unter Git-Aktionen auf Änderungen 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 Entwicklungszweigs. Ihr Entwicklungszweig hat einen Namen wie dev-john-doe-jhgr. Das ist das Wort dev, gefolgt von Ihrem Vor- und Nachnamen und einer kurzen zufälligen String. Ihren persönlichen Entwicklungszweig finden Sie oben im LookML-Editor in der Looker-UI.

3. Agentenbasierte IDE einrichten

VS Code-Erweiterung installieren

Klicken Sie in der IDE im linken Bereich auf das Symbol „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 prüfen, LookML-Modell prüfen und Informationen zum Verbindungsschema prüfen), 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 sie ein und konfigurieren sie für Ihre Looker-Instanz.

  1. Zuerst benötigen Sie eine API-client_id und ein client_secret. Verwenden Sie die Anleitung zu Looker-API-Schlüsseln, um die client_id und das 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 sie in Ihrer Shell-Umgebung festlegen. Führen Sie dies 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 für 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 dem Looker-MCP-Server herzustellen.

  1. Öffnen Sie in Antigravity mit CMD-UMSCHALT-P (Mac) oder STRG+UMSCHALT+P (Linux/Windows) die Befehlspalette und wählen Sie Preferences: Open Workspace Settings (JSON) aus.
  2. Fügen Sie Ihren Arbeitsbereichseinstellungen Folgendes hinzu, um die Erweiterung mit client_id und client_secret zu konfigurieren. Verwenden Sie für looker.projectId die Option 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 einen neuen Messwert im vorhandenen LookML-Modell. Ein Messwert für den Customer Lifetime Value ist in diesem Einzelhandels-Anwendungsfall nützlich. Sie verwenden den Agenten, um die Methodik und LookML für diesen Messwert zu bestimmen.

Prompt an den Agenten

Im Projekt cymbal_gadgets 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 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. Achten Sie darauf, dass die Änderungen sinnvoll und gültig sind.

Screenshot der geänderten LookML

Das geänderte LookML wird von der VS Code-Erweiterung automatisch mit Looker synchronisiert. Es kann im Entwicklermodus getestet werden.

In der IDE testen

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

Screenshot von Daten in Antigravity

In Looker testen

Öffnen Sie in Looker mit aktiviertem Entwicklermodus die Explore-Abfrage 🛍️ Cymbal Gadgets: Transactions &Sales. Wählen Sie den Messwert „Customer Lifetime Value“ aus und pivotieren Sie dann nach dem Jahr der Kundenregistrierung. Führen Sie die Abfrage aus. Sie sollte so aussehen:

Screenshot der explorativen Analyse

5. Dashboard für den Customer Lifetime Value erstellen

Jetzt versuchen wir ein komplexeres Beispiel. Wir bitten den Agenten, ein völlig neues LookML-Dashboard zu erstellen.

Neues Dashboard vom Agenten anfordern

Wechseln Sie zurück zu Antigravity. Achten Sie in derselben Unterhaltung darauf, dass der 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 noch einmal 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 anzusehen.

Screenshot des neuen Dashboards

6. Bereinigen

  1. Sie können die LookML-Änderungen in Antigravity im Bereich „Quellcodeverwaltung“ zurücksetzen. Neben jeder geänderten LookML-Datei befindet sich ein Symbol wie ↶, mit dem Sie die Datei zurücksetzen können. Klicken Sie für jede Datei auf diese Schaltfläche. Screenshot der Option zum Rückgängigmachen von Änderungen
  2. Wählen Sie in Looker Admin > Datenbank > Verbindungen aus. Klicken Sie für die Verbindung cymbal_gadgets auf das Zahnradsymbol 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. Geben Sie dazu den Namen des Projekts ein (cymbal_gadgets) und wählen Sie dann die Schaltfläche cymbal_gadgets endgültig löschen aus.

7. Glückwunsch

Herzlichen Glückwunsch zum Abschluss des Codelabs.

Behandelte Themen

  • LookML mit einem Agenten ändern
  • Implementierungspläne prüfen
  • Aus der IDE testen
  • In der Looker-UI testen
  • Neues Dashboard mit einem Agenten erstellen

Lösungsvorschlag

Probieren Sie jetzt die folgenden Prompts in der UI aus, um verschiedene Funktionen der agentenbasierten IDE zu sehen:

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

Weitere Informationen