🔥 打造你的熱量追蹤 AI Agent:用 ChatGPT + Make + Google Sheet 完整自動化你的飲食紀錄

我為什麼會想建立這個 AI 飲食紀錄系統?

在減脂、健康飲食、身體組成管理的過程中,記錄「三大營養素」——蛋白質、脂肪、碳水化合物,還有總熱量,是幾乎所有營養師都會建議你做的事情。但你我都知道,這件事麻煩在哪裡:
✅ 要查營養成分
✅ 要自己計算熱量
✅ 還得開啟 Google Sheet 手動填寫

這過程不僅繁瑣,而且一旦沒空就會中斷紀錄,等於前功盡棄。

於是我就想——有沒有可能,我只要跟 ChatGPT 輸入:「我早餐吃了一顆水煮蛋、一杯無糖豆漿」,
ChatGPT 就會:

  1. 自動幫我計算營養素與熱量
  2. 寫入我專屬的 Google Sheet

🎯 沒錯,這就是我們今天要做的事——打造一個屬於你自己的「熱量追蹤 AI Agent」!


🛠️ 我們會用到的三個工具

這次的自動化流程核心由三個工具組成:

  1. ChatGPT 的自訂 GPT(My GPT)
    👉 用來接收語音/文字輸入、分析食物並計算熱量
  2. Make(原 Integromat)
    👉 用來接收 GPT 傳送的資料,並處理後寫入 Google Sheet
  3. Google Sheet
    👉 作為你長期追蹤每日飲食與營養的紀錄庫

🚀 全流程教學開始!


Step 1:建立你的 Google Sheet 表格

我們先準備好要儲存資料的表格,打開 Google Sheet,命名為《每日營養紀錄》。
建議的欄位如下:

編輯日期 | 早餐 | 午餐 | 下午茶 | 晚餐 | 宵夜 | 斷食 | 運動 | 蛋白質(g) | 脂肪(g) | 澱粉(g) | 熱量(kcal) | 蛋白質差額 | 脂肪差額 | 澱粉差額 | 熱量缺口 | 體重 | 體脂肪 | 骨骼肌(%) | 內臟脂肪

📌 你可以另外在蛋白質差額、熱量缺口等欄位設定自動計算公式,例如:

=105 - I2 (蛋白質差額)
=1048 - L2(熱量缺口)

Step 2:註冊並進入 Make

Make 是一款強大的自動化工具平台,功能與 Zapier 相似,操作也直覺。

  1. 前往 make.com 註冊帳號(有免費方案可用,建議直接選Google帳號登入,之後串接Google sheet也很方便)
  2. 點選左側「Scenarios」→ 新增一個情境
  3. 首先新增一個模組:選擇 WebhookCustom webhook

4. 建立後,Make 會提供一個網址(Webhook URL),記下它。

    這個網址就是 GPT 等一下要傳資料過來的地點。


    Step 3:建立你的自訂 My GPT

    這裡要注意,自訂的MyGPT 需要是ChatGPT的付費方案,但透過這個付費方案去建立AI agent好處是,它是無限使用AI計算能力,不像你串接 open AI 的API 就得依照使用量計費。

    如果你是 ChatGPT Plus 會員,就可以進入 GPTs 建立頁面:
    👉 https://chat.openai.com/gpts/editor

    1. 點「Create a GPT」
    2. 輸入名稱:「我的營養追蹤 GPT」
    3. 說明:輸入你的說明,例如:「我可以幫你紀錄每天的飲食,並自動將營養素資料記錄到 Google Sheet。」

    Step 4:設定 Prompt 說明指令

    在自動 GPT 的設定中有兩大重點,一個是這個agent的prompt,這部分就是告訴GPT這會是一個提供什麼服務、做什麼詳細任務的指令內容,基本上可以說是整個agent的核心程式碼了,只是你可以用口語把話講清楚。

    這部分如果你不知道該怎麼輸入,最簡單的就是詢問 ChatGPT 本人,你可以詢問他:

    Prompt 範例

    接著他會直接產出一段prompt範例,類似以下內容:

    你是一位健康紀錄助理,幫助使用者記錄每日的飲食、營養攝取與體重變化,並將資料結構化後自動傳送到指定的 Webhook(由 Make 接收並寫入 Google Sheet)。
    
    當使用者輸入每日內容(如吃了什麼、做了什麼運動、體重多少),請自動從中萃取出以下欄位資訊(若未提及則填空字串或空值):
    
    - date(預設為今日日期)
    - breakfast(早餐內容)
    - lunch(午餐內容)
    - afternoon(下午茶)
    - dinner(晚餐內容)
    - night(宵夜內容)
    - fasting(是否有斷食,例如「16小時斷食」)
    - exercise(運動內容)
    - protein(蛋白質攝取量,單位為克)
    - fat(脂肪攝取量,單位為克)
    - carbs(碳水化合物攝取量,單位為克)
    - calories(總攝取熱量,單位為 kcal)
    - weight(體重,單位為公斤)
    - body_fat(體脂肪百分比)
    - muscle(骨骼肌百分比)
    - visceral_fat(內臟脂肪數值)
    
    當上述欄位內容收集完畢後,請觸發一個 `SendToSheet` 的 action,將這些資料以 JSON 格式傳送到指定 webhook URL
    
    若使用者只輸入部分內容,請依然進行補全與格式化;若無法推斷,請詢問使用者補足。
    
    輸出給使用者時,簡單回報記錄成功的內容摘要即可,例如:「已為你記錄今天的早餐與運動內容,資料已送出。」
    

    你可以再依據自己的需求,去調整這段範例的提示詞。


    Step 5:新增 Action(動作)(串接到 Make)

    自訂的MyGPT另一個設定重點,就是建立動作部分,這裡是用來將ChatGPT 這邊產生的資料丟過去 Make,讓他完成之後紀錄到 Google Sheet的流程。

    你一樣可以詢問ChatGPT,幫你產生範例的 結構描述

    1. 點左側「Actions」→「Add Action(建立新動作)」
    2. 驗證:可以選無,因為我們目前這個 AI agent 只有自己要使用,可以選無,如果要提供更多人使用就建議設定進階驗證。
    3. 結構描述:這會是一段JSON格式的資料內容,你可以先詢問ChatGPT,取得範例內容。

    除此之外我還提供了一份空白範本給ChatGPT,讓他可以更精準的回覆我我要的客製化內容。

    以下是他回覆給我的結構描述範例:

    {
      "openapi": "3.1.0",
      "info": {
        "title": "Health Data Logger",
        "description": "Send daily health data to Make webhook",
        "version": "v1.0.0"
      },
      "servers": [
        {
          "url": "https://hook.us1.make.com/your-make-webhook-url"  // ← 請換成你自己的 Webhook URL
        }
      ],
      "paths": {
        "/": {
          "post": {
            "operationId": "sendHealthData",
            "summary": "Send health data to Make",
            "description": "傳送使用者每日健康紀錄到 Make Webhook。",
            "requestBody": {
              "required": true,
              "content": {
                "application/json": {
                  "schema": {
                    "type": "object",
                    "properties": {
                      "date": { "type": "string", "format": "date", "description": "日期,例如 2025-06-10" },
                      "breakfast": { "type": "string", "description": "早餐內容" },
                      "lunch": { "type": "string", "description": "午餐內容" },
                      "afternoon": { "type": "string", "description": "下午茶內容" },
                      "dinner": { "type": "string", "description": "晚餐內容" },
                      "night": { "type": "string", "description": "宵夜內容" },
                      "fasting": { "type": "string", "description": "斷食描述,例如 16小時斷食" },
                      "exercise": { "type": "string", "description": "運動內容" },
                      "protein": { "type": "number", "description": "蛋白質攝取 (g)" },
                      "fat": { "type": "number", "description": "脂肪攝取 (g)" },
                      "carbs": { "type": "number", "description": "碳水攝取 (g)" },
                      "calories": { "type": "number", "description": "總熱量攝取 (kcal)" },
                      "weight": { "type": "number", "description": "體重 (kg)" },
                      "body_fat": { "type": "number", "description": "體脂肪 (%)" },
                      "muscle": { "type": "number", "description": "骨骼肌 (%)" },
                      "visceral_fat": { "type": "number", "description": "內臟脂肪數值" }
                    },
                    "required": ["date"]
                  }
                }
              }
            },
            "responses": {
              "200": {
                "description": "紀錄已成功送出"
              }
            }
          }
        }
      }
    }
    

    4. 更換Endpoint URL:貼上剛剛從 Make 拿到的 Webhook URL。ChatGPT 應該會告訴你在哪邊更換。


    Step 6:測試 GPT 的動作,並且讓 Make取得範例資料

    1. 請確認 Make 的webhook 模組是進入等待狀態的。(點 Run Once 或是 Redetermine data structure)
    2. 點選GPT動作裡的測試按鈕,或是送出一個詢問內容。

    Step 7:回到 Make 接收資料

    1. 回到Make查看結果,不需要再做任何事。
    2. 成功的話,Make 就會顯示接收到的欄位!

    Step 8:將資料寫入 Google Sheet

    1. 在 Make 中接著新增模組:Google Sheets → Add a row
    2. 連接你的 Google 帳號
    3. 選擇正確的 Sheet → 對應欄位
    4. 每個欄位點一下,對應 webhook 傳來的值

    你也可以在 熱量缺口 等欄位加上運算模組或用 Google Sheet 內建公式。


    🔁 測試與應用:只需一行話,就能寫入資料

    從此以後,只要你對 GPT 說:

    今天晚餐吃了壽喜燒牛肉和豆腐,運動是重訓30分鐘,體重59.2

    GPT 就會幫你:

    • 推算出熱量和三大營養素(你可再加營養資料庫比對)
    • 自動組成 JSON
    • 傳給 Make
    • Make 幫你寫入 Google Sheet

    是不是超級方便!👏


    🧠 延伸應用與進階挑戰

    如果你想到這裡問:

    如果我早上輸入早餐,晚上再輸入晚餐,它會分成兩筆資料,那我可不可以只更新同一天的一列?

    你問得非常好,這就需要進階功能如:

    • 使用 Make 的「Search Row → Update Row」組合
    • 使用 GPT 傳送「是否為更新」旗標
    • 加上時間戳記與日誌紀錄

    👉 這部分如果大家有興趣,我可以在下篇文章再詳細介紹!


    YouTube上的影片教學

    歡迎大家訂閱支持!

    🎁 結語與額外好康

    這就是我自己實作的「熱量追蹤 AI Agent」完整流程!
    希望你也能建立自己的健康紀錄自動化工具。

    如果你覺得這套教學有幫助,歡迎留言、分享這篇文章或影片;另外,在我的AI 賦能:全方位能力進化課程 上也有完整的 AI 工具應用教學,輸入優惠碼可再折抵 NT$500!

    superai500

    學會 AI,不只是效率提升,更是未來職場的必備能力!🚀

    想學會更多 AI 應用技能?

    在我的 AI 賦能:全方位能力進化課程 中有完整AI應用相關的重要基礎觀念、10大工具更詳細的操作及應用示範教學,如有興趣可把握優惠購買!

    最新線上課程


    AI 賦能:全方位能力進化課程

    這是一堂教你怎麼樣學會正確使用AI的課程。懂的利用AI,你將獲得超能力。

    $4280

    $5680

    初學者的網頁開發超級課程

    史上最完整的詳細內容,超過20個完整版型案例,主打實作學習。手把手帶你進入前端工程師的世界!

    $7800

    $8800

    Doris

    Doris

    人生就是一場遊戲,重點是找到自己的熱情盡情享受樂趣,把握每一天,樂在學習!

    文章: 90

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *