13
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

今回は、Difyの「パラメータ抽出ノード」 を使って、会議メモから自動で必要情報を抜き出し、顧客向けのメールを作成するアプリを作ってみます。

例として作るのは、「会議メモ → 情報抽出 → フォローアップメール作成」 までをワンストップで行うアプリです。
会議メモを入力すると、顧客名・予算・要望内容などを自動で整理し、そのまま送れるメール案を生成してくれます。

手順

0. 全体の流れ

今回作るフローは以下のとおりです。

  1. 会議メモを入力(開始ノード)
  2. 必要な情報を抽出(パラメータ抽出ノード)
  3. 抽出結果からメール文面を生成(LLMノード)
  4. 結果を画面に表示(終了ノード)

image.png

1. 開始ノード:会議メモの入力欄を作る

まずはユーザーが会議メモを入力できるようにします。

  • フィールドタイプ:段落
  • 変数名:query
  • ラベル名:会議メモ
    image.png

2. パラメータ抽出ノード:必要情報を整理

次に、会議メモから必要情報(顧客名・予算・要望内容・次のアクション)を抽出します。
抽出したい情報の形式をできるだけ具体的に指示します。

image.png

指示:

会議のメモから、顧客にメールを作成するために、以下の情報を抽出してください。

- customer: 顧客名(会社名や担当者名など)
- budget: 予算(数値のみ)
- item: 希望商品やサービスの名称や内容
- next_action: 次回のアクション内容(例:来週に再提案、日程調整、資料送付など)

一度このノードだけでテストしてみます。

入力:

田中さん(山田商事):
・9月中にPC5台ほしい
・1台10万以内
・メーカー指定なし
→ 来週中に提案送る、木曜か金曜に次の打ち合わせ(Zoom)

image.png

出力:

  "customer": "田中さん(山田商事)",
  "budget": 100000,
  "item": "PC 5台",
  "next_action": "来週中に提案を送付、木曜か金曜に次の打ち合わせ(Zoom)"

3. LLMノード:メール文面を生成

ここでは抽出結果を使ってメールの文章を作ります。
今回はOCI Generative AIのCohere Command-Rを使用しましたが、お好きなモデルでOKです。

  • システムプロンプトユーザープロンプトで、パラメータ抽出ノードの変数を埋め込みます。
  • 日付を絶対日付に変換するルールや、次回日程候補を箇条書きで出す条件なども加えています。

 image.png

プロンプト例:

SYSTEM:
あなたは優秀なビジネスマンです。{{パラメータ抽出/.next_action#}}に向けて、顧客への丁寧なメールを作成します。
USER:
# 指示
以下の抽出結果をもとに、顧客に送るフォローアップメールを1通作成してください。  
メールはビジネス用途を想定し、丁寧な敬語表現を用いて自然な日本語で記述してください。  
相手に失礼のないよう、誠実で読みやすいトーンで書いてください。

## 条件
- あなたは、オラエレクトロンの高木です。冒頭に名乗ってください。
- {{パラメータ抽出/.customer#}}の社名と名前を充てなにしてください。
- 挨拶文、お礼、要望内容の確認、次の対応予定、締めの言葉を含めてください。
- {{パラメータ抽出/.customer#}}{{パラメータ抽出/.item#}}{{パラメータ抽出/.next_action#}}の情報から簡単に打ち合わせのメモを書いてください。
- {{パラメータ抽出/.next_action#}}に「来週木曜日」や「今週中に」などの**相対的な日付表現**が含まれている場合は、絶対日付(MM月DD日)に変換して記載してください。
- {{パラメータ抽出/.next_action#}} に「次回打ち合わせの日程調整をする」旨が含まれている場合は、こちらからいくつか候補日時を箇条書きで挙げてください

## 形式
件名:
文面案:

4. 終了ノード:メール案を表示

最後に、生成されたメール案を画面に表示します。

image.png

動作例:試してみましょう!

簡単なメモに基づいて、顧客に送付する用のそれらしいメールの文面案を作成してくれました。
細かいところは人間の目で修正が必要だとしても一から作るよりも楽にメール作成できるのではないでしょうか。

入力したメモ:

田中さん(山田商事):
・9月中にPC5台ほしい
・1台10万以内
・メーカー指定なし
→ 来週中に提案送る、木曜か金曜に次の打ち合わせ(Zoom)

出力結果:

件名:オラエレクトロンからのご連絡と今後の予定について

文面案:
山田商事の田中様
オラエレクトロンの高木と申します。

先日は、弊社製品についてのお問い合わせをいただき、誠にありがとうございました。貴重なお時間を割いてご検討いただき、大変感謝しております。

田中様よりお伺いしたPC 5台分のご提案につきまして、来週の8月15日(火)までに詳細な提案書をお送りさせていただきます。また、打ち合わせのスケジュールですが、ご都合の良い日時をご検討いただき、8月18日(木)もしくは19日(金)のいずれかでございましたら、弊社よりZoomでの打ち合わせをご提案させていただきます。

ご検討いただけると幸いです。

今後の対応予定といたしまして、以下の日程を候補としてご検討ください。

8月18日(木) 10:00 - 11:00
8月18日(木) 14:00 - 15:00
8月19日(金) 10:00 - 11:00
8月19日(金) 13:00 - 14:00
ご多忙中、恐れ入りますが、ご検討のほどよろしくお願い申し上げます。

今後とも、何卒よろしくお願い申し上げます。

オラエレクトロン
高木

image.png

おわりに

Difyのパラメータ抽出ノードを使うことで、会議メモから必要な情報を構造化し、そのままメール文面まで自動生成できました。
業務フローに組み込めば、フォローアップ作業の手間を大幅に減らせます。
応用すれば、商談記録から提案書の下書きや、議事録からタスク管理表の自動作成などにも使えそうです。

13
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?