このソリューションでは、Vertex AI と Gemini を使用して Gmail メッセージを分析し、感情に基づいてラベル付けします。
コーディング レベル: 中級
所要時間: 30 分
プロジェクト タイプ: Google Workspace アドオン
- 
          図 1: 感情分析アドオンは、Gmail にサイドバーを表示します。ユーザーは Gemini にプロンプトを送信して、感情に基づいてメッセージを分析し、ラベルを適用できます。 
- 
          図 2: アドオンが Gmail メッセージに「中立的なトーン 😐」というラベルを付けます。 
- 
          図 3: アドオンが Gmail メッセージに「HAPPY TONE 😊」というラベルを付けている。 
- 
          図 4: アドオンが Gmail メッセージに「UPSET TONE 😡」というラベルを付けています。 
目標
- ソリューションの機能を理解します。
- ソリューション内で Google サービスが何を行うかを理解する。
- 環境を設定します。
- Google Apps Script プロジェクトを設定します。
- スクリプトを実行します。
このソリューションについて

 
このソリューションは、Gmail メッセージの感情に基づいてラベルを適用する Google Workspace アドオンです。メッセージの内容を分析するために、アドオンは Vertex AI を使用して Gemini 2.5 Flash モデルにプロンプトを送信し、次のいずれかの感情を返します。
- 好ましい
- 陰性
- どちらとも言えない
Gemini からの回答に基づいて、アドオンは対応する Gmail ラベルをメッセージに適用します。
Vertex AI API へのリクエストを制限するため、このアドオンは Gmail ユーザーの受信トレイにある最新の 10 件のメッセージのみを分析してラベルを適用します。割り当てと上限の詳細については、Vertex AI のドキュメントをご覧ください。
仕組み
このソリューションは Google Apps Script で構築されており、次の Google サービスとプロダクトを使用します。
- Vertex AI API - Gemini 2.5 Flash モデルに Gmail メッセージのコンテンツを分析して感情を特定するよう指示します。
- Apps Script サービス: - Gmail サービス - Gmail メッセージのラベルを取得して適用します。必要に応じて、アドオンをテストするためのサンプル メッセージを作成します。
- カードサービス - Gmail のサイドバーに表示されるアドオンのユーザー インターフェースを作成します。
- Url Fetch サービス - 感情分析のために Vertex AI API に接続します。
- スクリプト サービス - Vertex AI API を呼び出すために、getOAuthTokenメソッドを使用してアドオンの OAuth 2.0 アクセス トークンを取得します。
 
前提条件
- 課金が有効になっている Google Cloud プロジェクト。アクセス権があるかどうかを確認するには、課金を有効にするために必要な権限をご覧ください。
環境の設定
このセクションでは、Google Cloud コンソールと Apps Script で環境を構成して設定する方法について説明します。
Google Cloud コンソールで Cloud プロジェクトを構成する
このセクションでは、Cloud プロジェクトで Vertex AI API を有効にして OAuth 同意画面を構成する方法について説明します。
Vertex AI API を有効にする
- Google Cloud コンソールで、Google Cloud プロジェクトを開き、Vertex AI API を有効にします。 
- 正しい Cloud プロジェクトで API を有効にしていることを確認し、[次へ] をクリックします。 
- 正しい API を有効にしていることを確認し、[有効にする] をクリックします。 
OAuth 同意画面を構成する
Google Workspace アドオンには同意画面の構成が必要です。アドオンの OAuth 同意画面を構成すると、Google がユーザーに表示する内容が定義されます。
- Google Cloud コンソールで、メニュー > > [ブランディング] に移動します。
- をすでに構成している場合は、[ブランディング]、[対象ユーザー]、[データアクセス] で次の OAuth 同意画面の設定を構成できます。[ まだ設定されていません] というメッセージが表示された場合は、[使ってみる] をクリックします。
- [アプリ情報] の [アプリ名] に、アプリの名前を入力します。
- [ユーザー サポートメール] で、ユーザーが同意について問い合わせる際に使用するサポートのメールアドレスを選択します。
- [続行] をクリックします。
- [対象] で [内部] を選択します。
- [続行] をクリックします。
- [連絡先情報] で、プロジェクトに対する変更の通知を受け取るメールアドレスを入力します。
- [続行] をクリックします。
- [完了] で、Google API サービスのユーザーデータに関するポリシーを確認し、同意する場合は [Google API サービス: ユーザーデータに関するポリシーに同意します] を選択します。
- [続行] をクリックします。
- [作成] をクリックします。
- 現時点では、スコープの追加はスキップできます。今後、Google Workspace 組織外で使用するアプリを作成する場合は、[ユーザータイプ] を [外部] に変更する必要があります。次に、アプリに必要な認可スコープを追加します。詳細については、OAuth 同意画面を構成するの完全なガイドをご覧ください。
Apps Script プロジェクトを作成して設定する
アドオン用の Apps Script プロジェクトを作成して設定するには、次の手順を行います。
- 次のボタンをクリックして、Gemini と Vertex AI を使用した Gmail の感情分析 Apps Script プロジェクトを開きます。 
 Apps Script プロジェクトを開く
- [概要] をクリックします。 
- 概要ページで [コピーを作成] - をクリックします。 
- Cloud プロジェクトの番号を取得します。 - Google Cloud コンソールで、メニュー アイコン > [IAM と管理] > [設定] に移動します。
- [プロジェクト番号] フィールドで、値をコピーします。
 
- Cloud プロジェクトを Apps Script プロジェクトに接続します。 - コピーした Apps Script プロジェクトで、[プロジェクトの設定] をクリックします。 
- [Google Cloud Platform(GCP)プロジェクト] で、[プロジェクトを変更] をクリックします。
- [GCP プロジェクト番号] に、Cloud プロジェクト番号を貼り付けます。
- [プロジェクトを設定] をクリックします。
 
- コピーした Apps Script プロジェクトで、[プロジェクトの設定] 
アドオンをテストする
アドオンを試すには、テスト デプロイをインストールしてから、Gmail でアドオンを開きます。
- Apps Script のテスト用デプロイを作成してインストールします。
- コピーした Apps Script プロジェクトで、[エディタ] をクリックします。
- Code.gsファイルを開き、[実行] をクリックします。メッセージが表示されたら、スクリプトを承認します。
- [Deploy](デプロイ)> [Test deployments](テスト デプロイ)をクリックします。
- [インストール] > [完了] をクリックします。
 
- Gmail を起動します。 
- 右側のサイドバーで、アドオン 感情分析 を開きます。 
- メッセージが表示されたら、アドオンを承認します。 
- 省略可: アドオンでテストするメッセージを作成するには、[サンプル メールを生成] をクリックします。受信トレイに 3 件のメッセージが表示されます。表示されない場合は、ページを更新してください。 
- ラベルを追加するには、[メールを分析] をクリックします。 
アドオンは受信トレイの最新の 10 件のメッセージを確認し、メッセージの内容に基づいて次のいずれかのラベルを適用します。
- HAPPY TONE 😊
- ニュートラルなトーン 😐
- UPSET TONE 😡
コードを確認する
このソリューションの Apps Script コードを確認します。
ソースコードを表示
コード.gs
Cards.gs
Gmail.gs
Vertex.gs
appsscript.json
クリーンアップ
このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、Cloud プロジェクトを削除することをおすすめします。
- Google Cloud コンソールで、[リソースの管理] ページに移動します。メニュー アイコン > [IAM と管理] > [リソースの管理] をクリックします。
- プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
- ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。