Tworzenie kodu LookML za pomocą narzędzi do kodowania opartych na agentach

1. Wprowadzenie

Narzędzia do tworzenia kodu agentowego oparte na ekosystemie VS Code stały się bardzo popularne. Cursor i Antigravity to tylko 2 przykłady. W tym ćwiczeniu pokażemy, jak pisać kod LookML za pomocą tych narzędzi.

Co musisz zrobić

W tym ćwiczeniu użyjesz rozszerzenia Lookera do VS Code, aby zmodyfikować model LookML w celu dodania nowego pomiaru, przetestowania go, a następnie utworzenia panelu LookML z użyciem tego pomiaru. Wszystko to zostanie wykonane po wyświetleniu promptu dla agenta kodującego.

Czego potrzebujesz

  • Instancja Lookera, w której masz uprawnienia dewelopera.
  • Podstawowa znajomość Lookera, w tym tworzenie nowego projektu LookML oraz wyświetlanie i korzystanie z eksploracji w Lookerze.
  • Identyfikator klienta API i tajny klucz klienta użytkownika w instancji Lookera.
  • Asystent kodowania oparty na VS Code. W tym przewodniku użyjemy Antigravity.
  • Konto GitHub.
  • projekt Google Cloud z włączoną usługą BigQuery,

Grupa docelowa: programiści LookML, inżynierowie danych i architekci.

2. Konfigurowanie instancji Lookera

Tworzenie projektu Google Cloud

  1. W konsoli Google Cloud na stronie selektora projektu wybierz lub utwórz projekt w chmurze Google.
  2. Sprawdź, czy w projekcie Cloud włączone są płatności. Dowiedz się, jak sprawdzić, czy w projekcie są włączone płatności.

Połącz Lookera ze źródłem danych

  1. W Lookerze w sekcji Administracja przejdź do nagłówka Bazy danych i kliknij Połączenia.
  2. W prawym górnym rogu ekranu kliknij Add Connection (Dodaj połączenie).
  3. Utwórz nowe źródło danych dla zbioru danych Cymbal Gadgets. Nazwij go cymbal_gadgets. Wybierz Google BigQuery Standard SQL dla dialektu SQL. Zrzut ekranu z ogólnymi ustawieniami połączenia
  4. Na następnej stronie wpisz nazwę projektu Google Cloud, projektu pamięci looker-private-demo i nazwę zbioru danych cymbal_gadgets. Zrzut ekranu z ustawieniami bazy danych
  5. Zaakceptuj domyślne wartości we wszystkich pozostałych polach i dokończ proces tworzenia nowego źródła danych.
  6. W SQL Runner sprawdź, czy możesz wysyłać zapytania do zbioru danych, uruchamiając
    SELECT count(*)
    FROM looker-private-demo.cymbal_gadgets.transactions
    

Importowanie projektu z GitHuba

  1. Utwórz rozwidlenie projektu https://github.com/looker-open-source/cymbal_gadgets z GitHuba do własnego repozytorium. Nie możesz dodać klucza wdrożenia do projektu, którego nie jesteś właścicielem, więc aby połączyć projekt z Lookerem, musisz go rozwidlić.
  2. Włącz Tryb deweloperski.
  3. Kliknij kolejno TworzenieProjekty.
  4. Na stronie Projekty LookML kliknij Nowy model.
  5. Kliknij link, aby użyć starej strony tworzenia modelu LookML. Zrzut ekranu z linkiem do okna tworzenia starego modelu
  6. Utwórz w Lookerze nowy pusty projekt o nazwie cymbal_gadgets. Zrzut ekranu okna nowego projektu
  7. Kliknij Skonfiguruj Git, aby połączyć go z utworzonym rozwidlonym repozytorium. Zrzut ekranu konfiguracji Git
  8. Dodaj plik Deploy Key do repozytorium Git. Zaznacz pole, aby zezwolić na dostęp do zapisu za pomocą klucza wdrożenia. Zrzut ekranu konfiguracji klucza wdrażania Git
  9. Następnie kliknij Test and Finalize Setup (Przetestuj i dokończ konfigurację). Zrzut ekranu pokazujący ukończoną konfigurację projektu
  10. Sprawdź, czy projekt i źródło danych działają prawidłowo, wysyłając zapytanie o dane z eksploracji „🛍️ Cymbal Gadgets: Transactions & Sales”.
  11. Otwórz projekt cymbal_gadgets w edytorze LookML i w prawym górnym rogu kliknij przycisk Utwórz kopię deweloperską.
  12. W sekcji Git Actions (Działania Git) kliknij Push Changes To Remote (Wypchnij zmiany do repozytorium zdalnego), aby gałąź deweloperska była dostępna w GitHubie. Zrzut ekranu przedstawiający działania Git
  13. W sesji terminala na komputerze uruchom to polecenie:
    cd $HOME
    git clone git@github.com:YOUR_GITHUB_USER/cymbal_gadgets.git
    cd cymbal_gadgets
    git checkout YOUR_DEV_BRANCH
    
    Zastąp YOUR_GITHUB_USER nazwą konta użytkownika GitHub. Zastąp też nazwę gałęzi deweloperskiej ciągiem YOUR_DEV_BRANCH. Gałąź deweloperska będzie miała nazwę podobną do dev-john-doe-jhgr – czyli słowo dev, po którym następuje Twoje imię i nazwisko oraz krótki ciąg losowych znaków. Osobistą gałąź deweloperską znajdziesz u góry edytora LookML w interfejsie Lookera.

3. Konfigurowanie środowiska IDE opartego na agentach

Instalowanie rozszerzenia VS Code

W IDE kliknij ikonę Rozszerzenia w panelu po lewej stronie. Następnie wyszukaj „Looker” i zainstaluj oficjalne rozszerzenie od Google, klikając przycisk instalacji.

Instalowanie serwera zestawu narzędzi MCP dla baz danych

Aby zapewnić Antigravity dostęp do interfejsu Looker API (wykonywanie zapytań, sprawdzanie kodu SQL, sprawdzanie modelu LookML i sprawdzanie informacji o schemacie połączenia), potrzebujesz działającego lokalnego serwera MCP Toolbox for Databases. Zestaw narzędzi MCP zawiera oficjalną implementację MCP Lookera. W tej sekcji skonfigurujesz tę funkcję dla swojej instancji Lookera.

  1. Najpierw potrzebujesz interfejsu API client_id i client_secret. Skorzystaj z przewodnika po kluczach interfejsu Looker API, aby wygenerować wartości client_id i client_secret dla użytkownika. Potrzebny będzie też podstawowy adres URL instancji Lookera.
  2. Teraz użyjesz npx, aby zainstalować zestaw narzędzi MCP. Adres URL instancji Looker i dane logowania do interfejsu API możesz podać jako wbudowane zmienne środowiskowe lub ustawić je w środowisku powłoki. Uruchom to polecenie w środowisku powłoki w systemie Mac lub 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
    
    W systemie Windows uruchom to w programie 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
    

Konfigurowanie rozszerzenia VS Code

W tym kroku skonfigurujesz rozszerzenie VS Code, aby połączyć się z Lookerem i serwerem MCP Lookera.

  1. W Antigravity otwórz paletę poleceń, naciskając CMD-SHIFT-P (Mac) lub CTRL+SHIFT+P (Linux/Windows), i wybierz Preferences: Open Workspace Settings (JSON).
  2. Dodaj do ustawień Workspace te elementy, aby skonfigurować rozszerzenie za pomocą znaków client_idclient_secret. W przypadku looker.projectId użyj 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"
    }
    

Otwieranie edytora

  1. Otwórz Antigravity.
  2. Kliknij Plik > Otwórz folder....
  3. Przejdź do folderu cymbal_gadgets i wybierz go.

4. Tworzenie wskaźnika długookresowej wartości klienta

Najpierw utworzysz nowy pomiar w dotychczasowym modelu LookML za pomocą agenta. W tym przypadku użyteczna będzie miara Customer Lifetime Value. Agenta użyjesz do określenia metodologii i LookML dla tego pomiaru.

Wydawanie poleceń agentowi

W projekcie cymbal_gadgets w obszarze roboczym Antigravity po prawej stronie powinien pojawić się nowy interfejs rozmowy. Rozpocznij rozmowę w trybie planowania, korzystając z najnowszego modelu Gemini i promptu: Create a Customer Lifetime Value measure.

Zrzut ekranu z promptem w Antygravity

Sprawdź plan implementacji

Najpierw utworzy on plan wdrożenia. Otwórz plan wdrożenia, aby go sprawdzić, a potem kliknij przycisk Dalej.

Zrzut ekranu planu wdrożenia

Sprawdzanie kodu LookML

Sprawdź zmieniony kod LookML. Upewnij się, że zmiany są sensowne i prawidłowe.

Zrzut ekranu ze zmienionym kodem LookML

Zmodyfikowany kod LookML jest automatycznie synchronizowany z Lookerem przez rozszerzenie VS Code. Można go przetestować w trybie deweloperskim.

Testowanie w IDE

Poproś Antigravity o query CLV broken down by customer loyalty tier. Antigravity użyje serwera MCP Lookera, aby znaleźć modele, sprawdzić dostępne pola i uruchomić zapytanie za pomocą Lookera. Wynik będzie wyglądać mniej więcej tak:

Zrzut ekranu z danymi w Antigravity

Testowanie w Lookerze

W Lookerze, po włączeniu trybu programowania, otwórz eksplorację 🛍️ Cymbal Gadgets: Transactions & Sales (Cymbal Gadgets: transakcje i sprzedaż). Wybierz miarę Długookresowa wartość klienta, a następnie przestaw ją na Rok rejestracji klienta. Uruchom zapytanie. Powinien wyglądać podobnie do tego.

Zrzut ekranu z eksploracją

5. Tworzenie panelu Długookresowa wartość klienta

Teraz spróbujemy bardziej złożonego przykładu. Poprosimy agenta o utworzenie zupełnie nowego panelu LookML.

Poproś agenta o nowy panel

Wróć do Antigravity. W tej samej rozmowie upewnij się, że wybrane są tryb planowania i najnowszy model Gemini. Następnie kliknij Create a dashboard showing customer lifetime value based on customer loyalty tier.

Zrzut ekranu z tworzenia panelu

Ponownie zatwierdź plan wdrożenia i zaakceptuj zmiany w kodzie. Nowy plik LookML będzie teraz automatycznie synchronizowany z Lookerem.

Testowanie w Lookerze

W trybie deweloperskim otwórz folder LookML Dashboards. Wybierz nowo utworzony panel, aby go wyświetlić.

Zrzut ekranu nowego panelu

6. Czyszczenie danych

  1. W Antigravity w panelu Kontrola źródła w razie potrzeby cofnij zmiany w LookML. Obok każdego zmodyfikowanego pliku LookML pojawi się symbol, np. ↶, który umożliwia przywrócenie pliku. Naciśnij ten przycisk przy każdym pliku. Zrzut ekranu z cofniętymi zmianami
  2. W Lookerze kliknij kolejno Administracja, Baza danych i Połączenia. Kliknij ikonę koła zębatego obok połączenia cymbal_gadgets i wybierz Usuń. Potwierdź, że chcesz usunąć połączenie.
  3. W Lookerze użyj trybu deweloperskiego. Kliknij Opracowywanie, a potem projekt cymbal_gadgets. W sekcji Ustawienia projektu kliknij Usuń projekt. Potwierdź, że chcesz usunąć projekt, wpisując jego nazwę – cymbal_gadgets –, a następnie klikając przycisk Usuń trwale cymbal_gadgets.

7. Gratulacje

Gratulujemy ukończenia ćwiczenia.

Omówione zagadnienia

  • Jak modyfikować LookML za pomocą agenta.
  • Jak weryfikować plany wdrożenia.
  • Jak testować w IDE
  • Jak testować w interfejsie Lookera.
  • Jak utworzyć nowy panel z agentem.

Do wypróbowania

Teraz wypróbuj w interfejsie te prompty, aby zobaczyć różne możliwości IDE opartego na agentach:

  • Dobre opisy są kluczowe zarówno dla użytkowników, jak i dla AI. Poproś agenta o dodanie opisów do wszystkich pól, które ich nie mają.
  • Poproś agenta o dodanie większej liczby przedziałów czasowych do jednej z grup wymiarów.
  • Poproś agenta o wykonanie zapytania, np. „przychody według kategorii produktów z podziałem na kwartały”.

Więcej informacji