里程碑
LINE 智慧助理「小霜」---- 提醒你一天行程的小秘書
幽理 @yoli發布於
一、 動機
在日常生活中,零碎的待辦事項與臨時安排經常讓人措手不及。雖然市面上有許多成熟的提醒與行事曆 App,但往往需要使用者停下手邊工作,打開特定應用程式、手動點選日期與時間欄位,繁瑣的步驟大幅降低了隨手記錄的意願。同時,許多市面上的 AI 聊天機器人多半停留在「一問一答」的被動階段,缺乏與現實生活排程的主動互動。
因此,我希望利用台灣普及率最高的通訊軟體 LINE 作為入口,打造一隻兼具溫暖陪伴與實用秘書功能的 AI 小精靈——「小霜」。使用者只需傳送一句隨意口語,例如「明天早上9點提醒我去郵局」或「半小時後叫我喝水」,AI 就能聽懂含義並在指定時間主動叮咚提醒,實現真正零負擔的生活助理。
二、 製作過程
為了避免從零搭建繁重的後端伺服器,本專案採用 n8n 自動化工作流引擎 作為中樞,串接 LINE Messaging API、Google Gemini 大語言模型 以及 Google Sheets。
入口解析與角色設定:透過 Webhook 接收 LINE 傳來的訊息事件,先過濾出純文字訊息,再將內容交由 AI Agent 處理。我們替小霜注入了清晰的 System Message,賦予她溫柔、聰明且具幽默感的說話風格。
工具調用(Function Calling)與雲端登記:當 AI 偵測到使用者的語句包含提醒意圖時,會動態結合當前台北時間,精確推算目標時間戳記,並調用外掛的 Google Sheets 工具,將使用者的 LINE ID、提醒時間與待辦內容結構化地記錄到雲端試算表。
主動推播(Push API)機制:LINE 預設的 Reply Token 有 60 秒的使用時限,無法延遲提醒。因此我們進一步串接 LINE Push Message API,讓系統能在排程時間抵達時,直接拿使用者的 User ID 主動推播訊息,達成真正的定時鬧鐘功能。
三、 遇到的困難及應對
在實作過程中,我踩過了幾次關鍵的技術坑洞,但也從中累積了寶貴的排查經驗。
問題一:AI 呼叫工具陷入死循環,延遲長達 6~8 分鐘。測試初期,小霜常常轉圈圈轉了數分鐘才回覆,導致 LINE 的回覆權限直接過期失效。
應對:深入檢視 n8n 的 Executions 執行日誌,發現模型在進行 Function Calling 時對工具用途理解發散,不斷嘗試重複運算。我將模型切換為輕量高頻的 gemini-3.5-flash-lite,並在 AI Agent 中將「最大迭代次數(Max Iterations)」強制限制為 3 步,成功將回應時間從近 8 分鐘大幅縮減至 3~5 秒的即時水準。
問題二:被動回覆與主動推播的架構矛盾。一開始誤以為能直接靠原生的 Webhook 回傳提醒,後來才理解 LINE 的架構分成了「使用者發話觸發的被動 Reply」與「系統自主發起的推播 Push」。
應對:重新梳理工作流架構,將「記錄事項」與「執行通知」的資料流解耦,改以使用者的專屬 ID 走 Push API 發起主動推播。
問題三:雲端排程輪詢帶來的額度危機。若使用排程每分鐘定期檢查試算表,單日就會產生 1,440 次執行紀錄,雲端免費的 1,000 次額度在一天內就會見底。
應對:透過評估事件睡眠喚醒機制(Wait 節點)與輪詢間隔調優,在即時性與執行次數之間取得最佳平衡,避免了無謂的系統開銷。
四、 心得
這次專案讓我跳脫了單純「跟模型聊天」的表層應用,真正跨入將 LLM 作為核心大腦、結合外部工具與 API 的系統整合實戰。從最開始遇到連線逾時、參數報錯的挫折,到學會打開執行日誌逐步追蹤封包、調校模型參數,最後親眼看到手機在兩分鐘後準確跳出「⏰ 叮咚!小霜提醒時間到囉!」,那一刻獲得的成就感無可比擬。這不僅是一次將生成式 AI 落地到日常生活痛點的完整驗證,更讓我紮實掌握了自動化管線與工程排查的核心思維。
0 個愛心0 則留言
登入並驗證手機後就能留言。登入