iT邦幫忙

2025 iThome 鐵人賽

DAY 27
0
生成式 AI

從零開始 : 學習運用 n8n 與 Dify 的 AI 自動化實戰系列 第 27

Day 27 : Dify 智能回覆強化 — 讓 AI 自動生成更自然的郵件內容

  • 分享至 

  • xImage
  •  

一、前言

經過前幾天的練習,我們已經能透過 n8n 自動寄出課程提醒、天氣通知、新聞摘要等郵件。
但這些內容往往是固定模板,缺乏自然語氣與人情味。

今天,我想進一步挑戰 —— 讓 Dify 幫我「潤飾郵件內容」,
讓每天收到的信像是由貼心的 AI 助理親手撰寫,帶著問候與提醒。

二、今日目標

我們要打造一個能「自動生成自然郵件」的 AI 自動化流程,
讓 Dify 負責將系統資訊(天氣、課程、提醒)轉換成自然語言郵件,
最後由 n8n 寄出。

最終流程如下:

Schedule Trigger → HTTP Request(天氣 API)
→ HTTP Request(課程提醒資料) → Set(整合文字)
→ HTTP Request(Dify 生成自然郵件) → Gmail(寄出)

三、節點設計與詳細設定

1. Schedule Trigger 節點

設定每天固定時間執行(例如早上 7:30):

  • Trigger Interval: Days
  • Days Between Triggers: 1
  • Time: 07:30

每天早上執行一次,寄出當日 AI 智能提醒信。

2. HTTP Request 節點(天氣資訊)

使用 OpenWeatherMap API:

  • Method: GET

  • URL:

    https://api.openweathermap.org/data/2.5/weather?q=Taipei&appid=你的API_KEY&units=metric&lang=zh_tw
    
  • 輸出範例:

    {
      "weather": [{ "description": "晴朗" }],
      "main": { "temp": 27 }
    }
    

3. HTTP Request 或 Set 節點(課程提醒)

如果目前還沒有課程 API,可以使用 Set 節點手動模擬資料:

{
  "course": "人工智慧導論",
  "deadline": "今晚 11:59"
}

4. Set 節點(整合要給 AI 的文字)

將前面兩個節點的輸出整合成一句話:

{
  "text": "今天台北天氣晴朗,氣溫 27 度。你今天有人工智慧導論課,作業期限是今晚 11:59。"
}

這段文字會成為 Dify 的輸入內容。

5. HTTP Request 節點(Dify)

這是今天的重點,讓 Dify 將上述文字「轉寫」成自然郵件。

  • Method: POST

  • URL: https://api.dify.ai/v1/chat-messages

  • Headers:

    Authorization: Bearer 你的_Dify_API_KEY
    Content-Type: application/json
    
  • Body (JSON):

    {
      "inputs": {},
      "query": "請用自然、親切的語氣幫我撰寫一封提醒郵件:{{$json['text']}}",
      "response_mode": "blocking",
      "user": "daily-reminder"
    }
    
  • 成功輸出範例:

    {
      "answer": "早安!今天台北的天氣是晴朗的 27 度,別忘了帶水出門喔~另外你今天有人工智慧導論課,作業要在今晚前繳交!"
    }
    

6. Gmail 節點

將 Dify 回傳的自然語氣郵件寄出。

  • To: 你的信箱
  • Subject: 每日 AI 智能提醒
  • Body: {{ $json["answer"] }}

四、成果展示

執行後,Gmail 會收到一封由 Dify 生成的自然郵件:

早安!今天台北的天氣是晴朗的 27 度,別忘了帶水出門喔~
今天有人工智慧導論課,作業記得在今晚 11:59 前交出來,祝你學習愉快!


上一篇
Day 26 : 解析 n8n 與 Dify 打造 AI 事件驅動式架構
下一篇
Day 28 : 打造屬於自己的 AI 智慧早報 ( 多來源整合 )
系列文
從零開始 : 學習運用 n8n 與 Dify 的 AI 自動化實戰30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言