コーディングレベル: 高度な
間隔: 45 分
プロジェクトの種類:Google Workspace アドオン延長するチャット、Gmail、カレンダー、ドライブ、ドキュメント、スプレッドシート、スライド。
このチュートリアルでは、Apps Script または HTTP エンドポイントを使用して、AI エージェントを Google Workspace アドオンとして Google Workspace に公開する方法を説明します。アドオンを公開すると、ユーザーはワークフロー内で AI エージェントと対話できるようになります。
概要
このチュートリアルでは、エージェント開発キット(ADK)から Travel Concierge サンプルをデプロイします。Travel Concierge は、Google Maps Platform Places API、Google Search Grounding、Model Context Protocol (MCP) サーバーなどのツールを使用する会話型マルチエージェント AI です。
ADK は、デフォルトで開発者向けにチャットおよびテキスト インターフェイスを提供します。このチュートリアルでは、ユーザーが Chat、Gmail、カレンダー、ドライブ、ドキュメント、スプレッドシート、スライドから直接アクセスできる グラフィカル ユーザー インターフェース(GUI)を Google Workspace アプリケーションに追加します。
図 1. Chat の AI エージェントを使用して、旅行のアイデアをブレインストーミングします。
図 2. Gmail の AI エージェントを使用して、選択したメールのコンテキストから旅行を計画します。
目標
- 環境を設定します。
- AI エージェントをデプロイします。
- プロジェクトを設定します。
- Gmail、カレンダー、ドライブ、ドキュメント、スプレッドシート、スライドにデプロイします。
- Chat にデプロイします。
- ソリューションをテストする。
このソリューションについて
このソリューションは、ADK、Google Cloud と Google Workspace APIs、Vertex AI Agent Engine、カード フレームワークというコアテクノロジーに依存しています。
Chat と Chat 以外のアプリケーション(Gmail、カレンダー、ドライブ、ドキュメント、スプレッドシート、スライド)では、それぞれの機能と制限事項を考慮して、GUI が異なる設計になっています。
機能
Travel Concierge アプリケーションの次の機能は、すべての Google Workspace アプリケーションに共通です。
永続的なユーザー セッション: セッションは永続性のために Vertex AI によって管理されます。各ユーザーは、すべての Workspace アプリケーションで 1 つのセッションを共有します。ユーザーはセッションを手動でリセットして、新しい会話を開始できます。
リッチ メッセージ: ユーザーがテキスト メッセージを送信し、リッチテキストとカード ウィジェットを含むレスポンスを受信します。
エラー処理: 予期しないエラーは、レスポンス内の設定可能な再試行とステータスを使用して適切に処理されます。
Chat 用アプリには、次の追加機能があります。
マルチモーダル ユーザー メッセージング: ユーザーは、チャット スペースから直接録画した音声や動画などの添付ファイル付きのメッセージを送信できます。
より視覚的に高度なレスポンス: カード フレームワークのチャット専用機能とより広いレンダリング スペースを活用することで、画像付きのカルーセルなどのより高度なウィジェットを使用してレスポンスを生成できます。
他のアプリケーションには次の追加機能があります。
Google プロフィールのコンテキスト: ユーザーは、プロフィール情報(このサンプルでは生年月日のみ)を含むメッセージを送信できます。
Gmail のコンテキスト: ユーザーはメールでメッセージを送信できます(このサンプルでは件名と本文は 1 つに制限されています)。
エージェントのチャット スペースへのアクセス: ユーザーはボタンを 1 回クリックするだけで、チャット アプリのダイレクト メッセージ(DM)スペースを新しいタブで開くことができます。
アーキテクチャ
Travel Concierge アプリケーションは、Google Workspace アプリケーションから Google Workspace アドオンのインタラクション イベントを受信して処理し、Vertex AI を使用して ADK AI エージェントをプロンプトし、ユーザー セッションを管理します。また、Google Cloud と Google Workspace の API を使用してコンテキストを収集し、レスポンスを表示します。
次の図は、AI エージェントにメッセージを送信するという主なユーザー フローを示しています。
HTTP
図 3. チャットアプリは、ユーザー メッセージの添付ファイルでコンテキストを完成させ、サブエージェントのやり取りの履歴と最終的な全体的な回答を時系列順にまとめた一連のメッセージを送信します。
図 4. Chat 以外のアプリケーションは、ユーザーの Google プロフィールとアイテムの選択でコンテキストを完成させ、サブエージェントのやり取りの履歴と最終的な全体的な回答を含む一連のセクションを逆時系列順に表示します。
Apps Script
図 3. チャットアプリは、ユーザー メッセージの添付ファイルでコンテキストを完成させ、サブエージェントのやり取りの履歴と最終的な全体的な回答を時系列順にまとめた一連のメッセージを送信します。
図 4. Chat 以外のアプリケーションは、ユーザーの Google プロフィールとアイテムの選択でコンテキストを完成させ、サブエージェントのやり取りの履歴と最終的な全体的な回答を含む一連のセクションを逆時系列順に表示します。
前提条件
Google Chat にアクセスできる Business または Enterprise の Google Workspace アカウント。
インターネットにアクセスできるウェブブラウザ。
Travel Concierge ADK AI エージェントに固有の前提条件
- Python 3.10 以上: インストールについては、公式の Python ウェブサイトの手順に従ってください。
uv: インストールについては、公式の指示に従ってくださいuvWeb サイト。- Google Cloud CLI: インストールについては、Google Cloud の公式ウェブサイトの手順に従ってください。
環境を準備する
このセクションでは、Google Cloud プロジェクトを作成して構成する方法を説明します。
Google Cloud プロジェクトを作成する
Google Cloud コンソール
- Google Cloud コンソールで、メニュー > [IAM と管理] > [プロジェクトを作成] に移動します。
-
[プロジェクト名] フィールドに、プロジェクトのわかりやすい名前を入力します。
省略可: プロジェクト ID を編集するには、[編集] をクリックします。プロジェクト ID はプロジェクトの作成後に変更することはできないため、プロジェクトの有効期間中のニーズを満たす ID を選択してください。
- [ロケーション] フィールドで、[参照] をクリックして、プロジェクトの候補となるロケーションを表示します。次に、[選択] をクリックします。
- [作成] をクリックします。Google Cloud コンソールからダッシュボード ページに移動し、数分以内にプロジェクトが作成されます。
gcloud CLI
次のいずれかの開発環境で、Google Cloud CLI (gcloud ):
-
Cloud Shell: gcloud CLI がすでに設定されているオンライン ターミナルを使用するには、Cloud Shell を有効にします。
Cloud Shell を有効にする -
ローカルシェル: ローカル開発環境を使用するには、gcloud CLI をインストールして初期化します。
クラウドプロジェクトを作成するには、gcloud projects create指示: 作成するプロジェクトの ID を設定して、PROJECT_ID を置き換えます。gcloud projects create PROJECT_ID
Cloud プロジェクトの課金を有効にする
Google Cloud コンソール
- Google Cloud コンソールで、[お支払い] に移動します。クリックメニュー > 請求する > 私のプロジェクト。
- [組織を選択] で、Google Cloud プロジェクトに関連付けられている組織を選択します。
- プロジェクトの行で、[アクション] メニュー()を開き、[お支払い情報を変更] をクリックして、Cloud 請求先アカウントを選択します。
- [アカウントを設定] をクリックします。
gcloud CLI
- 利用可能な請求先アカウントを一覧表示するには、次のコマンドを実行します。
gcloud billing accounts list - 請求先アカウントを Google Cloud プロジェクトにリンクします。
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID次のように置き換えます。
PROJECT_IDは、課金を有効にする Cloud プロジェクトのプロジェクト ID です。BILLING_ACCOUNT_IDは、Google Cloud プロジェクトにリンクする請求先アカウント ID です。
Google Cloud APIs を有効にする
HTTP
Google Cloud コンソールで、Vertex AI、Places、People、Google Chat、Gmail、Cloud Build、Cloud Functions、Cloud Pub/Sub、Cloud Logging、Artifact Registry、Cloud Run、Google Workspace のアドオン API を有効にします。
正しい Cloud プロジェクトで API を有効にしていることを確認し、[次へ] をクリックします。
正しい API を有効にしていることを確認し、[有効にする] をクリックします。
Apps Script
Google Cloud コンソールで、Vertex AI、Places、People、Google Chat API を有効にします。
正しい Cloud プロジェクトで API を有効にしていることを確認し、[次へ] をクリックします。
正しい API を有効にしていることを確認し、[有効にする] をクリックします。
Google Maps Platform Places API キーを取得する
Google Cloud コンソールで、[Google Maps Platform] > [キーと認証情報] ページに移動します。
[Google Maps Platform を使ってみる] ダイアログに、新しく作成された API キー(英数字の文字列)が表示されます。この文字列は以降のセクションで必要になります。
Google Cloud コンソールでサービス アカウントを作成する
ロールを持つ新しいサービスアカウントを作成するVertex AI User次の手順に従ってください。
Google Cloud コンソール
- Google Cloud コンソールで、メニュー > [IAM と管理] > [サービス アカウント] に移動します。
- [サービス アカウントを作成] をクリックします。
- サービス アカウントの詳細を入力し、[作成して続行] をクリックします。
- オプション: サービス アカウントにロールを割り当てて、Google Cloud プロジェクトのリソースへのアクセス権を付与します。詳細については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
- [続行] をクリックします。
- オプション: このサービス アカウントで管理およびアクションを実行できるユーザーまたはグループを入力します。詳細については、サービス アカウントの権限借用を管理するをご覧ください。
- [完了] をクリックします。サービス アカウントのメール アドレスをメモします。
gcloud CLI
- サービス アカウントを作成します。
gcloud iam service-accounts createSERVICE_ACCOUNT_NAME\ --display-name="SERVICE_ACCOUNT_NAME" - オプション: サービス アカウントにロールを割り当てて、Google Cloud プロジェクトのリソースへのアクセス権を付与します。詳細については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
サービス アカウントがサービス アカウント ページに表示されます。次に、サービス アカウントの秘密キーを作成します。
秘密鍵を作成する
サービス アカウントの秘密鍵を作成してダウンロードする手順は次のとおりです。
- Google Cloud コンソールで、メニュー > [IAM と管理] > [サービス アカウント] に移動します。
- サービス アカウントを選択します。
- [キー] > [キーを追加] > [新しいキーを作成] をクリックします。
- [JSON] を選択し、[作成] をクリックします。
新しい公開鍵と秘密鍵のペアが生成され、新しいファイルとしてパソコンにダウンロードされます。ダウンロードした JSON ファイルを作業ディレクトリに
credentials.jsonとして保存します。このファイルはこの鍵の唯一のコピーです。キーを安全に保存する方法については、サービス アカウント キーの管理をご覧ください。 - [閉じる] をクリックします。
サービス アカウントの詳細については、Google Cloud IAM ドキュメントのサービス アカウントをご覧ください。
OAuth 同意画面を構成する
Google Workspace アドオンには同意画面の構成が必要です。アドオンの OAuth 同意画面を構成すると、Google がユーザーに表示する内容が定義されます。
- Google Cloud コンソールでメニューに移動します > Google Auth platform > ブランディング。
- Google Auth platformをすでに構成している場合は、[ブランディング]、[対象ユーザー]、[データアクセス] で次の OAuth 同意画面の設定を構成できます。[Google Auth platform まだ設定されていません] というメッセージが表示された場合は、[使ってみる] をクリックします。
- [アプリ情報] の [アプリ名] に、アプリの名前を入力します。
- [ユーザー サポートメール] で、ユーザーが同意について問い合わせる際に使用するサポートのメールアドレスを選択します。
- [続行] をクリックします。
- [対象] で [内部] を選択します。
- [続行] をクリックします。
- [連絡先情報] で、プロジェクトに対する変更の通知を受け取るメールアドレスを入力します。
- [続行] をクリックします。
- [完了] で、Google API サービスのユーザーデータに関するポリシーを確認し、同意する場合は [Google API サービス: ユーザーデータに関するポリシーに同意します] を選択します。
- [続行] をクリックします。
- [作成] をクリックします。
- 現時点では、スコープの追加はスキップできます。今後、Google Workspace 組織外で使用するアプリを作成する場合は、[ユーザータイプ] を [外部] に変更する必要があります。次に、アプリに必要な認可スコープを追加します。詳細については、OAuth 同意画面を構成するの完全なガイドをご覧ください。
トラベルコンシェルジュ ADK AI エージェントの導入
まだ行っていない場合は、Google Cloud アカウントで認証し、Google Cloud プロジェクトを使用するように Google Cloud CLI を構成します。
gcloud auth application-default logingcloud config set project PROJECT_IDgcloud auth application-default set-quota-project PROJECT_ID交換するPROJECT_ID作成した Cloud プロジェクトの ID に置き換えます。
この GitHub リポジトリをダウンロードする
任意のローカル開発環境で、ダウンロードしたアーカイブ ファイルを抽出し、
adk-samples/python/agents/travel-conciergeディレクトリを開きます。unzip adk-samples-main.zipcd adk-samples-main/python/agents/travel-conciergeADK AI エージェント専用の新しい Cloud Storage バケットを作成します。
gcloud storage buckets create gs://CLOUD_STORAGE_BUCKET_NAME --project=PROJECT_ID --location=PROJECT_LOCATION次のように置き換えます。
- CLOUD_STORAGE_BUCKET_NAME使用したい一意のバケット名を入力します。
- PROJECT_ID は、作成した Cloud プロジェクトの ID に置き換えます。
- PROJECT_LOCATION は、作成した Cloud プロジェクトのロケーションに置き換えます。
次の環境変数を設定します。
export GOOGLE_GENAI_USE_VERTEXAI=1export GOOGLE_CLOUD_PROJECT=PROJECT_IDexport GOOGLE_CLOUD_LOCATION=PROJECT_LOCATIONexport GOOGLE_PLACES_API_KEY=PLACES_API_KEYexport GOOGLE_CLOUD_STORAGE_BUCKET=CLOUD_STORAGE_BUCKET_NAMEexport TRAVEL_CONCIERGE_SCENARIO=travel_concierge/profiles/itinerary_empty_default.json次のように置き換えます。
- PROJECT_ID は、作成した Cloud プロジェクトの ID に置き換えます。
- PROJECT_LOCATION は、作成した Cloud プロジェクトのロケーションに置き換えます。
- PLACES_API_KEY は、作成した API キーの文字列に置き換えます。
- CLOUD_STORAGE_BUCKET_NAME は、作成したバケットの名前に置き換えます。
ADK AI エージェントをインストールして展開します。
uv sync --group deploymentuv run python deployment/deploy.py --create最後に印刷されたログからプロジェクト番号とエンジン ID をそれぞれ PROJECT_NUMBER と ENGINE_ID として取得します。後でプロジェクトを構成する際に両方が必要になります。
Created remote agent: projects/PROJECT_NUMBER/locations/us-central1/reasoningEngines/ENGINE_ID
サンプルコードを確認する
オプションとして、プロジェクトをセットアップする前に、GitHub でホストされているサンプル コードを確認して理解を深めてください。
Python
Apps Script
プロジェクトを作成して構成する
Python
この GitHub リポジトリをダウンロードしてください
好みのローカル開発環境で、ダウンロードしたアーカイブファイルを解凍し、
add-ons-samples/python/travel-adk-ai-agentディレクトリ。unzip add-ons-samples-main.zipcd add-ons-samples-main/python/travel-adk-ai-agent前の手順でダウンロードしたサービス アカウントから、JSON キーファイル
credentials.jsonをプロジェクト ディレクトリに移動します。Google Cloud コンソールで、[Cloud Run] に移動します。
[関数を作成] をクリックします。
[サービスの作成] ページで、関数を設定します。
- [サービス名] フィールドに「
travel-concierge-app」と入力します。 - [リージョン] リストで、作成した Cloud プロジェクトの場所(PROJECT_LOCATION)を選択します。
- 下エンドポイント URL 、 クリック
。
- [ランタイム] リストで、最新バージョンの Python を選択します。
- [認証] セクションで、[公開アクセスを許可する] を選択します。
- [コンテナ、ボリューム、ネットワーク、セキュリティ] セクションの [リソース] で次の操作を行います。
- [メモリ] フィールドで [1 GiB] を選択します。
- [CPU] フィールドで [2] を選択します。
- [作成] をクリックし、Cloud Run がサービスを作成するのを待ちます。コンソールで [ソース] タブにリダイレクトされます。
- [サービス名] フィールドに「
好みのローカル開発環境で、プロジェクトのソースをデプロイします。
gcloud run deploy travel-concierge-app --quiet --source . \ --region PROJECT_LOCATION \ --function adk_ai_agent \ --set-env-vars LOCATION=LOCATION,PROJECT_NUMBER=PROJECT_NUMBER,ENGINE_ID=ENGINE_ID,BASE_URL=BASE_URL次のように置き換えます。
- PROJECT_LOCATION は、以前に作成した Cloud Run 関数の場所に置き換えます。
- LOCATION は、前の手順で作成した Google Cloud プロジェクトの場所 PROJECT_LOCATION に置き換えます。
- PROJECT_NUMBER前の手順でデプロイされた Travel Concierge ADK AI エージェントのプロジェクト番号を入力します。
- ENGINE_ID は、前の手順でデプロイした Travel Concierge ADK AI エージェントのエンジン ID に置き換えます。
- BASE_URL は、前にコピーしたエンドポイント URL に置き換えます。
Apps Script
Apps Script プロジェクトを作成し、デプロイした Travel Concierge ADK AI エージェントを使用するように構成するには:
次のボタンをクリックして、Travel Concierge ADK AI Agent Apps Script プロジェクトを開きます。
プロジェクトを開く[ 概要]、[
コピーを作成] の順にクリックします。
Apps Script プロジェクトのコピーに名前を付けます。
- [Travel Concierge ADK AI エージェントのコピー] をクリックします。
- [プロジェクトのタイトル] に「
Travel Concierge ADK AI Agent」と入力します。 - [名前を変更] をクリックします。
Apps Script プロジェクトで、
エディタファイルを移動する
VertexAi.gsファイルの上までAgentHandler.gsファイルアクションを使用するファイルを上に移動。Apps Script プロジェクトで、
プロジェクト設定、 クリックスクリプトのプロパティを編集するをクリックし、スクリプトプロパティを追加する次のスクリプト プロパティを追加します。
ENGINE_IDは、前の手順でデプロイされた Travel Concierge ADK AI エージェントのエンジン ID(ENGINE_ID)に置き換えます。LOCATIONは、前の手順で作成した Google Cloud プロジェクトの場所 PROJECT_LOCATION に置き換えます。PROJECT_NUMBER(前の手順でデプロイした Travel Concierge ADK AI エージェントのプロジェクト番号 PROJECT_NUMBER)。SERVICE_ACCOUNT_KEYは、前の手順でダウンロードしたサービス アカウントの JSON キー({ ... }など)に置き換えます。[スクリプトのプロパティを保存] をクリックします。
Apps Script プロジェクトで、
[プロジェクトの設定] をクリックします。
[Google Cloud Platform(GCP)プロジェクト] で、[プロジェクトを変更] をクリックします。
[GCP プロジェクト番号] に、前の手順でデプロイした Travel Concierge ADK AI エージェントのプロジェクト番号 PROJECT_NUMBER を貼り付けます。
[プロジェクトを設定] をクリックします。これで、Cloud プロジェクトと Apps Script プロジェクトが接続されました。
Gmail、カレンダー、ドライブ、ドキュメント、スプレッドシート、スライドにデプロイ
Python
Google Workspace アドオン デプロイメントを使用して、サンプル プロジェクトをすべての Google Workspace アプリケーション(Google Chat を除く)にインストールし、テストを有効にします。
好みのローカル開発環境でファイルを開きます
deployment.jsonプロジェクトのコードソースから、$BASE_URLの価値を持つBASE_URL、エンドポイント URL前の手順でコピーしたもの。travel-concierge-addonという名前の Google Workspace アドオン デプロイメントを作成します。gcloud workspace-add-ons deployments create travel-concierge-addon \ --deployment-file=deployment.jsonGoogle Workspace アドオンのデプロイメントをインストールします。
gcloud workspace-add-ons deployments install travel-concierge-addon
Apps Script
テストを有効にするには、すべての Google Workspace アプリケーション(Google Chat を除く)に Apps Script プロジェクトをインストールします。
- Apps Script プロジェクトで、[デプロイ] > [デプロイをテスト] をクリックし、[インストール] をクリックします。
アドオンは、Google Workspace アプリケーションのサイドバーからアクセスできるようになりました。
Chat にデプロイする
Python
テストを有効にするには、エンドポイント URL を使用してサンプル プロジェクトを Chat にインストールします。
の中でコンソール、 検索する
Google Chat API、 クリックGoogle チャット API 、 それから管理、 そして構成。チャット アプリを設定します。
- [アプリ名] フィールドに「
Travel ADK AI Agent」と入力します。 - [アバターの URL] フィールドに「
https://goo.gle/3SfMkjb」と入力します。 - [説明] フィールドに「
Travel ADK AI Agent」と入力します。 - [接続設定] で、[HTTP エンドポイント URL] を選択します。
- [トリガー] で、[すべてのトリガーに共通の HTTP エンドポイント URL を使用する] を選択します。
- の中でHTTP エンドポイント URLフィールドに貼り付けますエンドポイント URL以前コピーしたものBASE_URL。
- 完全に実装された Chat 用アプリが使用するクイック コマンドを登録します。
- [コマンド] で、[コマンドを追加] をクリックします。
- [コマンド ID] に「
1」と入力します。 - [説明] に「
Reset session」と入力します。 - [コマンドの種類] で [クイック コマンド] を選択します。
- [名前] に「
Reset session」と入力します。 - [完了] をクリックします。クイックコマンドが登録され、リスト表示されます。
- [公開設定] で [この Chat アプリを Workspace ドメイン内の特定のユーザーとグループに公開する] を選択し、メールアドレスを入力します。
- [ログ] で、[Logging にエラーを記録する] を選択します。
- [保存] をクリックします。
- [アプリ名] フィールドに「
Apps Script
テストを有効にするには、ヘッド デプロイメント ID を使用して Apps Script プロジェクトを Chat にインストールします。
Apps Script プロジェクトで、[デプロイ] > [デプロイをテスト] をクリックし、[ヘッドデプロイ ID] の下の
[コピー] をクリックします。
の中でコンソール、 検索する
Google Chat API、 クリックGoogle チャット API 、 それから管理、 そして構成。チャット アプリを設定します。
- [アプリ名] フィールドに「
Travel ADK AI Agent」と入力します。 - [アバターの URL] フィールドに「
https://goo.gle/3SfMkjb」と入力します。 - [説明] フィールドに「
Travel ADK AI Agent」と入力します。 - [接続設定] で [Apps Script] を選択します。
- [デプロイメント ID] フィールドに、前にコピーした [ヘッド デプロイメント ID] を貼り付けます。
- 完全に実装されたチャットアプリが使用するクイック コマンドを登録します:
- [コマンド] で、[コマンドを追加] をクリックします。
- [コマンド ID] に「
1」と入力します。 - [説明] に「
Reset session」と入力します。 - [コマンドの種類] で [クイック コマンド] を選択します。
- [名前] に「
Reset session」と入力します。 - [完了] をクリックします。クイックコマンドが登録され、リスト表示されます。
- [公開設定] で [この Chat アプリを Workspace ドメイン内の特定のユーザーとグループに公開する] を選択し、メールアドレスを入力します。
- [ログ] で、[Logging にエラーを記録する] を選択します。
- [保存] をクリックします。
- [アプリ名] フィールドに「
アプリは Google チャットからアクセスできるようになりました。
Google Chat を開きます。
チャット DM スペースを作成します。
- クリック 新しいチャット。
- 検索でアプリ
Travel ADK AI Agentを入力して選択します。 - の中で
Install appダイアログでクリックアプリをインストール。 - その
Install appダイアログが閉じ、新しく作成されたチャット DM スペースが選択されます。
Chat アプリでメッセージに返信できるようになりました。
エージェントをテストする
Gmail を起動します。
次のメールを自分宛に送信します。
- 件名:
You need to travel to Paris - 体:
Please be there between 11/25/2025 and 11/30/2025!
- 件名:
サイドバーから Travel ADK AI Agent アドオンを開きます。
[権限を付与] をクリックして、アドオンの設定を完了します。
エージェントへの次のリクエストを設定したら、[送信] をクリックします。
- メッセージ:
Please help me plan this travel! - コンテキスト: [現在のメール] を選択します。
サイドバーはエージェントの応答で更新されます。

- メッセージ:
[チャットを開く] をクリックすると、チャット DM スペースにリダイレクトされます。
[+] > [セッションをリセット] をクリックします。
完了を確認する新しいメッセージが届きます。
OK, let's start from the beginning, what can I help you with?メッセージを送信
Give me ideas。エージェントの応答を含む新しいメッセージを受信します。

メッセージを送信
I want to go there!任意の場所の写真をアップロードした後、エッフェル塔。エージェントの応答を含む新しいメッセージを受信します。

制限事項
HTTP
Chat 以外の Google Workspace アプリケーションでは、AI エージェントに次の制限があります。
同期的です: サイドバーはユーザー操作に応じてのみ更新されるため、AI エージェントの応答は完全に完了した後にのみ表示されます(ストリーミングなし)。
タイムアウトすることがある: サイドバーの更新が完了するまでに数分以上かかると、タイムアウトします。
これらの制限はチャットには存在しません。
Apps Script
すべての Google Workspace アプリケーションでは、AI エージェントが UrlFetchApp を使用して Vertex AI REST API を呼び出すため、次の制限が発生します。
同期: AI エージェントのレスポンスは、完全に完了した後にのみ返されます(ストリーミングなし)。
タイムアウトになる場合があります: AI エージェントは、完了までにおよそ 1 分以上かかるとタイムアウトを要求します。
カスタマイズ
このソリューションは、Vertex AI Agent Engine でホストされている ADK AI エージェント、Google Workspace アプリケーション UI のサブセット、および Travel Concierge サンプルのレスポンスに固有のレスポンス レンダリングをサポートします。このソリューションは拡張可能なフレームワークを使用するため、次のファイルを変更してカスタマイズできます。
Python
main.py: メイン UI とユーザー インタラクションのロジック(Google Workspace イベント ハンドラ)を定義します。典型的な拡張機能は、Gmail アプリケーションで Gmail メッセージに対して行われるのと同様に、ドライブ アプリケーションのコンテキスト機能としてドライブ ドキュメントを有効にすることです。
vertex_ai.py: AI エージェントのセッション、レスポンス、エラーを管理し、エージェントのインタラクションとレスポンスのレンダリングをサポートするために実装する Vertex AI 固有のインターフェースを定義します。 典型的な拡張機能としては、個別のユーザー会話のためのマルチセッションのサポートや、その他の AI エージェント管理プラットフォームの追加などが挙げられます。
agent_handler.py: Chat アプリケーションと Chat 以外のアプリケーションの特定のケースで、vertex_ai.py で定義された Vertex AI 固有のインターフェースを実装します。一般的な拡張機能としては、ユーザーが AI エージェントの回答に関するフィードバックを送信するためのボタンを追加することが考えられます。
google_workspace.py: API 呼び出しを使用して、AI 以外のエージェント管理プラットフォームのインタラクションを実装します。このサンプルでは、Google Workspace API のみを使用してコンテキストの詳細を収集し、アクションを実行します。一般的な拡張機能としては、Google カレンダーや顧客管理(CRM)からビジネスデータを取得する関数を追加するものが挙げられます。
travel_agent_ui_render.gs: サブエージェントと Workspace アプリケーションの Travel Concierge 固有のレスポンス レンダリングを実装します。一般的な拡張機能としては、新しいレスポンス レンダリングのサポートを追加して、フライト オプションや他の AI エージェントをグラフィカルに表示することが考えられます。
Apps Script
Code.gs: メイン UI とユーザー インタラクション ロジック(Google Workspace イベント ハンドラ)を定義します。 典型的な拡張機能は、Gmail アプリケーションで Gmail メッセージに対して行われるのと同様に、ドライブ アプリケーションのコンテキスト機能としてドライブ ドキュメントを有効にすることです。
VertexAi.gs: AI エージェントのセッション、レスポンス、エラーを管理し、エージェントのインタラクションとレスポンスのレンダリングをサポートするために実装する Vertex AI 固有のインターフェースを定義します。 一般的な拡張機能としては、個別のユーザー会話や他の AI エージェント管理プラットフォームのマルチセッションのサポートを追加することが挙げられます。
AgentHandler.gs: チャット アプリケーションとチャット以外のアプリケーションの特定のケースで、VertexAi.gs で定義された Vertex AI 固有のインターフェースを実装します。典型的な拡張機能としては、ユーザーが AI エージェントの応答に関するフィードバックを送信するためのボタンを追加することが挙げられます。
GoogleWorkspace.gs: API 呼び出しを使用して、AI 以外のエージェント管理プラットフォームのインタラクションを実装します。このサンプルでは、Google Workspace API のみを使用してコンテキストの詳細を収集し、アクションを実行します。一般的な拡張機能としては、Google カレンダーや顧客管理(CRM)からビジネスデータを取得する関数を追加するものが挙げられます。
TravelAgentUiRender.gs: サブエージェントと Workspace アプリケーションの Travel Concierge 固有のレスポンス レンダリングを実装します。一般的な拡張機能としては、新しいレスポンス レンダリングのサポートを追加して、フライト オプションや他の AI エージェントをグラフィカルに表示することが考えられます。
クリーンアップ
このチュートリアルで使用したリソースに対して Google Cloud アカウントに料金が発生しないようにするには、Cloud プロジェクトを削除することをおすすめします。
- Google Cloud コンソールで、[リソースの管理] ページに移動します。クリックメニュー > IAM と管理者 > リソースの管理。
- プロジェクトリストで、削除したいプロジェクトを選択し、クリックします。消去 。
- ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。
関連トピック
- ADK AI エージェントと Gemini モデルを使用してステートメントのファクト チェックを行う
- チャットアプリに基本的な AI コンセプトを統合する
- Apps Script を使用して Chat アプリを Google Workspace アドオンとして構築する