ラボの設定手順と要件
アカウントと進行状況を保護します。このラボを実行するには、常にシークレット ブラウジング ウィンドウとラボの認証情報を使用してください。

Gemini アシスタンスでデータを分析する

ラボ 1時間 10分 universal_currency_alt クレジット: 5 show_chart 入門
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
このコンテンツはまだモバイル デバイス向けに最適化されていません。
快適にご利用いただくには、メールで送信されたリンクを使用して、デスクトップ パソコンでアクセスしてください。

概要

このラボでは、あなたはデータ アナリストとして、Cymbal Superstore の概念実証プロジェクトの一環として Gemini および BigQuery を使用してデータを分析し、商品の売上を予測します。このプロジェクトではまた、アナリストによる新しい SQL クエリの生成、クエリの実行、複雑なクエリの説明を Gemini が支援できるかどうかを判断します。

このラボで使用するデータは BigQuery の一般公開データセットに基づいており、具体的には e コマースの合成データおよびデジタル マーケティング データを含む bigquery-public-data.thelook_ecommerce データセットを使用します。

このラボでは、SQL(構造化クエリ言語)と基本的なデータ分析タスクの知識があることを前提としています。Google Cloud プロダクトの知識は前提ではありません。BigQuery を初めてご利用になる場合は、BigQuery のクイックスタートをご覧ください。

注: Duet AI は、Google の次世代モデルである Gemini に名称変更されました。このラボは、この変更を反映して更新されたものです。ラボの手順を実施する際に、ユーザー インターフェースやドキュメントで Duet AI に言及されていた場合は、Gemini と同等であると見なしてください。 注: Gemini は初期段階のテクノロジーであるため、もっともらしく見える出力でも事実に反する場合があります。Gemini からのすべての出力は、使用する前に検証することをおすすめします。詳細については、Gemini for Google Cloud と責任ある AI をご覧ください。

目標

このラボでは、次のタスクの実行方法について学びます。

  • Gemini を使用して、Google Cloud のデータ分析プロダクトおよびユースケースに関する質問に対する回答を得る。
  • BigQuery で SQL クエリの説明と生成を行うよう Gemini にプロンプトで指示する。
  • 今後の期間の売上を予測するための ML モデルを構築する。

設定

各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] パネルでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] パネルでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスのリストを含むメニューを表示するには、左上のナビゲーション メニューをクリックします。ナビゲーション メニュー アイコン

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールが組み込まれた仮想マシンです。5 GB の永続ホーム ディレクトリを提供し、Google Cloud 上で実行されます。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。gcloud は Google Cloud のコマンドライン ツールで、Cloud Shell にプリインストールされており、Tab キーによる入力補完がサポートされています。

  1. Google Cloud Console のナビゲーション パネルで、「Cloud Shell をアクティブにする」アイコン(Cloud Shell アイコン)をクリックします。

  2. [次へ] をクリックします。
    環境がプロビジョニングされ、接続されるまでしばらく待ちます。接続の際に認証も行われ、プロジェクトは現在のプロジェクト ID に設定されます。次に例を示します。

Cloud Shell ターミナル

サンプル コマンド

  • 有効なアカウント名前を一覧表示する:

gcloud auth list

(出力)

Credentialed accounts: - <myaccount>@<mydomain>.com (active)

(出力例)

Credentialed accounts: - google1623327_student@qwiklabs.net
  • プロジェクト ID を一覧表示する:

gcloud config list project

(出力)

[core] project = <プロジェクト ID>

(出力例)

[core] project = qwiklabs-gcp-44776a13dea667a6

タスク 1. 環境とアカウントを構成する

このタスクでは、Gemini 用の Cloud AI Companion API を使用できるように環境、アカウント、ユーザーを構成します。

  1. ラボの認証情報を使用して Google Cloud コンソールにログインし、Cloud Shell ターミナル ウィンドウを開きます。

  2. Cloud Shell で次のコマンドを実行して、プロジェクト ID とリージョンの環境変数を設定します。

    PROJECT_ID=$(gcloud config get-value project) REGION={{{project_0.default_region|set at lab start}}} echo "PROJECT_ID=${PROJECT_ID}" echo "REGION=${REGION}"
  3. ログインに使用した Google ユーザー アカウントを環境変数に保存するには、以下のコマンドを実行します。

    USER=$(gcloud config get-value account 2> /dev/null) echo "USER=${USER}"
  4. Gemini 用の Cloud AI Companion API を有効にします。

    gcloud services enable cloudaicompanion.googleapis.com --project ${PROJECT_ID}
  5. Gemini を使用できるよう、必要な IAM ロールを Google Skills のユーザー アカウントに付与します。

    gcloud projects add-iam-policy-binding ${PROJECT_ID} --member user:${USER} --role=roles/cloudaicompanion.user gcloud projects add-iam-policy-binding ${PROJECT_ID} --member user:${USER} --role=roles/serviceusage.serviceUsageViewer

    これらのロールを追加すると、ユーザーが Gemini アシスタンスを利用できるようになります。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 関連する API を有効にして IAM ロールを設定する

タスク 2. データセットを作成し、BigQuery で Gemini 機能を有効にする

このタスクでは、データセットを作成し、BigQuery で Gemini 機能を有効にします。

BigQuery コンソールを開く

  1. Google Cloud コンソールのナビゲーション メニューで、[BigQuery] をクリックします。
    [Cloud コンソールの BigQuery へようこそ] ダイアログが開きます。このダイアログには、クイックスタート ガイドへのリンクと、UI の更新情報が表示されます。

  2. [完了] をクリックしてダイアログを閉じます。

データセットを作成する

  1. [エクスプローラ] パネルで、 の「アクションを表示」アイコン(その他メニュー アイコン)を選択し、[データセットを作成] を選択します。

    テーブルやモデルなどのデータベース オブジェクトを格納するためのデータセットが作成されます。

  2. [データセットの作成] ペインに以下の情報を入力します。

    フィールド
    データセット ID bqml_tutorial

    その他のフィールドはデフォルトのままにします。

  3. [データセットを作成] をクリックします。

BigQuery で Gemini 機能を有効にする

  1. BigQuery で Gemini の機能を開くには、ツールバーの [Gemini Code Assist](コンソールの Gemini メニュー)をクリックします。ツールバーにこのツールが表示されない場合は、ページを更新します。

  2. プロンプトが表示されたら、[有効にする] をクリックして Gemini for Google Cloud API を有効にします。

  3. [Gemini] ペインに「Gemini へようこそ」メッセージが表示されます。[チャットを開始] をクリックします。

    注: [チャットを開始] ボタンが有効になっていない場合は、ページを更新してから Gemini をもう一度開いてください。
  4. クエリエディタの左側のパネルにある Gemini アイコン(Gemini)をクリックします。[SQL クエリの Gemini] ペインで、次のオプションをすべて選択します。

    • 予測入力

    • 自動生成

    • 説明

注: BigQuery で Gemini 機能を無効にするには、無効にしたい Gemini 機能の選択を解除します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 データセットを作成する。

タスク 3. Gemini を使用してデータを分析する

Gemini は、使用可能なデータを検出および分析するのに役立ちます。

データをクエリする前に、アクセス可能なデータを知っておく必要があります。データ プロダクトはそれぞれ、データの構成方法や格納方法が異なります。ヘルプを得るには、Gemini に自然言語ステートメント(プロンプト)を送信します。たとえば、「How do I view which datasets and tables are available to me in BigQuery?」などです。

さまざまなデータクエリ システムの特性を理解したい場合は、次のようなプロンプトを使って、特定のプロダクトの情報を Gemini に尋ねます。

  • 「How do I get started with BigQuery?」

  • 「What are the benefits of using BigQuery for data analysis?」

  • 「How does BigQuery handle auto-scaling for queries?」

このタスクでは、データに関する質問に回答するよう Gemini にプロンプトで指示します。

データに関する質問に回答するよう Gemini にプロンプトで指示する

  1. BigQuery コンソールで、ツールバーの [Gemini Cloud Assist](コンソールの Gemini メニュー)をクリックします(まだ開いていない場合)。

  2. [Gemini] ペインに次のプロンプトを入力します。

    How do I learn which datasets and tables are available to me in BigQuery?
  3. [メッセージを送信](Gemini の送信メニュー)をクリックします。

    Gemini がモデルをトレーニングするためのデータとしてプロンプトまたは回答を使用することはありません。詳しくは、Gemini for Google Cloud がデータを使用する方法をご覧ください。

    Gemini から次のような回答が返されます。

Cloud Assist クエリの出力

  1. 省略可: チャットの履歴をリセットするには、[Gemini] ペインで [その他の操作] をクリックし、[+ 新しいチャット] をクリックして、[新しいチャット] を開きます。
注: チャットの履歴状態はメモリにのみ保持されます。別のワークスペースに切り替えたり Google Cloud コンソールを閉じたりすると、保持されません。

タスク 4. 売上データセットの SQL クエリを説明するよう Gemini にプロンプトで指示する

Gemini は SQL を操作する場合に役に立ちます。たとえば、他の人が書いた SQL クエリを操作する場合、Gemini in BigQuery は、複雑なクエリを平易な言葉で説明できます。このような説明によって、クエリ構文、基盤となるスキーマ、ビジネス コンテキストが理解しやすくなります。

サンプル SQL クエリについて説明するよう Gemini にプロンプトで指示する手順は次のとおりです。

  1. BigQuery コンソールで、[SQL クエリ] をクリックして新しい SQL クエリを作成します。

  2. クエリエディタで、説明してもらいたいクエリを貼り付けます。

    たとえば、売上データセットのデータテーブルとクエリの関係を把握し、そのデータセットを使用したクエリを作成するためのサポートを必要としているとします。次のサンプルクエリでどのテーブルが使用されているかは理解できても、クエリの他の部分を解析して理解するには時間がかかるかもしれません。

    SELECT u.id as user_id, u.first_name, u.last_name, avg(oi.sale_price) as avg_sale_price FROM `bigquery-public-data.thelook_ecommerce.users` as u JOIN `bigquery-public-data.thelook_ecommerce.order_items` as oi ON u.id = oi.user_id GROUP BY 1,2,3 ORDER BY avg_sale_price DESC LIMIT 10
  3. Gemini に説明してもらいたいクエリを選択して右クリックします。メニューで [現在の選択内容を説明する] をクリックします。

    SQL の説明が [Cloud Assist] ペインに表示されます。

    前の手順のサンプルクエリを使用して、Gemini が次のような説明を返します。

    The intent of this query is to find the top 10 users by average sale price. The query first joins the users and order_items tables on the user_id column. It then groups the results by user_id , first_name , and last_name, and calculates the average sale price for each group. The results are then ordered by average sale price in descending order, and the top 10 results are returned. 注: 生成ツールである Gemini Code Assist の回答は毎回少しずつ異なりますが、重要なポイントは同じです。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 売上データセットの SQL クエリを説明するよう Gemini にプロンプトで指示する。

タスク 5. 日付と商品別に売上をグループ化する SQL クエリを生成する

データのスキーマに基づいて SQL クエリを生成するよう Gemini にプロンプトで指示できます。ノーコードで始める場合や、データスキーマについて限られた知識しかないか SQL 構文について基本的な知識しかない場合でも、Gemini は 1 つ以上の SQL ステートメントを提案できます。

このタスクでは、日付別の売上上位の商品を一覧表示するクエリを生成します。この種のクエリは複雑になりがちですが、Gemini を使用すればステートメントを自動的に作成できます。次に、thelook_ecommerce データセットのテーブルを使用して、注文された商品アイテムおよび商品名別に売上を計算するクエリを生成するよう Gemini にプロンプトで指示します。

一般公開データセットの order_items テーブルと products テーブルを確認する

  1. [エクスプローラ] をクリックし、[+ データを追加] > [一般公開データセット] をクリックします。

  2. [Marketplace を検索] に「thelook」と入力します。theLook Ecommerce 一般公開データセットがリストに表示されます。

  3. [thelook Ecommerce] をクリックします。

  4. [データセットを表示] をクリックします。

新しいタブで BigQuery が開き、bigquery-public-data:thelook_ecommerce データセットが表示されます。

  1. [従来のエクスプローラ](従来のエクスプローラ)をクリックし、エクスプローラ パネルに追加された bigquery-public-data を開きます。

  2. 下にスクロールし、thelook_ecommerce データセットを探して開きます。order_items テーブルと products テーブルがリスト表示されます。

  3. order_items テーブルをクリックすると、データスキーマが表示されます。

  4. products テーブルをクリックすると、データスキーマが表示されます。

    注: Gemini のプロンプトを使用してクエリを実行する前にテーブルのスキーマを確認すると、エラーやハルシネーションを防止できます。

プロンプトを使用してクエリを生成する

  1. + をクリックして、新しい [無題のクエリ] タブを開きます。

  2. クエリタブで、[Gemini を使用して SQL を生成] をクリックし、次のプロンプトをコピーして貼り付けてから、[生成] をクリックします。

# Generate a BigQuery SQL query to calculate the daily total sales for each product. The query should join the order_items table with the products table, both from the bigquery-public-data.thelook_ecommerce dataset, using a LEFT JOIN on the product ID. The final output must include the order date, product ID, product name, and the total sales, rounded to two decimal places. Use descriptive aliases for the tables and group by the column names rather than their positions. Please ensure the results are ordered with the highest total sales at the top.

Gemini は以下のような SQL クエリを提案します。エラーが発生した場合は、プロンプトを再実行するか、次のコマンドを実行してください。

# Generate a BigQuery SQL query to calculate the daily total sales for each product. The query should join the order_items table with the products table, both from the bigquery-public-data.thelook_ecommerce dataset, using a LEFT JOIN on the product ID. The final output must include the order date, product ID, product name, and the total sales, rounded to two decimal places. Use descriptive aliases for the tables and group by the column names rather than their positions. Please ensure the results are ordered with the highest total sales at the top. SELECT DATE(order_items.created_at) AS order_date, order_items.product_id, products.name AS product_name, ROUND(SUM(order_items.sale_price), 2) AS total_sales FROM `bigquery-public-data.thelook_ecommerce.order_items` AS order_items LEFT JOIN `bigquery-public-data.thelook_ecommerce.products` AS products ON order_items.product_id = products.id GROUP BY order_date, order_items.product_id, product_name ORDER BY total_sales DESC; 注: Gemini は、プロンプトに対して複数の SQL ステートメントを提案する可能性があります。
  1. 提案されたコードを使用するには、[挿入] をクリックし、[実行] をクリックして SQL ステートメントを実行します。提案された SQL をスクロールして、ステートメント内で提案された特定の語句を受け入れることもできます。

  2. [クエリ結果] ペインで、クエリの結果を確認します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 日付と商品別に売上をグループ化する SQL クエリを生成する。

タスク 6. 予測モデルを構築して結果を表示する

このタスクでは、BigQuery ML を使用して予測モデルを構築し、Gemini プロンプトを使用してモデルをクエリします。

モデルを構築する

以下のサンプルクエリでは、実際の売上をモデルへの入力として使用します。このクエリは、ML モデルの作成手順の一環として使用されます。

  • 予測 ML モデルを作成するには、BigQuery SQL エディタで次の SQL を実行します。

    CREATE MODEL bqml_tutorial.sales_forecasting_model OPTIONS(MODEL_TYPE='ARIMA_PLUS', time_series_timestamp_col='date_col', time_series_data_col='total_sales', time_series_id_col='product_id') AS SELECT sum(sale_price) as total_sales, DATE(created_at) as date_col, product_id FROM `bigquery-public-data.thelook_ecommerce.order_items` AS t1 INNER JOIN `bigquery-public-data.thelook_ecommerce.products` AS t2 ON t1.product_id = t2.id GROUP BY 2, 3;

    Gemini は、このクエリを理解するのに役立ちます。

    注: クエリが完了するまで約 10 分かかります。。モデルの実行中に、Gemini に「What is an ARIMA_PLUS model type?」のような質問をすることもできます。

    モデルが作成されると、次のようなメッセージが [結果] ペインに表示されます。

    Successfully created model named sales_forecasting_model.

プロンプトを使用してモデルをクエリする

  1. + をクリックして、新しい [無題のクエリ] タブを開きます。

  2. クエリタブで、[Gemini を使用して SQL を生成] をクリックし、次のプロンプトを入力して [生成] をクリックします。

    # Use sales_forecasting_model from the bqml_tutorial dataset in my project to generate a forecast and return all the resulting data.

    Gemini は以下のような SQL クエリを提案します。エラーが発生した場合は、プロンプトを再実行するか、次のコマンドを実行してください。

    # Use sales_forecasting_model from the bqml_tutorial dataset in my project to generate a forecast and return all the resulting data. SELECT * FROM ML.FORECAST(MODEL `bqml_tutorial.sales_forecasting_model`) 注: Gemini は、プロンプトに対して複数の SQL ステートメントを提案する可能性があります。
  3. 提案されたコードを使用するには、[挿入] をクリックし、[実行] をクリックして SQL ステートメントを実行します。提案された SQL をスクロールして、ステートメント内で提案された特定の語句を受け入れることもできます。

  4. [クエリ結果] ペインで、クエリの結果を確認します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 予測モデルを構築して結果を表示する。

お疲れさまでした

このラボでは、以下の操作について学習しました。

  • Gemini を使用して、Google Cloud のデータ分析プロダクトおよびユースケースに関する質問に対する回答を得る。
  • BigQuery で SQL クエリの説明と生成を行うよう Gemini にプロンプトで指示する。
  • 今後の期間の売上を予測するための ML モデルを構築する。

オプションの資料

BigQuery で Gemini を使用してデータを分析する方法を学びました。Gemini について詳しくは、Gemini for Google Cloud により適したプロンプトを作成するをご覧ください。

ラボを終了する

ラボでの学習が完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Qwiklabs から削除され、アカウントの情報も消去されます。

ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。

星の数は、それぞれ次の評価を表します。

  • 星 1 つ = 非常に不満
  • 星 2 つ = 不満
  • 星 3 つ = どちらともいえない
  • 星 4 つ = 満足
  • 星 5 つ = 非常に満足

フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。

フィードバック、ご提案、修正が必要な箇所については、[サポート] タブからお知らせください。

Copyright 2026 Google LLC All rights reserved. Google および Google のロゴは、Google LLC の商標です。その他すべての社名および製品名は、それぞれ該当する企業の商標である可能性があります。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボを実行するには、シークレット モードまたはシークレット ブラウジング ウィンドウを使用することをおすすめします。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。