arrow_back

BigQuery の継続的クエリと Gemini を使用してパーソナライズされたメールの内容を生成する

ログイン 参加
700 以上のラボとコースにアクセス

BigQuery の継続的クエリと Gemini を使用してパーソナライズされたメールの内容を生成する

ラボ 1時間 30分 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
700 以上のラボとコースにアクセス

GSP1284

Google Cloud セルフペース ラボのロゴ

概要

顧客エンゲージメント システムの構築は複雑になることが多く、特殊なツールが必要にある場合もあります。この構築を SQL ステートメントのような簡単な方法で行えるとしたら、どうでしょうか。これを実現したのが、BigQuery の継続的クエリです。

想像してみてください。自社の素晴らしいウェブサイトに見込み顧客を呼び込んで、顧客が商品をショッピング カートに入れてくれたとします。しかし、顧客は購入を完了することなく姿を消してしまいました。この問題を解決する方法として、BigQuery の継続的クエリと Gemini を使用してカスタムメールを作成すれば、リアルタイムのエンゲージメントによって顧客の関心を取り戻すことができます。

ショッピング カート放棄テーブルから BigQuery の継続的クエリ、Gemini、Pub/Sub 通知、Application Integration メール、ショッピング カートを放棄した顧客に送信される最終メールまでの全体的なワークフローを示す図

BigQuery の継続的クエリは継続的に実行される SQL ステートメントであるため、受信データを BigQuery でリアルタイムに分析できます。継続的クエリを使用すると、分析情報の作成と即時対応、リアルタイムの ML 推論の適用と生成されたコンテンツの使用、他のプラットフォームへのデータのレプリケーションなど、時間的制約のあるタスクを実行できます。そのため、アプリケーションの判断ロジックでイベント ドリブンのデータ処理エンジンとして BigQuery を使用できます。BigQuery の継続的クエリを活用することで、リアルタイムの AI ユースケースを実現できます。たとえば、Gemini などの生成 AI モデルを使用して、顧客の選択内容に応じてパーソナライズされたテキストを生成できます。

このラボでは、BigQuery の継続的クエリ、Gemini モデルPub/SubApplication Integration トリガーを使用してパーソナライズされたメールの内容を生成し、送信する方法を学習します。具体的には、放棄されたショッピング カートのレコードを保存する BigQuery テーブルをモニタリングし、新たに放棄されたカートの情報を Gemini に送信して、対象の顧客に合わせてプロモーション メールを生成する BigQuery 継続的クエリを作成します。パーソナライズされたメールの内容は BigQuery から Pub/Sub トピックにエクスポートされ、受信した Pub/Sub メッセージごとに構成済みの Application Integration トリガーによってメールが送信されます。

学習内容

このラボでは、次の方法について学びます。

  • BigQuery ML リモートモデルを作成して構成する(Gemini 2.0 Flash)
  • カスタム サービス アカウントに BigQuery リソースと Pub/Sub リソースへのアクセス権を付与する
  • Application Integration トリガーを作成して構成する
  • Gemini を使用してメールのテキストを生成する継続的クエリを BigQuery で作成する
  • カート放棄テーブルにデータを追加して継続的クエリをテストする

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

ラボを開始して 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 のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニュー アイコンと検索フィールド

タスク 1. BigQuery ML リモートモデルを作成して構成する

このタスクでは、continuous_queries という BigQuery データセットと、放棄されたショッピング カート情報が含まれる abandoned_carts というテーブルなど、いくつかのリソースが事前に作成されています。

このタスクでは、BigQuery ML リモートモデル(エンドポイントとして Gemini 2.0 Flash を使用)などの追加の BigQuery リソースを作成して構成し、ワークフローに応じてパーソナライズされたメールの内容を生成します。

BigQuery リモート接続を作成する

  1. Google Cloud コンソールで、ナビゲーション メニューナビゲーション メニュー アイコン)> [BigQuery] をクリックします。

  2. [エクスプローラ] ペインで [+ 追加] をクリックし、[外部データソースへの接続] をクリックします。

注: [+ 追加] のオプションが表示されず、[外部データソースへの接続] も表示されない場合は、[+ データを追加] をクリックし、データソースの検索バーで「Vertex AI」を検索してください。検索結果の「Vertex AI」をクリックします。
  1. [接続タイプ] で、[Vertex AI リモートモデル、リモート関数、BigLake(Cloud リソース)] を選択します。

  2. [接続 ID] に「continuous-queries-connection」と入力します。

  3. [ロケーション タイプ] で、[リージョン] > [] を選択します。

  4. [接続を作成] をクリックし、(ページの下部にあるメッセージ内の)[接続に移動] をクリックします。

[接続情報] ページでサービス アカウント ID をコピーし、次のセクションで使用できるようにします。

例: bqcx-1054723899402-whbp@gcp-sa-bigquery-condel.iam.gserviceaccount.com

BigQuery サービス アカウントに Vertex AI の IAM ロールを付与する

  1. Google Cloud コンソールのナビゲーション メニューナビゲーション メニュー アイコン)で、[IAM と管理] > [IAM] を選択します。

  2. [アクセス権を付与] をクリックします。

  3. [新しいプリンシパル] に、前のセクションでコピーしたサービス アカウント ID(例: bqcx-1054723899402-whbp@gcp-sa-bigquery-condel.iam.gserviceaccount.com)を入力します。

  4. [ロールを選択] で、[Vertex AI] > [Vertex AI ユーザー] を選択します。

  5. [保存] をクリックします。

BigQuery ML リモートモデルを作成する

  1. Google Cloud コンソールで、ナビゲーション メニューナビゲーション メニュー アイコン)> [BigQuery] をクリックします。

  2. [無題のクエリ] をクリックして、空のクエリ ウィンドウにアクセスします。

  3. BigQuery ML モデルを作成するための以下のクエリをコピーして貼り付け、[実行] をクリックします。

# # gemini_2_0_flash という BigQuery ML リモートモデルを作成する CREATE MODEL `{{{project_0.project_id | Project ID}}}.continuous_queries.gemini_2_0_flash` REMOTE WITH CONNECTION `{{{project_0.default_region | Region}}}.continuous-queries-connection` OPTIONS(endpoint = 'gemini-2.0-flash-001'); 注: サービス アカウントの権限(前のセクションで割り当てた権限)に関連するエラーが表示された場合は、数分待ってからクエリを再度実行します。

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

タスク 2. カスタム サービス アカウントに BigQuery リソースと Pub/Sub リソースへのアクセス権を付与する

このタスクでは、recapture_customer という Pub/Sub トピックと bq-continuous-query-sa@.iam.gserviceaccount.com というカスタム サービス アカウントなど、いくつかのリソースが事前に作成されています。

このタスクでは、カスタム サービス アカウントに BigQuery データセット、リモートモデル、Pub/Sub トピックへのアクセス権を付与します。これらのアクセス権は、後続のタスクでパーソナライズされたメールを生成して送信する際に使用します。

カスタム サービス アカウントに BigQuery データセットとリモートモデルへのアクセス権を付与する

  1. Google Cloud コンソールで、ナビゲーション メニューナビゲーション メニュー アイコン)> [BigQuery] をクリックします。

  2. [エクスプローラ] ペインで、 の横にある矢印を開きます。

  3. [外部接続] を開き、[.continuous-queries-connection] をクリックします。

  4. [接続情報] ページで、[共有] をクリックします。

  5. [プリンシパルを追加] をクリックします。

  6. [新しいプリンシパル] で、カスタム サービス アカウント ID(bq-continuous-query-sa@.iam.gserviceaccount.com)を入力します。

  7. [ロールを選択] で、[BigQuery] > [BigQuery Connection ユーザー] を選択します。

  8. [保存]、[閉じる] の順にクリックします。

  9. [エクスプローラ] ペインで、放棄されたカートのテーブルを含むデータセットの名前(continuous_queries)をクリックします。

  10. [データセット情報] ページで [共有] をクリックし、[権限] を選択します。

  11. [プリンシパルを追加] をクリックします。

  12. [新しいプリンシパル] で、カスタム サービス アカウント ID(bq-continuous-query-sa@.iam.gserviceaccount.com)を入力します。

  13. [ロールを選択] で、[BigQuery] > [BigQuery データ編集者] を選択します。

  14. [保存]、[閉じる] の順にクリックします。

カスタム サービス アカウントに Pub/Sub 閲覧者と Pub/Sub パブリッシャーのロールを付与する

  1. Google Cloud コンソールで、ナビゲーション メニューナビゲーション メニュー アイコン)> [すべてのプロダクトを表示] をクリックします。[分析] で [Pub/Sub] をクリックします。

  2. recapture_customer の行で、[その他の操作](縦に並んだ 3 つの点)をクリックし、[権限を表示] を選択します。

  3. [プリンシパルを追加] をクリックします。

  4. [新しいプリンシパル] で、カスタム サービス アカウント ID(bq-continuous-query-sa@.iam.gserviceaccount.com)を入力します。

  5. [ロールを選択] で、[Pub/Sub] > [Pub/Sub 閲覧者] を選択します。

  6. [別のロールを追加] をクリックします。

  7. [ロールを選択] で、[Pub/Sub] > [Pub/Sub パブリッシャー] を選択します。

  8. [保存] をクリックします。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 カスタム サービス アカウントに BigQuery リソースと Pub/Sub リソースへのアクセス権を付与する。

タスク 3. Application Integration トリガーを作成して構成する

Application Integration は Google Cloud の Integration Platform as a Service(iPaaS)ソリューションです。特定の業務を支えるために統合が必要な複数のアプリケーションとデータを連携させ、管理する(統合と呼ばれます)ための一連のツールを備えています。トリガーとは、統合においてタスクまたは一連のタスクを開始する外部イベントです。たとえば、Pub/Sub トピックのイベントに基づく Pub/Sub トリガーなどです。トリガーは、統合のエントリ ポイントと考えることができます。トリガーに結びついたイベントにより、トリガーに関連付けられたタスクが実行されます。

このタスクでは、Pub/Sub トピックに新しいメッセージが送信されたときに統合を実行する Application Integration トリガーを作成して構成します。統合の出力は、ショッピング カートを放棄したお客様に送信されるメールです。

Pub/Sub トリガーを作成する

  1. Google Cloud コンソールで、(ページ上部にある)検索バーに「Application Integration」と入力し、結果リストの [Application Integration] をクリックします。

  2. [Get started with Application Integration] ページの [リージョン] で [] を選択します。

  3. [Quick setup] をクリックして、必要な API を有効にします。

  4. [Create integration] をクリックし、統合の名前として次の値を入力します。abandoned-shopping-carts-integration

  5. [CREATE] をクリックします。

  6. abandoned-shopping-carts-integration のページで(上部にある)[Triggers] をクリックします。

  7. [Cloud Pub/Sub] を選択し、キャンバスをクリックして Pub/Sub トリガーを追加します。

  8. トリガーの詳細ペインの [Trigger Input] > [Pub/Sub topic] に、事前に作成した Pub/Sub トピックへのパスを追加します。

projects/{{{project_0.project_id | Project ID}}}/topics/recapture_customer
  1. [Service account] で、カスタム サービス アカウント ID [bq-continuous-query-sa@.iam.gserviceaccount.com] を選択します。

ID がリストに表示されない場合は、[Refresh list] をクリックします。

[Grant the necessary roles] という警告が表示された場合は、[Grant] をクリックします。

Pub/Sub トリガーのデータ マッピング変数を構成する

  1. キャンバスの上部で([Triggers] の隣にある)[Tasks] をクリックします。

  2. 検索バーに「Data Mapping」と入力します。

  3. 結果から [Data Mapping] を選択し、キャンバスをクリックして [Cloud Pub/Sub Trigger] の下にデータ マッピング タスクを追加します。

  4. [Cloud Pub/Sub Trigger] の下の接続点をクリックしてカーソルをドラッグし、[Data Mapping] の上の接続点につなげます。

これで、[Cloud Pub/Sub Trigger] の下から [Data Mapping] の上に矢印がつながりました。

  1. キャンバスで [Data Mapping] の項目をクリックし、[Open Data Mapping Editor] をクリックします。

次のステップでは、CloudPubSubMessage.data 型の 4 つの入力変数を作成します。

変数 1. message_output

  1. [Input] で [Variable or Value] をクリックします。

  2. [Variable]、[CloudPubSubMessage.data] の順に選択します。[Save] をクリックします。

  3. [Output] で [Create a new one] をクリックします。

  4. [Name] に「message_output」と入力します。

  5. [Variable type] で [Output from integration] を選択します。

  6. [Data type] で [String] を選択します。

  7. [Blank default value means] で、[Empty string] をオンにします。

  8. [Create] をクリックします。

変数 2. customer_message

Input に関数が含まれない変数を 1 つ作成しました。

次に、Input に 2 つの関数が含まれる別の変数を作成します。

  1. [Input] で [Variable or Value] をクリックします。

  2. [Variable]、[CloudPubSubMessage.data] の順に選択します。[Save] をクリックします。

  3. 2 つ目の変数の横にある [Add a function](+ アイコン)をクリックし、[TO_JSON() -> JSON] を選択します。

  4. 2 つ目の変数の [Add a function](+ アイコン)を再度クリックし、[GET_PROPERTY(String) -> JSON] を選択します。

  5. [.GET_PROPERTY] の横にある [Variable or Value] をクリックします。

  6. [Value] を選択し、「customer_message」と入力します。

  7. この変数の同じ行で、[Output] の下にある [Create a new one] をクリックします。

  8. [Name] に「customer_message」と入力します。

  9. [Variable type] で [Output from integration] を選択します。

  10. [Data type] で [String] を選択します。

注: JSON の関数を追加したため、デフォルトは [JSON] になっています。指示に沿って、データ型を [String] に変更してください。
  1. [Blank default value means] で、[Empty string] をオンにします。

  2. [Create] をクリックします。

変数 3、4. customer_email と customer_name

  • 前のセクションの手順 1~12 を繰り返し、次の情報を使用して 2 つの変数を作成します。
GET_PROPERTY() の値 出力名
customer_email customer_email
customer_name customer_name
注: JSON の関数を追加したため、Output のデフォルトのデータ型は [JSON] になっています。これらの両方の変数で Output のデータ型を [String] に変更してください。

この Application Integration トリガーに対して、message_outputcustomer_messagecustomer_emailcustomer_name の 4 つのデータ マッピング変数が構成されました。

Application Integration トリガーに対して構成された 4 つのデータ マッピング

メールを送信するタスクを追加する

  1. 画面上部の [Data Mapping Task Editor] の横にある戻る矢印(<-)をクリックして、キャンバスに戻ります。

  2. キャンバスの上部で([Triggers] の隣にある)[Tasks] をクリックします。

  3. 検索バーに「Send Email」と入力します。

  4. 結果から [Send Email] を選択し、キャンバスをクリックして [Data Mapping] の下にメール送信タスクを追加します。

  5. [Data Mapping] の下の接続点をクリックしてカーソルをドラッグし、[Send Email] の上の接続点につなげます。

[Cloud Pub/Sub Trigger] を [Data Mapping] につなげる最初の矢印に加えて、[Data Mapping] の下から [Send Email] の上につながる 2 つ目の矢印が追加されました。

[Cloud Pub/Sub Trigger] から [Data Mapping]、[Send Email] へとつながる矢印

  1. キャンバスで [Send Email] の項目をクリックして、詳細を表示します。

  2. [To Recipient(s)] で [Variable] をクリックします。「customer_email」と入力し、検索結果からその変数を選択します。

赤色の警告が表示された場合は、続行する前に検索結果から変数が選択されていることを確認してください。

  1. [Subject] に「カート内の商品をお忘れではありませんか?」と入力します。

  2. [Body Format] で [HTML] を選択します。

  3. [Body in HTML] で [Variable] をクリックします。「customer_message」と入力し、検索結果からその変数を選択します。

赤色の警告が表示された場合は、続行する前に検索結果から変数が選択されていることを確認してください。

  1. [abandoned-shopping-carts-integration] ページの右上にある [Publish] をクリックします。

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

タスク 4. Gemini を使用してメールのテキストを生成する継続的クエリを BigQuery で作成する

前のタスクでは、BigQuery ML リモートモデルや Pub/Sub の Application Integration トリガーなど、統合に必要なさまざまなコンポーネントを作成して構成しました。

このタスクでは、ワークフローの最後の部分、つまり、放棄されたショッピング カートのレコードを保存する BigQuery テーブルをモニタリングし、対象の顧客に合わせてプロモーション メールを生成するリクエストを Gemini に送信して、パーソナライズされたメールの内容を Pub/Sub トピックに書き込む継続的クエリを作成します。

BigQuery Enterprise の予約を作成する

  1. Google Cloud コンソールで、ナビゲーション メニューナビゲーション メニュー アイコン)> [BigQuery] >([管理] の下にある)[容量管理] をクリックします。

  2. [予約を作成] をクリックします。

  3. [予約名] に「bq-continuous-queries-reservation」と入力します。

  4. [場所] で [] を選択します。

  5. [エディション] で [Enterprise] を選択します。

  6. [最大予約サイズ セレクタ] で、[極小(50 スロット)] を選択します。

  7. [ベースライン スロット数] に「50」と入力します。

  8. [保存] をクリックします。

割り当てを作成する

予約が作成されたら、スロット予約テーブルで bq-continuous-queries-reservation という予約の行を特定します。

  1. [アクション] で [予約のアクション](縦に並んだ 3 つの点)をクリックし、[割り当ての作成] を選択します。

  2. [組織、フォルダ、プロジェクトを選択] で、[参照] をクリックし、次のプロジェクトを選択します。

  3. [ジョブタイプ] で [Continuous] を選択します。

  4. [作成] をクリックします。

bq-continuous-queries-reservation という予約の横にある矢印を展開すると、新しい割り当てを確認できます。これは projects/ の形式で表示されます。

BigQuery で継続的クエリを作成する

  1. BigQuery の左側のメニューで [Studio] をクリックします。

  2. [無題のクエリ] をクリックして、空のクエリ ウィンドウにアクセスします。

  3. 継続的クエリを作成するための以下のクエリをコピーして貼り付けます。ただし、まだ [実行] はクリックしないでください

EXPORT DATA OPTIONS (format = CLOUD_PUBSUB, uri = "https://pubsub.googleapis.com/projects/{{{project_0.project_id | Project ID}}}/topics/recapture_customer") AS (SELECT TO_JSON_STRING( STRUCT( customer_name AS customer_name, customer_email AS customer_email, REGEXP_REPLACE(REGEXP_EXTRACT(ml_generate_text_llm_result,r"(?im)\<html\>(?s:.)*\<\/html\>"), r"(?i)\[your name\]", "Your friends at AI Megastore") AS customer_message)), FROM ML.GENERATE_TEXT( MODEL `{{{project_0.project_id | Project ID}}}.continuous_queries.gemini_2_0_flash`, (SELECT customer_name, customer_email, CONCAT("Write an email to customer ", customer_name, ", explaining the benefits and encouraging them to complete their purchase of: ", products, ". Also show other items the customer might be interested in. Provide the response email in HTML format.") AS prompt FROM APPENDS(TABLE `{{{project_0.project_id | Project ID}}}.continuous_queries.abandoned_carts`, -- Configure the APPENDS TVF start_timestamp to specify when you want to -- Start processing data using your continuous query. -- Here we process data as ten minutes before the current time. CURRENT_TIMESTAMP() - INTERVAL 10 MINUTE)), STRUCT( 1024 AS max_output_tokens, 0.2 AS temperature, 1 AS candidate_count, TRUE AS flatten_json_output)))
  1. クエリ ウィンドウの上にある [その他の操作](縦に並んだ 3 つの点)> [その他](歯車アイコン)をクリックし、[クエリモードを選択] で [継続的クエリ] を選択します。

プロンプトが表示されたら、[確認] をクリックします。

  1. [その他の操作](縦に並んだ 3 つの点)> [その他](歯車アイコン)をもう一度クリックして、[クエリ設定] を選択します。

  2. [継続的クエリ] の [サービス アカウント] で、カスタム サービス アカウント [bq-continuous-query-sa@.iam.gserviceaccount.com] を選択します。

  3. [保存] をクリックしてクエリの設定を終了します。

  4. クエリ ウィンドウで [実行] をクリックして、継続的クエリを開始します。

継続的クエリが開始されるまで数分かかることがあります。

クエリ ウィンドウの上部に [Job running continously] というステータスが表示されたら、最後のタスクに進むことができます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 Gemini を使用してメールのテキストを生成する継続的クエリを BigQuery で作成する。

タスク 5. カート放棄テーブルにデータを追加して継続的クエリをテストする

最後のタスクでは、継続的クエリをテストします。そのために、abandoned_carts テーブルにデータを追加して、顧客にパーソナライズされたメールを送信する統合を開始します。

  1. BigQuery で + アイコン([無題のクエリ] の右側にある [SQL クエリ])をクリックして、新しいクエリ ウィンドウを開きます。

  2. 放棄されたショッピング カートの詳細をテーブルに挿入するための以下のクエリをコピーして貼り付け、[実行] をクリックします。

必要に応じて、Name を自分の名前に置き換えます。生成されたメールにアクセスする場合は、 を自分のメールアドレスに置き換えます。

以下のクエリに含まれるラボのユーザー名()を使用すると、生成されたメールにはアクセスできません。

# 放棄されたショッピング カートの詳細をテーブルに挿入する INSERT INTO `continuous_queries.abandoned_carts`(customer_name, customer_email,products) VALUES ("Name","{{{user_0.username | User Email}}}","Violin Strings, Tiny Saxophone, Guitar Strap")

[結果] に [このステートメントで、abandoned_carts に 1 個の行が追加されました。] というメッセージが表示されたら、このタスクは完了です。

放棄されたカートのテーブルに新しい行を挿入することで、指定のユーザーに放棄されたカート内の商品に関するカスタムメールを送信するワークフローが開始されました。

すぐにアクセスできるメールアドレスを指定した場合は、数分待ってからメールを確認して、放棄されたカートに関するカスタム メッセージを確認します。

指定した名前とメールアドレスが記載されたカスタムメール

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 カート放棄テーブルにデータを追加して継続的クエリをテストする。

お疲れさまでした

このラボでは、BigQuery の継続的クエリ、Gemini 2.0 Flash、Pub/Sub、Application Integration トリガーを使用してパーソナライズされたメールの内容を生成し、送信する方法を学習しました。具体的には、BigQuery の継続的クエリから受信した Pub/Sub メッセージごとにメールを送信するよう Application Integration トリガーを構成しました。この継続的クエリは、顧客に合わせてプロモーション メールを生成するリクエストを Gemini に送信し、パーソナライズされたメールの内容を Pub/Sub トピックに書き込みます。

次のステップと詳細情報

  • AI 関数を使用するというドキュメントを参照して、BigQuery の継続的クエリでサポートされている AI 関数について詳しく学習します。
  • タスクというドキュメントを参照し、Application Integration でサポートされているタスクについて詳しく学習します。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 3 月 25 日

ラボの最終テスト日: 2025 年 3 月 25 日

Copyright 2025 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

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

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

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

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

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

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

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

ありがとうございます。

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

1 回に 1 つのラボ

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

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

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