先日のGoogle Cloud Next ’24において、BigQueryとGeminiを使った生成AIのデータ分析についてのセッションがありました。(”Power data analytics with generativ AI using Big Query and Gemini” という題名です。)
こちらのセッションによると、GoogleのAIモデルであるGemini を BigQuery の生成AI関数(ML.GENERATE_TEXT関数)を用いて BigQuery で直接使用することができるようになったとのことで、デモが紹介されてました。そこで今回はそのデモを実際に試してみました。
ML.GENERATE_TEXT関数は、BigQuery テーブルに保存されているテキストに対して自然言語生成タスクを実行できるもののようで、Geminiに関する情報は、2024年4月末時点では英語のページのみ更新されています。
参考動画はこちらです。
デモをやってみる
それではデモをやっていきます。デモはこちらです。
最初にデモを動かす用の新規プロジェクトを作成します。
プロジェクトを作成したら、デモのNotebookの"How to open this notebook in BigQuery Studio" の ” Open in Colab Enterprise ”と書かれているリンクをクリックします。そうすると、Colab EnterpriseのGCPコンソールが開き、必要なAPIを有効化するように促されますので、有効化します。
この後、”Import to Colab Enterprise”の画面でConifrmしたのですが、うまく動かなかったため、.ipynbファイルを一旦ローカルにダウンロードしたあと、以下のドキュメントを参考にしてファイルをアップロードしました。
アップロードできたら、ナビゲーションバーを辿って、BigQuery Studioを開きます。Notebooksの下にposter_image_analysis.ipynbができていました。
後はこの Notebook の demo を上から順番に実行していきます。
” Prompt Gemini 1.0 Pro Vision to analyze the movie poster image object table ”のところのBQMLでML.GENERATE_TEXT関数が使われています。
(プロンプトは"For the movie represented by this poster, what is the movie title and year of release? Answer in JSON format with two keys: title, year. title should be string, year should be integer."(このポスターに代表される映画のタイトルと公開年は何ですか? タイトル、年という 2 つのキーを含む JSON 形式で回答します。 タイトルは文字列、年は整数である必要があります。))
実行結果はこんな感じでした。
また途中の "Prompt Gemini 1.0 Pro to provide movie summaries for each movie poster image "のBQMLでも、ML.GENERATE _TEXT関数が使用されています。(プロンプトは"Provide a short summary of movie titled 'xxx' from the year 'xxx.'"(「xxx」年の「xxx」というタイトルの映画の短い概要を入力してください。))