iT邦幫忙

2025 iThome 鐵人賽

DAY 18
0
AI & Data

為你自己學 n8n系列 第 18

[為你自己學 n8n] 第 18 天,我的 Line 機器人會記帳!(下)

  • 分享至 

  • xImage
  •  

這集的篇幅比較長,影片分成兩集

Part 1:
Yes

Part 2:
Yes

影片連結 1/2:https://www.youtube.com/watch?v=7RU20-m4qnM
影片連結 2/2:https://www.youtube.com/watch?v=CqkMDe4aNH4
YouTube 頻道:https://www.youtube.com/c/kaochenlong

在前兩集中,我們已經建立了一個能夠記帳的 Line 聊天機器人。這個機器人可以透過 AI Agent 解析使用者的訊息,將記帳資訊寫入 Google Sheet。但這個設計有個限制:當使用者只是想跟機器人打個招呼或閒聊時,系統就會出現錯誤。

這個問題的根源在於我們的 AI Agent 使用了結構化輸出(Structured Output)。結構化輸出的設計很適合處理固定格式的資料,但對於一般對話來說反而變得綁手綁腳。當使用者輸入「你好」這類閒聊訊息時,AI Agent 無法將其轉換成我們預期的記帳格式,因此產生錯誤。

要怎麼解決呢?也許可以透過多個 AI Agent 一起協作...

解決方案

我們需要在訊息進入主要處理流程之前,先放一隻 AI Agent 負責判斷使用者的意圖:

  1. 記帳:將訊息導向記帳 Agent
  2. 查帳:將訊息導向查帳 Agent
  3. 一般對話:將訊息導向聊天 Agent

每個 Agent 都專注於處理特定類型的任務,這樣就不會互相干擾。

流程

因為流程有點長,建議大家直接跟著 YouTube 影片操作一次,會比文字版本更容易理解。

整個工作流程的設計如下:

Webhook(Line 訊息進入點)
    ↓
資料整理(提取 userId、訊息內容以及 Reply Token)
    ↓
意圖判斷 Agent(判斷使用者想做什麼)
    ↓
Switch 節點(根據意圖分流)
    ├─→ 記帳 Agent + 日期工具 → 產生結構資料 → 寫入 Google Sheet → 回覆訊息
    ├─→ 查帳 Agent + 日期工具 → 使用 Google Sheet 工具 → 回覆訊息
    └─→ 聊天 Agent → 回覆訊息

https://ithelp.ithome.com.tw/upload/images/20251002/20065770ycUsIxCyzP.png

工作流下載:https://gist.github.com/kaochenlong/f0b04732488441c7b99106f6dda23cf3


上一篇
[為你自己學 n8n] 第 17 天,我的 Line 機器人會記帳!(中)
下一篇
[為你自己學 n8n] 第 19 天,n8n 名片王(上)
系列文
為你自己學 n8n21
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
WT
iT邦新手 5 級 ‧ 2025-10-03 23:45:50

龍哥10/3快過了,您的文章是我的精神食糧,千萬不要斷阿~

高見龍 iT邦研究生 3 級 ‧ 2025-10-03 23:46:59 檢舉

影片正在轉檔中 :)

WT iT邦新手 5 級 ‧ 2025-10-03 23:49:56 檢舉

/images/emoticon/emoticon07.gif

我要留言

立即登入留言