フォト

ウェブページ

無料ブログはココログ

MyList

« Fラン大学は人生の終わりか? | トップページ | もう「大卒資格」に価値はない? »

2025年9月 7日 (日)

Copilotで自立型エージェント

Copilot studioで「自立型AIエージェント」を作ってみた。
Ai_20250826182001

Microsoft方言の「自立型AIエージェント」は自ら思考しないし、自ら計画を立てるわけではない。
一般にいうところのRPA level2(AIを使って自動化の範囲を拡張したRPA)だ。

自動化したいタスクは、届いたメールをスパムメールか判定するする処理だ。

動機
Outlookは迷惑メールを自動的に振り分けてくれるのだが、振り分けルールは公開されていない。
推測だが
・SPF,DKIMなどでエラーになっている
・送信元のドメイン、メールアドレスがブラックリストに含まれている
・時間当たりの受信したメールの頻度
・本文に、ブラックリストに含まれるURLが含まれている
・その他、MSの秘伝のレシピ

良くできた?迷惑メールは、振り分けられず受信ボックスに届くので困る。
生成AIを使って、迷惑メールの判定ができたら、迷惑メールフォルダに振り分けることができるし、処理すべきメールを簡単に見つけることができる。

テスト
定期的に送られてくる迷惑メールをサンプルにして、M365 Copilotのチャットでプロンプトを試行錯誤したら、↓のプロンプトで迷惑メール判定されるようになった。

---
以下のメールデータ(タイトル、発信元、本文)から、このメールが迷惑メールか判定してください。
※判定には以下の観点を加えてください。
・本文の具体的な証拠や根拠があるか?
・発信元は信用できるドメインか?

【回答】
判定結果(result)、確度(accuracy)、説明(description)、メッセージID(messageId)、日付(date)、発信元(from)、タイトル(subject)をJSON形式で回答してください。
メール本文を表示する必要はありません。
判定結果:迷惑メールとして判定される場合=true 、迷惑メールとして判定されない場合=false
確度:迷惑メールとして判定される確率を0~100の数値で示す
説明:判定の説明を60字程度で出力。である調を使用
メッセージID:メールデータの internetMessageId を転記。
日付:メールデータのdateを転記。
発信元:メールデータのfromを転記。
タイトル:メールデータのsubjectを転記。

【メールデータ】

{
 "from": "送信元メールアドレス",
 "subject":"タイトル",
 "body":"本文",
 "interMessageId":"メッセージID",
 "date": "日付" 
}
---

回答は↓

---
{
  "result": true,
  "accuracy": 85,
  "description": "本文に具体的根拠が乏しく、発信元ドメインも信頼性が低いため迷惑メールと判定する。",
    :
    :
}
---

同じプロンプトを、Copilot studioの「生成型の回答を作成する」のプロンプトに指定したら、
回答は↓

ーーー
{
  "result": false,
  "accuracy": 70,
  "description": "内容が具体的であり、個人情報が含まれているため",
  :
      :
}
---

う~んなぜ答えが違う??

調べてみたら
Copilot studioはGPT-4-oを使用しているらしく、M365 CopilotチャットはGPT-4-turbotを使っているらしいことが分かった。
なぜ、GPT-4-turbotとGPT-4-oで判定が異なるのか訊いてみたら、

---
  :
  :
迷惑メール判定の曖昧性
迷惑メールの定義は以下のように曖昧で文脈依存です:
• 商業的か?
• 詐欺性があるか?
• 不安を煽っているか?
• 個人情報が過剰か?
GPT-4-turbo はこれらを厳密にチェックする傾向があり、GPT-4o は「人間の善意や困りごと」として解釈する傾向があります
  :
  :
---

らしい。
Copilot studioのモデルを変えることはできないので、プロンプトを試行錯誤する必要がありそうだ。
GPT-4oが指定できる、AIチャットがあると良いのだが、ChatGPT無料版、gemini、copilotでは指定できなかった。
そのうちモデルがGTP-5に変わると解決するような気もする。

一筋縄ではいかないなぁ


プロンプトに↓の判断基準を明記したら、

※以下の基準で厳密に判定してください。
- 詐欺性の有無
- 個人情報の過剰開示
- 不安を煽る表現
- 送信者の信頼性

トリガーがかからなくなった。
試行錯誤した結果、判断基準を削除してプロンプトをシンプルにすると判定制度が向上した。

一筋縄ではいかないなぁぁ


最近の投稿
Yoshiのよしなしごと】【Yoshiのブログ】【よしなしごと】【AI

« Fラン大学は人生の終わりか? | トップページ | もう「大卒資格」に価値はない? »

よしなしごと」カテゴリの記事

AI」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« Fラン大学は人生の終わりか? | トップページ | もう「大卒資格」に価値はない? »