エージェント コーディング ツールを使用して LookML を作成する

1. はじめに

VS Code エコシステムに基づくエージェント コード作成ツールが非常に普及しています。カーソルや Antigravity はその一例です。この Codelab では、これらのコードツールを使用して LookML を記述する方法を説明します。

演習内容

この Codelab では、Looker の VS Code 拡張機能を使用して LookML モデルを変更し、新しいメジャーを追加して、その新しいメジャーをテストし、その新しいメジャーを使用して LookML ダッシュボードを作成します。これらはすべて、コーディング エージェントにプロンプトを入力することで行われます。

必要なもの

  • デベロッパー権限を持つ Looker インスタンス。
  • 新しい LookML プロジェクトの作成Looker での Explore の表示と操作など、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. 画面の右上にある [Add Connection] をクリックします。
  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. [Develop]、[Projects] の順に選択します。
  4. [LookML プロジェクト] ページで、[新しいモデル] をクリックします。
  5. リンクをクリックして、以前の LookML モデル作成ページを使用します。古いモデル作成ダイアログのリンクのスクリーンショット
  6. Looker で cymbal_gadgets という名前の新しい空のプロジェクトを作成します。[新しいプロジェクト] ダイアログのスクリーンショット
  7. [Git の構成] を選択して、作成したフォーク リポジトリに接続します。git の設定のスクリーンショット
  8. Deploy Key を Git リポジトリに追加します。デプロイキーで書き込みアクセスを許可するボックスを必ずオンにしてください。Git デプロイキーの設定のスクリーンショット
  9. [設定のテストとファイナライズ] を選択します。プロジェクトの設定が完了した画面のスクリーンショット
  10. 「🛍️ Cymbal Gadgets: Transactions & Sales」の Explore からデータをクエリして、プロジェクトとデータソースが機能していることを確認します。
  11. LookML エディタで cymbal_gadgets プロジェクトを開き、右上にある [Create Developer Copy] ボタンを押します。
  12. [Git Actions] で [Push Changes To Remote] をクリックして、GitHub から dev ブランチを使用できるようにします。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. エージェント IDE を設定する

VS Code 拡張機能をインストールする

IDE で、左側のパネルにある拡張機能アイコンをクリックします。次に、「Looker」を検索し、インストール ボタンをクリックして Google の公式拡張機能をインストールします。

MCP Toolbox for Databases サーバーをインストールする

Antigravity に Looker API へのアクセス権(クエリの実行、SQL の検査、LookML モデルの検査、接続スキーマ情報の検査)を付与するには、実行中のローカル MCP Toolbox for Databases サーバーが必要です。MCP ツールボックスには、Looker MCP の公式実装が付属しています。このセクションでは、Looker インスタンスでこれを設定して構成します。

  1. まず、API の client_idclient_secret が必要です。Looker API キーガイドを使用して、ユーザーの client_idclient_secret を生成します。Looker インスタンスのベース URL も必要です。
  2. 次に、npx を使用して MCP Toolbox をインストールします。Looker インスタンスの URL と 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 拡張機能を構成する

このステップでは、Looker と Looker MCP サーバーに接続するように VS Code 拡張機能を構成します。

  1. Antigravity で、CMD-SHIFT-P(Mac)または CTRL+SHIFT+P(Linux/Windows)を使用してコマンド パレットを開き、Preferences: Open Workspace Settings (JSON) を選択します。
  2. 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. 顧客のライフタイム バリュー指標を作成する

まず、エージェントを使用して、既存の LookML モデルに新しいメジャーを作成します。この小売業のユースケースでは、Customer Lifetime Value 指標が役立ちます。このメジャーのメソッドと LookML を決定するには、エージェントを使用します。

エージェントにプロンプトを入力する

Antigravity ワークスペースの cymbal_gadgets プロジェクトの右側に、新しい会話インターフェースが表示されます。最新の Gemini モデルを使用して、プランニング モードで会話を開始します。プロンプトは Create a Customer Lifetime Value measure. です。

Antigravity のプロンプトのスクリーンショット

実装計画を確認する

エージェントはまず実装計画を作成します。実装プランを開いて確認し、[続行] ボタンをクリックします。

実装計画のスクリーンショット

LookML を確認する

変更された LookML を確認します。変更が適切で有効であることを確認します。

変更された LookML のスクリーンショット

変更された LookML は、VS Code 拡張機能によって Looker と自動的に同期されます。Development Mode でテストできます。

IDE でテストする

Antigravity に query CLV broken down by customer loyalty tier を求める。Antigravity は、Looker MCP サーバーを使用してモデルを検索し、使用可能なフィールドを調べて、Looker を使用してクエリを実行します。結果は次のようになります。

Antigravity のデータのスクリーンショット

Looker でテストする

Looker で、開発モードを有効にして、[🛍️ Cymbal Gadgets: Transactions & Sales] 探索を開きます。顧客のライフタイム バリューの指標を選択し、顧客登録年でピボットします。クエリを実行します。次のような設定になっているはずです。

データ探索のスクリーンショット

5. 顧客のライフタイム バリュー ダッシュボードを作成する

では、もう少し複雑な例を試してみましょう。エージェントに新しい LookML ダッシュボードの作成を依頼します。

エージェントから新しいダッシュボードをリクエストする

Antigravity に戻します。同じ会話で、[プランニング モード] と最新の Gemini モデルが選択されていることを確認します。次に、Create a dashboard showing customer lifetime value based on customer loyalty tier をプロンプトします。

ダッシュボード作成のスクリーンショット

実装計画を承認し、コードの変更を承認します。この新しい LookML ファイルは、Looker と自動的に同期されます。

Looker でテストする

開発モードで、フォルダ LookML Dashboards に移動します。新しく作成したダッシュボードを選択して表示します。

新しいダッシュボードのスクリーンショット

6. クリーンアップ

  1. [Antigravity] の [ソース コントロール] ペインで、必要に応じて LookML の変更を元に戻します。変更された各 LookML ファイルの横に、ファイルを元に戻すための ↶ などの記号が表示されます。ファイルごとにそのボタンを押します。変更を元に戻すのスクリーンショット
  2. Looker で、[管理者]、[データベース]、[接続] の順に選択します。cymbal_gadgets 接続の歯車アイコンをクリックし、[削除] を選択します。リンク解除を確定します。
  3. Looker で Development Mode を使用します。[Develop] を選択し、cymbal_gadgets プロジェクトを選択します。[プロジェクトの設定] で [プロジェクトの削除] を選択します。プロジェクトを削除することを確認するため、プロジェクト名(cymbal_gadgets)を入力し、[cymbal_gadgets を完全に削除] というラベルの付いたボタンを選択します。

7. 完了

以上で、この Codelab は完了です。

学習した内容

  • エージェントを使用して LookML を変更する方法。
  • 実装計画を確認する方法。
  • IDE からテストする方法。
  • Looker UI でテストする方法。
  • エージェントを使用して新しいダッシュボードを作成する方法。

次の方法をお試しください

次に、UI で次のプロンプトを試して、エージェント IDE のさまざまな機能を確認します。

  • 優れた説明は、ユーザーと AI の両方にとって重要です。説明のないすべてのフィールドに説明を追加するようエージェントに促します。
  • エージェントに、ディメンショングループのいずれかにタイムフレームを追加するよう依頼します。
  • エージェントに「四半期でピボットした商品カテゴリ別の収益」などのクエリを実行するよう依頼します。

その他の情報