チェックポイント
Install Vertex AI SDK for Python and import libraries
/ 10
Generate a simple weather function call
/ 30
Generate a complex function call
/ 30
Generate function calls from a chat prompt
/ 30
Gemini を使用した関数呼び出しの概要
GSP1227
概要
Gemini は、Google の DeepMind が開発した、生成 AI モデルのファミリーであり、マルチモーダル ユースケース用に設計されています。Gemini API を使用すると、Gemini Pro Vision モデルと Gemini Pro モデルにアクセスできます。このラボでは、Vertex AI Gemini API を使用してテキスト プロンプトから関数呼び出しを生成する方法について学びます。
Gemini から関数を呼び出す
関数呼び出しを使用すると、デベロッパーはコード内に関数の説明を作成し、その説明をリクエストの言語モデルに渡すことができます。モデルからのレスポンスには、説明に対応する関数の名前と、その関数を呼び出す引数が含まれます。
関数呼び出しは、どちらも関数に関する情報を生成するという点で Vertex AI Extensions に似ています。両者の違いについて説明すると、関数呼び出しは関数の名前や、コードに使用する引数を含めて JSON データを返すのに対し、Vertex AI Extensions は関数を返して呼び出します。
目標
このラボでは、次の方法について学びます。
- Vertex AI SDK for Python をインストールする
- Vertex AI Gemini API を使用して Gemini Pro(
gemini-pro
)モデルを操作することで、以下を行います。- Google ストアの商品に関する情報をユーザーに提供するための関数呼び出しを、テキスト プロンプトから生成する。
- テキスト プロンプトから関数呼び出しを生成し、外部 API を呼び出して、住所をジオコーディングする。
- ログデータからエンティティを抽出するための関数呼び出しを、テキスト プロンプトから生成する。
設定と要件
[ラボを開始] ボタンをクリックする前に
こちらの手順をお読みください。ラボの時間は記録されており、一時停止することはできません。[ラボを開始] をクリックするとスタートするタイマーは、Google Cloud のリソースを利用できる時間を示しています。
このハンズオンラボでは、シミュレーションやデモ環境ではなく、実際のクラウド環境を使ってご自身でラボのアクティビティを行うことができます。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。
このラボを完了するためには、下記が必要です。
- 標準的なインターネット ブラウザ(Chrome を推奨)
- ラボを完了するために十分な時間を確保してください。ラボをいったん開始すると一時停止することはできません。
ラボを開始して Google Cloud コンソールにログインする方法
-
[ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。
- [Google Cloud コンソールを開く] ボタン
- 残り時間
- このラボで使用する必要がある一時的な認証情報
- このラボを行うために必要なその他の情報(ある場合)
-
[Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウでリンクを開く] を選択します)。
ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。
ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。
注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。 -
必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。
{{{user_0.username | "Username"}}} [ラボの詳細] パネルでも [ユーザー名] を確認できます。
-
[次へ] をクリックします。
-
以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。
{{{user_0.password | "Password"}}} [ラボの詳細] パネルでも [パスワード] を確認できます。
-
[次へ] をクリックします。
重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。 -
その後次のように進みます。
- 利用規約に同意してください。
- 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
- 無料トライアルには登録しないでください。
その後、このタブで Google Cloud コンソールが開きます。
タスク 1. Vertex AI Workbench でノートブックを開く
-
Google Cloud コンソールのナビゲーション メニューで、[Vertex AI] > [ワークベンチ] をクリックします。
-
インスタンスを見つけて、[JupyterLab を開く] ボタンをクリックします。
Workbench インスタンスの JupyterLab インターフェースが新しいブラウザタブで開きます。
タスク 2. ノートブックを設定する
-
ファイルをクリックします。 -
[Select Kernel](カーネルの選択)ダイアログで、使用可能なカーネルのリストから [Python 3] を選択します。
-
ノートブックの [Getting Started](スタートガイド)、[Set Google Cloud project information](Google Cloud プロジェクト情報の設定)、[Import libraries](ライブラリのインポート)の各セクションをすべて実行します。
- [Project ID](プロジェクト ID)に
を使用し、[Location](場所)に を使用します。
- [Project ID](プロジェクト ID)に
以降のセクションでは、ノートブック セルの実行を通して、Vertex AI SDK for Python で Vertex AI Gemini API を使用する方法を見ていきます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 3. 構造化された Google ストアクエリの関数呼び出しの使用
テキスト生成モデルを使用する場合、JSON などの構造化された形式での一貫したレスポンスを LLM に強制するのは難しいことがあります。関数呼び出しを使用すると、プロンプトや非構造化入力を通じて LLM を操作し、外部関数の呼び出しに使用できる構造化されたレスポンスを LLM が返すようにすることが容易になります。
関数呼び出しは、ユーザー プロンプトや関数定義から取得した構造化出力を使用して外部システムに API リクエストを送信し、関数のレスポンスを LLM に返してユーザーへのレスポンスを生成する方法と見なせます。つまり、Gemini の関数呼び出しは、ユーザーの非構造化テキストやメッセージから構造化パラメータを抽出できます。この例では、Gemini モデルのチャット モダリティとともに関数呼び出しを使用して、Google ストアの商品に関する情報をユーザーに提供します。
- このタスクでは、ノートブック セルの実行を通して Gemini モデルを使用し、Google ストアの商品に関する情報をユーザーに提供する方法を見ていきます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 4. 関数呼び出しを使用して Maps API で住所をジオコーディングする
この例では、Gemini API のテキスト モダリティを使用して、複数のパラメータを入力として受け取る関数を定義します。関数呼び出しのレスポンスを使用して、引き続きライブ API 呼び出しを行い、住所を緯度と経度の座標に変換します。
- このタスクでは、ノートブック セルの実行を通して、Gemini Pro モデルを使用し、住所をジオコーディングする関数呼び出しを生成する方法を見ていきます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
タスク 5. 関数呼び出しによるエンティティ抽出
これまでの例では、Gemini 関数呼び出しの中でエンティティ抽出機能を使用して、結果のパラメータを REST API またはクライアント ライブラリに渡すことができました。一方で、Gemini 関数呼び出しでエンティティ抽出ステップのみを実行し、実際に API を呼び出さずに処理を停止したい場合があります。この機能は、非構造化テキストデータを構造化されたフィールドに変換する便利な方法と考えることができます。
この例では、未加工のログデータを受け取って、エラー メッセージの詳細を含む構造化されたデータに変換するログ抽出ツールを作成します。
- このタスクでは、ノートブック セルの実行を通して、Gemini Pro モデルを使用して関数呼び出しを生成し、ログデータからエンティティを抽出する方法を見ていきます。
[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。
お疲れさまでした
これで完了です。このラボでは、Vertex AI Gemini API を使用してテキスト プロンプトから関数呼び出しを生成する方法について学びました。Gemini Pro モデルを使用して関数呼び出しを生成しました。それらの関数は、Google ストアの商品に関する情報をユーザーに提供する、住所をジオコーディングする、およびログデータからエンティティを抽出するためのものでした。
次のステップと詳細情報
- Vertex AI のドキュメントで生成 AI について確認する。
- Google Cloud Tech YouTube チャンネルで、生成 AI の詳細を確認する。
- Google Cloud 生成 AI の公式リポジトリ
- Gemini のノートブックの例
Google Cloud トレーニングと認定資格
Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。
マニュアルの最終更新日: 2024 年 10 月 8 日
ラボの最終テスト日: 2024 年 10 月 8 日
Copyright 2024 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。