Gemini for Google Cloud アシスタンを使用してデータを分析する

このチュートリアルでは、Google Cloud の AI を活用したコラボレーターである Gemini for Google Cloud を使用してデータを分析する方法について説明します。このチュートリアルでは、Gemini in BigQuery を使用して、商品の販売を分析し予測します。

このチュートリアルでは、SQL と基本的なデータ分析タスクの知識があることを前提としています。Google Cloud プロダクトの知識は前提ではありません。BigQuery を初めて使用する場合は、BigQuery クイックスタートをご覧ください。

目標

  • Gemini を使用して、Google Cloud のデータ分析プロダクトとユースケースに関する質問に回答します。
  • BigQuery での SQL クエリを説明し、生成するよう Gemini に指示します。
  • 将来の期間を予測する機械学習(ML)モデルを構築します。

費用

このチュートリアルでは、課金対象である次の Google Cloud コンポーネントを使用します。

料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを出すことができます。

始める前に

  1. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  2. Google Cloud プロジェクトで Gemini in BigQuery を設定していることを確認します。
  3. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  4. bqml_tutorial という名前のデータセットを作成します。データセットを使用して、テーブルやモデルなどのデータベース オブジェクトを保存します。

  5. このチュートリアルを完了するために必要な BigQuery での Gemini の機能を有効にします。

    1. BigQuery で Gemini の機能を表示するには、ツールバーで pen_spark [Gemini] をクリックします。

    2. [Gemini in BigQuery SQL エディタ] リストで、次のオプションをすべて選択します。

      • 予測入力
      • 自動生成
      • 説明

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

Gemini を使用してデータを分析する

Gemini は、分析のためにアクセスできる対象データとそのデータの分析方法を理解するのに役立ちます。

データのクエリを実行する前に、アクセスできるデータを把握する必要があります。データ プロダクトごとに、データを整理して保存される方法が異なります。ヘルプを得るには、Gemini に自然言語ステートメント(またはプロンプト)を送信します。たとえば、「BigQuery ではどのデータセットとテーブルが使用可能かを確認するにはどうすればよいですか?」などです。

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

  • 「BigQuery の使用を開始するにはどうすればよいですか?」
  • 「データ分析に BigQuery を使用するメリットは何ですか?」
  • 「BigQuery はクエリの自動スケーリングをどのように処理しますか?」

Gemini は、データの分析方法に関する情報も提供できます。この種のヘルプでは、次のような Gemini のプロンプトを送信できます。

  • 「BigQuery で時系列予測モデルを作成するにはどうすればよいですか?」
  • 「さまざまなタイプのデータを BigQuery に読み込むにはどうすればよいですか?」

データに関する質問の回答を Gemini に指示するには、次の手順に従います。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. Google Cloud コンソールのツールバーで、spark [Gemini を開く] をクリックします。

  3. [Gemini] ペインで、How do I learn which datasets and tables are available to me in BigQuery? などのプロンプトを入力します。

  4. send [メッセージを送信] をクリックします。

    Gemini がプロンプトやそのレスポンスをデータとして使用してモデルをトレーニングすることはありせん。詳細については、Google Cloud の Gemini がデータを使用する方法をご覧ください。

    Gemini から次のようなレスポンスが返されます。

    To learn which datasets and tables are available to you in
    BigQuery, you can use the Google Cloud console, the
    Google Cloud CLI, or the BigQuery API.
    ...
    
  5. 省略可: チャットの履歴をリセットするには、[Gemini] ペインで delete アイコンをクリックしてから、[チャットをリセット] をクリックします。

Gemini を使用して BigQuery で SQL を理解し、記述する

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

販売データセットの SQL クエリを説明するよう Gemini に指示する

Gemini に SQL クエリの例を説明するよう指示するには、次の手順を行います。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  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 に説明させるクエリをハイライト表示してから、pen_spark [このクエリを説明する] をクリックします。

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

    前の手順のクエリの例を使用して、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.
    

日と商品で売上をグループ化する SQL クエリを生成する

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

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

上位の商品を一覧表示するクエリを生成するよう Gemini に指示するには、次の手順を行います。

  1. Google Cloud コンソールで [BigQuery] ページに移動します。

    [BigQuery] に移動

  2. ナビゲーション メニューで [BigQuery Studio] をクリックします。

  3. [ クエリを新規作成] をクリックします。 [エクスプローラ] ペインに、選択したデータベースが自動的に読み込まれます。

  4. クエリエディタで、次のプロンプトを入力してから、Enter キーを押します。ハッシュ文字(#)は、Gemini に SQL を生成するよう指示します。

    # select the sum of sales by date and product casted to day from bigquery-public-data.thelook_ecommerce.order_items joined with bigquery-public-data.thelook_ecommerce.products
    

    Gemini は次のような SQL クエリを提案します。

    SELECT sum(sale_price),
    DATE(created_at),
    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
    
  5. 提案されたコードを受け入れるには、[タブ] をクリックしてから [実行] をクリックし、SQL ステートメントを実行します。提案された SQL をスクロールし、ステートメントで提案された特定の単語を受け入れることもできます。

  6. [クエリ結果] ペインで、クエリ結果を表示します。

予測モデルをビルドして結果を表示する

このセクションでは、BigQuery ML を使用して以下のことを行います。

  • トレンドクエリを使用して予測モデルを構築します。
  • Gemini を使用して、予測モデルの結果を表示するクエリを作成し、説明するようサポートさせます。

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

  1. 予測 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 を使用して、このクエリを理解するのに役立ちます。

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

    This statement will replace the model named sales_forecasting_model.
    Depending on the type of model, this may take several hours to complete.
    
  2. [Gemini] ペインに Gemini のプロンプトを入力します。これにより、完了時にモデルから予測を取得するクエリを作成できます。たとえば、「How can I get a forecast in SQL from the model?」と入力します。

    プロンプトのコンテキストに基づいて、Gemini は売上を予測する ML モデルの例を返します。

    To get a forecast in SQL from the model, you can use the following query:
    
    SELECT
    *
    FROM
      ML.FORECAST(MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`,
    STRUCT(
          7 AS horizon,
          0.95 AS confidence_level
    )
    )
    
  3. [Gemini] ペインで、SQL クエリをコピーします。

  4. BigQuery SQL エディタに、SQL クエリを貼り付けてから実行します。

クリーンアップ

このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、このチュートリアルで作成した Google Cloud プロジェクトを削除します。また、リソースを個別に削除することもできます。

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

データセットを削除する

プロジェクトを削除すると、プロジェクト内のデータセットとテーブルがすべて削除されます。プロジェクトを再利用する場合は、このチュートリアルで作成したデータセットを削除します。

  1. Google Cloud コンソールで、[BigQuery] ページを開きます。

    [BigQuery] に移動

  2. ナビゲーションで、作成した bqml_tutorial データセットを選択します。

  3. データセット、テーブル、すべてのデータを削除するには、[データセットを削除] をクリックします。

  4. 削除を確定するには、[データセットを削除] ダイアログでデータセットの名前(bqml_tutorial)を入力し、[削除] をクリックします。

次のステップ