里程碑
我的 AI 小精靈|法文生活學習助手
Charity @charity發布於
一、專案背景與動機
目前在法國讀書,但法文還在 A1–A2 的學習階段,因此日常生活中常常會遇到看不懂的商品標籤、菜單、交通資訊或法文公告。
雖然可以直接詢問 AI,但我每次問完問題、得到答案後,往往就結束了。即使當下學到新的單字或用法,也很容易忘記,沒有真正累積下來。
因此,我希望製作一個結合「生活問題解決」與「法文學習」的 LINE AI 助手,讓每天遇到的問題都能成為學習素材。
二、想解決的問題
- 即時理解: 遇到不懂的法文或生活資訊,可以快速獲得解答。
- 自然學習: AI 解決問題後,順便補充少量相關法文單字、文法與生活例句。
- 累積知識: 自動記錄每次提問的學習重點,而不是問完就忘記。
- 每日複習: 將當天透過文字或圖片學到的內容整理成容易閱讀的複習卡片。
我的想法是:先解決生活問題,再從問題中學習,最後透過複習累積法文知識。
三、實作方式
我使用 n8n 建立自動化流程,並透過 LINE Messaging API 串接自己的 AI 小精靈。
- Webhook: 接收使用者從 LINE 傳來的訊息。
- Switch: 判斷訊息類型,將文字與圖片分開處理。
- HTTP Request: 透過 LINE Get content API 下載圖片。
- AI Agent: 理解文字或圖片,先回答生活問題,再補充適合 A1–A2 程度的法文知識。
- Code + Data Table: 整理並儲存學習主題、核心單字及實用補充,避免保存過長的 AI 回答。
- 每日複習: 透過指令查詢 Data Table 的當日紀錄,再使用 LINE Flex Message 製作可以滑動的學習卡片。
過程中也使用 AI 協助撰寫 Prompt、調整 JavaScript、除錯與設計卡片介面。
四、實作過程中的挑戰
1. 圖片辨識與資料傳遞
這是我花最多時間解決的問題。一開始 LINE 可以正常接收文字,但圖片傳給 AI 後,AI 卻表示沒有收到圖片。
後來與 AI 討論後才知道,LINE Webhook 傳來的是圖片的 Message ID,必須再透過 Get content API 下載圖片檔案,並將 Binary 資料正確傳給支援圖片辨識的 AI 模型。
2. 測試成功,但正式執行失敗
我遇到逐個執行 Node 都正常,但 LINE 實際使用時卻失敗的情況。後來發現,修改 Workflow 後需要重新 Publish,正式版本才會套用新的流程。
這也讓我學會使用 Executions 查看每個節點的執行情況,而不只是看最後有沒有收到 LINE 訊息。
3. JSON 格式與資料儲存
AI 回答可能包含換行或不同資料格式,曾導致 HTTP Request 和 Data Table 發生錯誤。
透過這次實作,我更理解 JSON、Array、Object,以及 JSON.stringify()、JSON.parse() 的用途,也學會利用 Code Node 整理資料。
4. AI Memory 與資料儲存方式的選擇
一開始我想使用 AI Agent 的 Memory 功能,讓 AI 記住每天問過的問題,但又擔心對話紀錄太長會增加 Token 的消耗。
後來跟 AI 討論後,發現其實可以直接使用 n8n 的 Data Table,把每次問答中重要的單字、主題和法文知識整理後存進表格。等到需要每日複習時,再讀取當天的紀錄就好。
這也讓我更清楚,不同功能不一定都需要交給 AI 處理,還是要先想清楚自己的需求,再選擇適合的工具。
五、成果與心得
目前已經完成 LINE 文字與圖片的 AI 分析、法文知識補充,以及使用 Data Table 自動儲存學習紀錄,也嘗試製作了每日複習的 Flex Message 卡片。
這次實作讓我覺得,最重要的其實是先想清楚整個 Workflow 的邏輯。例如使用者傳送訊息後,資料會經過哪些步驟、每個節點要負責什麼,以及需要用什麼工具才能達到想要的效果。
實際操作時也遇到蠻多問題,有時候一個地方卡住,就要回頭檢查每個節點的設定和輸出,一步一步找出問題,再想辦法解決。過程雖然花了不少時間,但也讓我更理解整個流程是怎麼運作的。
我覺得上哲團長的課程提供了一個很好的起點,讓我先認識 n8n 的基本操作和串接方式。但當自己開始想加入更多功能時,還是需要靠自己慢慢摸索,包括查閱文件、和 AI 討論、反覆測試,再把不同的功能組合起來。
雖然中間常常遇到錯誤,有時候光是一個節點就要研究很久,但當原本想像的功能真的一步一步做出來時,還是蠻有成就感的。我也覺得這樣邊做邊學、自己探索的過程其實蠻好玩的。
2 個愛心0 則留言
登入並驗證手機後就能留言。登入