arrow_back

Gemini を使用した関数呼び出しの概要

ログイン 参加
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Gemini を使用した関数呼び出しの概要

Lab 1時間 universal_currency_alt クレジット: 5 show_chart 中級
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP1227

Google Cloud セルフペース ラボ

概要

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 コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるポップアップでお支払い方法を選択してください。 左側の [ラボの詳細] パネルには、以下が表示されます。

    • [Google コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google コンソールを開く] をクリックします。 ラボでリソースが起動し、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、[ラボの詳細] パネルから [ユーザー名] をコピーして [ログイン] ダイアログに貼り付けます。[次へ] をクリックします。

  4. [ラボの詳細] パネルから [パスワード] をコピーして [ようこそ] ダイアログに貼り付けます。[次へ] をクリックします。

    重要: 認証情報は左側のパネルに表示されたものを使用してください。Google Cloud Skills Boost の認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  5. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後このタブで Cloud Console が開きます。

注: 左上にある [ナビゲーション メニュー] をクリックすると、Google Cloud のプロダクトやサービスのリストが含まれるメニューが表示されます。 ナビゲーション メニュー アイコン

タスク 1. Vertex AI Workbench でノートブックを開く

  1. Google Cloud コンソールのナビゲーション メニューで、[Vertex AI] > [ワークベンチ] をクリックします。

  2. [ユーザー管理のノートブック] ページで、generative-ai-jupyterlab ノートブックを見つけて、[JupyterLab を開く] ボタンをクリックします。

新しいブラウザタブで JupyterLab インターフェースが開きます。

タスク 2. generative-ai フォルダを開く

  1. ノートブックの左側にある generative-ai フォルダに移動します。

  2. /gemini/function-calling フォルダに移動します。

  3. intro_function_calling.ipynb ファイルをクリックします。

  4. ノートブックの [Getting Started](スタートガイド)、[Set Google Cloud project information](Google Cloud プロジェクト情報の設定)、[Import libraries](ライブラリのインポート)の各セクションをすべて実行します。

    • [プロジェクト ID] に を使用し、[場所] に を使用します。
注: 「Colab only」(Colab のみ)と記載されているノートブック セルは省略できます。

以降のセクションでは、ノートブック セルの実行を通して、Vertex AI SDK for Python で Vertex AI Gemini API を使用する方法を見ていきます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 Vertex AI SDK for Python をインストールしてライブラリをインポートする。

タスク 3. 構造化された Google ストアクエリの関数呼び出しの使用

テキスト生成モデルを使用する場合、JSON などの構造化された形式での一貫したレスポンスを LLM に強制するのは難しいことがあります。関数呼び出しを使用すると、プロンプトや非構造化入力を通じて LLM を操作し、外部関数の呼び出しに使用できる構造化されたレスポンスを LLM が返すようにすることが容易になります。

関数呼び出しは、ユーザー プロンプトや関数定義から取得した構造化出力を使用して外部システムに API リクエストを送信し、関数のレスポンスを LLM に返してユーザーへのレスポンスを生成する方法と見なせます。つまり、Gemini の関数呼び出しは、ユーザーの非構造化テキストやメッセージから構造化パラメータを抽出できます。この例では、Gemini モデルのチャット モダリティとともに関数呼び出しを使用して、Google ストアの商品に関する情報をユーザーに提供します。

  1. このタスクでは、ノートブック セルの実行を通して Gemini モデルを使用し、Google ストアの商品に関する情報をユーザーに提供する方法を見ていきます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 簡単な天気情報の関数呼び出しを生成する。

タスク 4. 関数呼び出しを使用して Maps API で住所をジオコーディングする

この例では、Gemini API のテキスト モダリティを使用して、複数のパラメータを入力として受け取る関数を定義します。関数呼び出しのレスポンスを使用して、引き続きライブ API 呼び出しを行い、住所を緯度と経度の座標に変換します。

  1. このタスクでは、ノートブック セルの実行を通して、Gemini Pro モデルを使用し、住所をジオコーディングする関数呼び出しを生成する方法を見ていきます。
ここでは、上記のノートブックを簡単に使って学べるようするために、OpenStreetMap Nominatim API を使用して住所をジオコーディングします。大量の地図や位置情報データを扱う場合は、Google Maps Geocoding API をご利用いただけます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 複雑な関数呼び出しを生成する。

タスク 5. 関数呼び出しによるエンティティ抽出

これまでの例では、Gemini 関数呼び出しの中でエンティティ抽出機能を使用して、結果のパラメータを REST API またはクライアント ライブラリに渡すことができました。一方で、Gemini 関数呼び出しでエンティティ抽出ステップのみを実行し、実際に API を呼び出さずに処理を停止したい場合があります。この機能は、非構造化テキストデータを構造化されたフィールドに変換する便利な方法と考えることができます。

この例では、未加工のログデータを受け取って、エラー メッセージの詳細を含む構造化されたデータに変換するログ抽出ツールを作成します。

  1. このタスクでは、ノートブック セルの実行を通して、Gemini Pro モデルを使用して関数呼び出しを生成し、ログデータからエンティティを抽出する方法を見ていきます。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 チャット プロンプトから関数呼び出しを生成する。

お疲れさまでした

これで完了です。このラボでは、Vertex AI Gemini API を使用してテキスト プロンプトから関数呼び出しを生成する方法について学びました。Gemini Pro モデルを使用して関数呼び出しを生成しました。それらの関数は、Google ストアの商品に関する情報をユーザーに提供する、住所をジオコーディングする、およびログデータからエンティティを抽出するためのものでした。

次のステップと詳細情報

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

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

マニュアルの最終更新日: 2024 年 4 月 23 日

ラボの最終テスト日: 2024 年 4 月 23 日

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