Overview Do you often forget to record expenses? 你是不是會常常忘記紀錄花費? Let Spending Tracker Bot help you! 讓 Spending Tracker Bot 來幫你! This AI image/text Spending Tracker LINE Bot Workflow allows you to quickly create a customized spending tracker robot without writing a line of code. At any time, you can speak or send a photo, and the AI will parse it and automatically log the expense to your cloud ledger. 這套 AI 圖片文字記帳 LINE Bot Workflow ,讓你不用寫一行程式碼,就能快速打造一個量身訂製的記帳機器人。無論何時,只需要口述或發送一張照片,AI 就會幫你整理好自動計入雲端帳本 <br /> Preparation ① Enable the Google Sheets API in GCP and complete the OAuth setup ② Create the Google Sheet and populate the field names (Feel free to modify based on your own needs) ③ Configure the Webhook URL in the LINE Developers Console ④ OpenAI API Key ① 在 GCP 啟用 Google Sheets API,並完成 OAuth ② 建立並填好 Google Sheet 欄名 (按照自己的需求做更動) ③ 於 LINE Developers 控制台設定 Webhook URL ④ OpenAI API Key <br /> Node Configurations Webhook Purpose: The URL is used to receive incoming requests from LINE. Configuration: Paste this URL into the Webhook URL field in your LINE Developers Console. 用途: 要接收 Line 的 URL 設定: 將 URL 放到 Line Webhook URL Switch based on Expense Type & Set/Https Purpose: To distinguish whether the incoming message is text or an image. Configuration: Use a Switch node to route the flow accordingly. 用途: 區分 text 或 image 設定: switch 分流 AI Agent Purpose: To extract and organize the required fields. Configuration: Chat Model & Structured Output Parser. 用途: 整理出需要的欄位 設定: Chat Model & Structured Output Parser Create a deduplication field Purpose: To prevent duplicate entries by creating a unique "for_deduplication" field. Configuration: Join multiple field names using hyphens (-) as separators. 用途: 確保不會重複寫入,先創建一個"去重使用"欄位 設定: 用 - 連接多個欄位 Aggregrate & Merge_all Purpose: To prevent duplicate entries in the data table. Configuration: Read the Google sheet, extract the existing "fordeduplication" column into a dedupeList, and compare it against the newly generated "fordeduplication" value from the previous step. 用途: 防止重複寫入資料表 設定:讀取雲端表,將原本的"去重使用欄位"整理成dedupeList,與前一步整理好的"去重使用"欄位做比對 Response Switch Purpose: To route data and send appropriate replies based on the content. Configuration: Use the replyToken to respond after branching logic. Depending on the result, either write to the data table or return a message: ✅ Expense recorded successfully: <for_deduplication> Irrelevant details or images will not be logged. ⚠️ This entry has already been logged and will not be duplicated. 用途: 資料分流,回應訊息 設定:使用 replyToken ,資料分流後,寫入資料表或回應訊息 ✅ 記帳成功 : <去重使用欄位> 不相關明細或圖片,不會計入 ⚠️ 此筆資料已記錄過,不會重複記帳 <br /> Step by step teaching notes 【Auto Expense Tracker from LINE Messages with GPT-4 and Google Sheets】 【AI 圖片文字記帳 Line Bot,自動記帳寫入 Google Sheet】