このページの本文へ

前へ 1 2 次へ

松本典子の「はじめよう!Azure Logic Apps/Power Automateでノーコード/ローコード」 第39回

打ち合わせの日程メールを生成AIに読ませ、自動でスケジュール登録してもらう

面倒なカレンダー登録作業を生成AIで自動化するワークフローを作ろう

2024年07月04日 11時00分更新

文● 松本典子 編集● 大塚/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

3-1. アクションの設定:GPT でプロンプトを使用してテキストを作成する

 続いて、作成したカスタムプロンプトで生成AI(GPTモデル)にメール本文を読み取らせ、必要な情報を抽出するアクションの設定です。

アクションの設定:GPTでプロンプトを使用してテキストを作成する

 検索窓に「GPT」と入力すると「AI Builder」コネクタが表示されるので選択します。アクション一覧から「GPT でプロンプトを使用してテキストを作成する」をクリックします。

 (1)プロンプト:「1. カスタムプロンプトの作成」で作成した「打ち合わせ日時抽出」を選択
 (2)メール:Outlookの動的なコンテンツ「本文」を選択

3-2. アクションの設定:イベントの作成 (V4)

 カスタムプロンプトで抽出した打ち合わせの詳細情報を使い、Outlookのスケジュールを登録する部分です。

アクションの設定:イベントの作成 (V4)

 検索窓に「Outlook」と入力して「Outlook」コネクタを選択し、アクション一覧から「イベントの作成 (V4)」をクリックします。

 (1)予定表ID:予定を入力したいカレンダー名をプルダウンで選択(今回は「Calendar」)
 (2)件名:「新しいメールが届いたとき (V3)」の動的なコンテンツ「件名」と、「GPT でプロンプトを使用してテキストを作成する」の動的なコンテンツ「送信者」を選択。適宜カッコや「様」を書き加える
 (3)開始時間:次の「式」を入力して、動的なコンテンツ「会議日」と「開始時間」が「2024-07-01T14:00」形式になるよう加工

concat(outputs('GPT_でプロンプトを使用してテキストを作成する')?['body/responsev2/predictionOutput/structuredOutput/_4F1A_8Bc14f465938d530d4cad3f5cb30123430'],'T',outputs('GPT_でプロンプトを使用してテキストを作成する')?['body/responsev2/predictionOutput/structuredOutput/_958B_590957b4266177147a017924badd254e42'])

 (4)終了時間:次の「式」を入力して、動的なコンテンツ「会議日」と「終了時間」が「2024-07-01T14:00」形式になるよう加工

concat(outputs('GPT_でプロンプトを使用してテキストを作成する')?['body/responsev2/predictionOutput/structuredOutput/_4F1A_8Bc14f465938d530d4cad3f5cb30123430'],'T',outputs('GPT_でプロンプトを使用してテキストを作成する')?['body/responsev2/predictionOutput/structuredOutput/_7D42_4E6e542613c83c1fffe3129b5f6e9540ee'])

 (5)タイムゾーン:「(UTC+09:00) Osaka, Sapporo, Tokyo」を選択

アクションの設定:イベントの作成 (V4)

 (6)場所:「詳細オプションを表示する」をクリックし、場所に「GPT でプロンプトを使用してテキストを作成する」の動的なコンテンツ「場所」を設定

3-3. アクションの設定:チャットまたはチャネルでメッセージを投稿する

 Outlookカレンダーへのスケジュール登録が完了したら、Teamsにもその内容を通知します。

アクションの設定:チャットまたはチャネルでメッセージを投稿する

 検索窓に「teams」と入力して「Microsoft Teams」コネクタを選択し、アクション一覧から「チャットまたはチャネルでメッセージを投稿する」をクリックします。

 (1)投稿者:「ユーザー」を選択
 (2)投稿先:「Channel」を選択
 (3)Team:投稿先のチームを選択
 (4)Channel:投稿先のチャネルを選択
 (5)Message:Teamsに投稿する本文。「GPT でプロンプトを使用してテキストを作成する」の動的なコンテンツを利用し、わかりやすいように成形  (6)Subject:Teamsに投稿するメッセージの件名

 以上でワークフローは完成です! 最後は忘れずに、ワークフローの名前を入力して「保存」ボタンをクリックします。

 ただし、今回作成したフローを保存しようとすると、フローチェックに引っかかり「アクション 'GPT でプロンプトを使用してテキストを作成する' の後にコンテンツ承認アクションが存在しません。」という警告が表示されます。

 前回も説明しましたが、生成AIが自動生成するテキストは、しばしば正しくない情報や適切ではない内容を含むことがあります。こうしたリスクを回避するため、Power Automateでは生成AIの出力した内容に対して、人間による「承認」のアクションを入れることが推奨されています。

 今回は「承認」コネクタを設定していませんが、実務で活用する場合は適宜「承認」コネクタを設定してください。

4. 実行結果

 さっそく作成したフローを実行して、Outlookカレンダーに予定が登録されることを確認してみます。

受信メールの内容

 上図のような内容のテストメールを自分宛に送信し、受信しました。メールの送り主は「大分」さんで、打ち合わせの日時や場所の情報が入っています。

Outlookカレンダー

 Outlookカレンダーを確認すると、きちんと予定が入力されていました。スケジュールのタイトルにメールの送り主(今回は「大分さん」)の名前を入れたことで、誰との打ち合わせなのかも分かりやすいですね。

Teamsの投稿

 続いてTeamsを確認すると、こちらにも打ち合わせの件名や送信者、日時、場所を含むメッセージが投稿されています。

最後に

 今回は「AI Builder」コネクタの「カスタムプロンプト」を活用して、受信メールから自動でスケジュール登録を行うワークフローを作成しました。

 GPTモデルの応答は、カスタムプロンプトの指示しだいで大きく変わります。「1. カスタムプロンプトの作成」でご紹介したとおり、プロンプトの入力⇒テスト⇒修正⇒テスト……と、入力したプロンプトの結果が手軽に試せて修正もできる点は良いと思います。また、モデルからの応答(出力)をJSON形式に指定することで、応答の内容が後続のアクションで利用しすくなることも覚えておきましょう。

 今回見てきたとおり、生成AIを活用することで、非定型のメール本文からでも必要な情報を簡単に抽出することができます。もちろん失敗することもありますが、その点を差し引いても便利に使えるのではないでしょうか。ぜひここからアイデアをふくらませて、さまざまな目的で活用してみてください!

前へ 1 2 次へ

カテゴリートップへ

この連載の記事
ピックアップ