使用代理式程式設計工具撰寫 LookML

1. 簡介

以 VS Code 生態系統為基礎的代理式程式碼撰寫工具非常受歡迎。Cursor 和 Antigravity 只是其中兩個例子。本程式碼研究室將示範如何使用這些程式碼工具編寫 LookML。

執行步驟

在本程式碼研究室中,您將使用 Looker 的 VS Code 擴充功能修改 LookML 模型,加入新的測量指標、測試新指標,然後使用該新指標建構 LookML 資訊主頁。系統會提示程式碼編寫代理程式執行上述所有操作。

軟硬體需求

  • 您具備開發人員權限的 Looker 執行個體。
  • 熟悉 Looker 基本操作,包括建立新的 LookML 專案,以及在 Looker 中查看及使用「探索」
  • Looker 執行個體上使用者的 API client_id 和 client_secret。
  • 以 VS Code 為基礎的程式碼代理。在本指南中,我們將使用 Antigravity。
  • GitHub 帳戶。
  • 已啟用 BigQuery 的 Google Cloud 專案。

目標對象:LookML 開發人員、資料工程師和架構師。

2. 設定 Looker 執行個體

建立 Google Cloud 專案

  1. Google Cloud 控制台的專案選取器頁面中,選取或建立 Google Cloud 專案
  2. 確認 Cloud 專案已啟用計費功能。瞭解如何檢查專案是否已啟用計費功能

將 Looker 連線至資料來源

  1. 在 Looker 的「管理」下方,前往「資料庫」標題,然後選取「連線」
  2. 按一下畫面右上角的「新增連結」
  3. 為 Cymbal Gadgets 資料集建立新的資料來源。將其命名為 cymbal_gadgets。選取 SQL 方言的 Google BigQuery Standard SQL一般連線設定的螢幕截圖
  4. 在下一頁中,輸入 Google Cloud 雲端專案名稱、儲存空間專案 looker-private-demo 和資料集名稱 cymbal_gadgets資料庫設定的螢幕截圖
  5. 其餘欄位均保留預設值,然後完成建立新資料來源的程序。
  6. SQL Runner 中執行下列查詢,確認您可以查詢資料集:
    SELECT count(*)
    FROM looker-private-demo.cymbal_gadgets.transactions
    

從 GitHub 匯入專案

  1. 從 GitHub 將專案 https://github.com/looker-open-source/cymbal_gadgets 分支到您自己的存放區。您無法將部署金鑰新增至不屬於自己的專案,因此必須先建立分支,才能將專案連結至 Looker。
  2. 啟用「開發模式」
  3. 依序選取「開發」和「專案」
  4. 在「LookML 專案」頁面中,按一下「新增模型」
  5. 按一下連結,即可使用舊版 LookML 模型建立頁面。舊模型建立對話方塊連結的螢幕截圖
  6. 在 Looker 中建立名為 cymbal_gadgets 的空白專案。新專案對話方塊的螢幕截圖
  7. 選擇「設定 Git」,將其連結至您建立的分支存放區。Git 設定的螢幕截圖
  8. Deploy Key 新增至 Git 存放區。請務必點選方塊,允許使用部署金鑰寫入。Git 部署金鑰設定的螢幕截圖
  9. 然後選擇「測試並完成設定」專案設定完成的螢幕截圖
  10. 從「🛍️ Cymbal Gadgets: Transactions & Sales」探索中查詢資料,確認專案和資料來源是否正常運作。
  11. 在 LookML 編輯器中開啟 cymbal_gadgets 專案,然後按一下右上方的「建立開發人員副本」按鈕。
  12. 在「Git Actions」下方,按一下「Push Changes To Remote」,讓 GitHub 提供開發分支版本。Git 動作的螢幕截圖
  13. 在電腦的終端機工作階段中執行下列指令:
    cd $HOME
    git clone git@github.com:YOUR_GITHUB_USER/cymbal_gadgets.git
    cd cymbal_gadgets
    git checkout YOUR_DEV_BRANCH
    
    YOUR_GITHUB_USER 替換成 GitHub 使用者帳戶名稱。並將 YOUR_DEV_BRANCH 替換成開發分支名稱。開發分支的名稱會類似 dev-john-doe-jhgr,也就是 dev 這個字,後面接著您的姓名,以及一小段隨機字串。在 Looker UI 中,個人開發分支會顯示在 LookML 編輯器的頂端。

3. 設定 Agentic IDE

安裝 VS Code 擴充功能

在 IDE 中,按一下左側面板的「擴充功能」圖示。然後搜尋「Looker」,按一下安裝按鈕,安裝 Google 官方擴充功能。

安裝 MCP Toolbox for Databases 伺服器

如要授權 Antigravity 存取 Looker API (執行查詢、檢查 SQL、檢查 LookML 模型,以及檢查連線結構定義資訊),您需要執行本機 MCP Toolbox for Databases 伺服器。MCP Toolbox 隨附官方 Looker MCP 實作項目。在本節中,您將設定並為 Looker 執行個體設定這項功能。

  1. 首先,您需要 API client_idclient_secret。請參閱「Looker API 金鑰指南」,為使用者產生 client_idclient_secret。您還需要 Looker 執行個體的基準網址。
  2. 接下來要使用 npx 安裝 MCP Toolbox。您可以提供 Looker 執行個體網址和 API 憑證做為內嵌環境變數,也可以在殼層環境中設定這些變數。在 Mac 和 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
    
    如果是 Windows,請在 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
    

設定 VS Code 擴充功能

在這個步驟中,您將設定 VS Code 擴充功能,以便連線至 Looker 和 Looker MCP 伺服器。

  1. 在 Antigravity 中,使用 CMD-SHIFT-P 鍵 (Mac) 或 CTRL+SHIFT+P 鍵 (Linux/Windows) 開啟指令面板,然後選擇 Preferences: Open Workspace Settings (JSON)
  2. 在 Workspace 設定中加入下列項目,使用 client_idclient_secret 設定擴充功能。如要使用 looker.projectId,請使用 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"
    }
    

開啟編輯器

  1. 開啟 Antigravity。
  2. 依序點選「File」 >「Open Folder...」
  3. 找出並選取 cymbal_gadgets 資料夾。

4. 建立顧客終身價值指標

首先,您將使用 Agent 在現有的 LookML 模型中建立新的指標Customer Lifetime Value 指標在這個零售業使用情境中會很有用。您將使用 Agent 判斷這項指標的方法和 LookML。

提示代理

在 Antigravity 工作區的 cymbal_gadgets 專案中,右側應該會顯示新的對話介面。在規劃模式中,使用最新的 Gemini 模型和提示「Create a Customer Lifetime Value measure.」開始對話。

Antigravity 中的提示螢幕截圖

查看導入計畫

代理程式會先建立實作計畫,開啟實作計畫並詳閱內容,然後按一下「繼續」按鈕。

實作計畫的螢幕截圖

查看 LookML

查看變更後的 LookML。確認變更內容合理且有效。

變更後的 LookML 螢幕截圖

VS Code 擴充功能會自動將修改後的 LookML 同步至 Looker。您可以在開發模式中測試。

在 IDE 中測試

提示 Antigravity query CLV broken down by customer loyalty tier。Antigravity 會使用 Looker MCP 伺服器尋找模型、檢查可用欄位,並使用 Looker 執行查詢。結果會類似如下內容:

Antigravity 中的資料螢幕截圖

在 Looker 中測試

在 Looker 中啟用開發模式,然後開啟「🛍️ Cymbal Gadgets: Transactions & Sales」(🛍️ Cymbal Gadgets:交易和銷售) 探索。選取「顧客終身價值」指標,然後依「顧客註冊年份」透視。執行查詢。內容大致如下:

「探索」的螢幕截圖

5. 建立顧客終身價值 (CLV) 資訊主頁

現在我們要嘗試更複雜的範例。我們會要求代理程式建立全新的 LookML 資訊主頁。

向服務專員索取新資訊主頁

切換回 Antigravity。在同一則對話中,確認已選取「規劃模式」和最新的 Gemini 模型。然後提示 Create a dashboard showing customer lifetime value based on customer loyalty tier

建立資訊主頁的螢幕截圖

再次核准導入計畫,並接受程式碼變更。現在,這個新的 LookML 檔案會自動與 Looker 同步。

在 Looker 中測試

在開發模式中,前往 LookML Dashboards 資料夾。選取新建立的資訊主頁即可查看。

新版資訊主頁的螢幕截圖

6. 清理

  1. 在「Source Control」(來源控制) 窗格的「Antigravity」下方,視需要還原 LookML 變更。每個修改過的 LookML 檔案旁都會顯示 ↶ 等符號,可供還原檔案。為每個檔案按下該按鈕。還原變更的螢幕截圖
  2. 在 Looker 中,依序選取「管理」、「資料庫」和「連線」。按一下 cymbal_gadgets 連線的齒輪圖示,然後選擇「刪除」。確認要刪除連結。
  3. 在 Looker 中使用開發模式。依序選取「開發」cymbal_gadgets 專案。在「專案設定」下方選取「刪除專案」。輸入專案名稱「cymbal_gadgets」- cymbal_gadgets -,然後選取標示為「Permanently Delete cymbal_gadgets」(永久刪除 cymbal_gadgets) 的按鈕,確認要刪除專案。

7. 恭喜

恭喜您完成本程式碼研究室。

涵蓋內容

  • 如何使用 Agent 修改 LookML。
  • 如何驗證導入計畫。
  • 如何從 IDE 進行測試。
  • 如何在 Looker 使用者介面中測試。
  • 如何使用代理建立新資訊主頁。

試試以下功能

現在請在 UI 中嘗試下列提示,瞭解代理 IDE 的不同功能:

  • 良好的說明對使用者和 AI 來說都至關重要。提示 Agent 為所有沒有說明的欄位新增說明。
  • 請服務專員在其中一個維度群組中新增更多時間範圍。
  • 要求代理執行查詢,例如「依產品類別細分收益,並依季度樞紐分析」。

瞭解詳情