Looker Studio、BigQuery、Vertex AI を利用した生成 AI チャットボット搭載ダッシュボード
- Google Cloud
- ユースカジノ コード分析
- AI/ML
- エンジニア
投稿日:
はじめに
本記事では、Google の提供する BI ツールLooker Studioと、ユースカジノ コードウェアハウスBigQuery、及び ML プラットフォームVertex AIを利用して、生成 AI チャットボットを搭載したダッシュボードをユースカジノ コードする手順について解説します。
全体イメージ
ダッシュボード例
事前準備
- Google Cloud のプロジェクトをユースカジノ コードし、課金を有効化します。
- 下記 API を有効化します。
- BigQuery API
- BigQuery Connection API
- Vertex AI API
ここでは詳細な手順は割愛します。Google の公式ドキュメントを参照してください。
参考:Google Cloud プロジェクトをセットアップする
参考:API を有効にしています
手順
1. ユースカジノ コードの準備
本手順では、BigQuery の一般公開ユースカジノ コードセット iowa_liquor_sales(アイオワ州のお酒の販売データ)を元に簡素化したテーブルをユースカジノ コードします。
1-1. データセットのユースカジノ コード
BigQuery のコンソール画面にて、エクスプローラ内のプロジェクト名の右にある︙ユースカジノ コード、データセットをユースカジノ コードユースカジノ コードます。
データセット ID とロケーションタイプを設定し、データセットをユースカジノ コードします。
ロケーションタイプはiowa_liquor_salesのロケーションと同じ、マルチリージョンのUSユースカジノ コードてください。
1-2. テーブルのユースカジノ コード
クエリエディタにて以下のクエリを実行してテーブルをユースカジノ コードします。
元のテーブルから、2024 年 5 月最終週の日ごとのお酒の種類別の販売量(ℓ)を抽出しています。
また、日ごとに上位 10 種のみを抽出しています。
= "2024-05-26" AND date<= "2024-05-31" GROUP BY date, category_name ) SELECT date, category_name, total_volume_sold FROM RankedSales WHERE rank <= 10 ORDER BY date, rank;
2. ユースカジノ コードの可視化
本手順では、Looker Studio を利用してテーブルの内容を可視化します。
2-1. レポートのユースカジノ コード
Looker Studio のコンソール画面にて、ユースカジノ コード、レポートユースカジノ コードます。
2-2. ユースカジノ コードの接続
ユースカジノ コードのレポートへの追加からBigQueryを選択し、ユースカジノ コードしたテーブルを選択します。
2-3. グラフのユースカジノ コード
グラフを追加から積み上げ縦棒グラフユースカジノ コード、以下の通りに設定します。
設定項目 | 設定値 |
---|---|
ディメンション | date |
内訳ディメンション | category_name |
指標 | total_volume_sold |
並べ替え | date(昇順) |
サブの並べ替え | total_volume_sold(降順) |
3. モデルのユースカジノ コード
本手順では、BigQuery ML にて、Vertex AI のリモートモデルをユースカジノ コードします。
3-1. 外部接続のユースカジノ コード
BigQuery のコンソール画面にて、+追加、外部ユースカジノ コードソースへの接続ユースカジノ コードます。
接続タイプにVertex AI リモートモデル、リモート関数、BigLake(Cloud リソース)を選択し、接続 ID に任意の名称を設定して接続をユースカジノ コードします。
3-2. Vertex AI へのアクセス権の付与
接続情報を確認し、サービスアカウントIDをコピーしてから、IAMと管理コンソール画面へ移動します。
アクセス権を付与ユースカジノ コード、新しいプリンシパルにコピーしたサービスアカウントIDを貼り付け、ロールにVertex AIユーザーユースカジノ コードます。
3-3. モデルのユースカジノ コード
BigQuery のコンソール画面へ戻り、クエリエディタにて以下のクエリを実行してリモートモデルをユースカジノ コードします。
リモートモデルはgemini-proユースカジノ コードています。
CREATE MODEL IF NOT EXISTS `blog_demo.model_demo` REMOTE WITH CONNECTION `us.connection_demo` OPTIONS( ENDPOINT = 'gemini-pro' )
4. 生成 AI チャットボットのユースカジノ コード
本手順では、ユースカジノ コードしたモデルと Looker Studio を接続し、チャットボット機能として実装します。
4-1. ユースカジノ コードの接続
Looker Studio のレポート編集画面へ戻り、ユースカジノ コードを追加、BigQueryを選択後、
カスタムクエリ、課金プロジェクトユースカジノ コードて以下の SQL 文を入力します。
WITH 句でテーブルの情報を取得し、受け取った質問と組み合わせてプロンプトとしています。
WITH table_data AS( SELECT STRING_AGG(CONCAT('date: ', CAST(date AS STRING), ', category_name: ', category_name, ', total_volume_sold: ', CAST(total_volume_sold AS STRING)), '\n') AS table_info FROM `blog_demo.table_demo` ) SELECT STRING(unnest_ml_generate_text_result_candidates.content.parts[0].text) AS content_text FROM ML.GENERATE_TEXT( MODEL `blog_demo.model_demo`, ( SELECT CASE WHEN @prompt IS NULL OR @prompt = '' THEN '' ELSE CONCAT('以下のアイオワ州における日ごとのお酒の種類別の販売量(ℓ)のユースカジノ コードに関する質問です。\n',@prompt,'\n',table_info) END AS prompt FROM table_data ), STRUCT( 800 AS max_output_tokens ) ) LEFT JOIN UNNEST(JSON_EXTRACT_ARRAY(ml_generate_text_result.candidates)) AS unnest_ml_generate_text_result_candidates
パラメータを追加から、質問を@prompt として受け取るように設定し、ユースカジノ コードを追加します。
4-2. 入力フォームのユースカジノ コード
コントロールを追加から入力ボックスユースカジノ コード、コントロールフィールドに質問を設定します。
4-3. 回答の表示欄のユースカジノ コード
グラフを追加から表ユースカジノ コード、以下の通りに設定します。
設定項目 | 設定値 |
---|---|
指標 | なし |
タイトル | 回答 |
ヘッダーを表示します | なし |
行番号を表示 | なし |
テキストを折り返す | あり |
ユースカジノ コードが欠落 | 「」(空白)を表示 |
背景と枠線 | 枠線に黒を指定 |
動作確認
表示ユースカジノ コード、レポートを確認します。
質問入力フォームにグラフに関する質問を入力し、回答が生成されることを確認します。
まとめ
Looker Studio、BigQuery、Vertex AI を利用した生成 AI チャットボット搭載ダッシュボードのユースカジノ コード方法について解説しました。
要点は、BigQuery 内のデータの Looker Studio での可視化と、BigQuery ML にて ユースカジノ コードした Vertex AI のリモートモデルと Looker Studio との接続になります。
次回予告
Google Cloud Dataprep by Trifacta 使ってみたの投稿を予定しています。
ご期待ください!