iT邦幫忙

2025 iThome 鐵人賽

DAY 24
0
Mobile Development

開除老闆計劃系列 第 24

[Day-24] 讓 AI 真的懂我:個人化健身建議系統

  • 分享至 

  • xImage
  •  

每次去健身房都會有一個共同問題:我今天到底該練什麼?
就算前幾天已經記錄了飲食、重量、次數,打開紀錄頁面還是會想:「那接下來呢?」
這就是今天要講的重點——如何讓 AI 幫你做出「個人化健身建議」。

為什麼要做「個人化建議」

前面的系統已經能記錄飲食與運動,但 AI 排課表還是偏「模板式」——
例如週一胸、週二背、週三腿,這樣的邏輯雖然簡單,但不夠「懂使用者」。
一個真正的 AI 教練,應該要能看懂你的:

  • 最近的訓練部位分佈(避免重複練到同個肌群)
  • 飲食熱量與蛋白質攝取量
  • 睡眠與恢復天數
  • 過去表現趨勢(重量是否有進步)

然後根據這些資料,主動提出建議
像是:「你這週推的量太多了,明天建議休息或改練腿。」
或「你今天熱量攝取偏低,不建議高強度訓練。」


⚙️ 系統構想:AI 如何學會給建議

分析器會根據 MongoDB 裡的資料去算出幾個關鍵數據,例如:

  • 每個肌群訓練頻率
  • 最近七天訓練總量
  • 飲食與攝取比例
  • 上一次訓練距今的天數

這些數據會被包成一個 userProfile 物件,
再送進 AI 模型(不論是 LLM prompt 還是自訂邏輯)中,生成個人化建議。

技術挑戰

這個功能看似單純,但實際上有幾個挑戰:

  1. 資料整合困難:飲食、運動、休息等資料分散在不同 collection。
  2. 建議邏輯複雜:不同人目標不同(減脂 vs 增肌),AI 要能動態調整。
  3. 即時性問題:要在每次使用者紀錄後即時更新建議,不然體驗會斷層。

目前我打算用一個簡單的 pipeline:

// 假設我們有 userProfile 已包含運動與飲食統計const prompt = ` 根據使用者資料提供建議: - 過去七天胸部訓練 3 次 - 平均睡眠 6 小時 - 飲食蛋白質偏低 請用一句話給出明日訓練建議 `; const suggestion = await openai.createCompletion({ model: "gpt-4o-mini", prompt, }); 

未來可以擴充成「建議卡片系統」,讓建議更視覺化,例如:

  • 🔵 明日建議:改練腿部
  • 🍗 熱量提醒:蛋白質攝取偏低
  • ⏱️ 恢復建議:建議多睡 1 小時

實際應用想像

想像一下,早上打開 APP,它會自動說:

「Tom,你昨天練完背,今天建議練胸或休息。根據飲食分析,你昨天碳水稍高,可以安排高強度訓練。」

這就是我想做的「AI 教練」。
不只是幫你記錄,而是真的懂你的狀況、陪你訓練。

結語

AI 的強大不是在於能寫程式,而是在於能「理解脈絡」。
健身的過程其實就像開發一個系統——
你必須持續輸入資料、觀察結果、再依據回饋調整策略。
而 AI 的角色,就是那個幫你看清全局、提醒你不要過度訓練的好夥伴。

下一篇,我會開始實作這個「建議系統」的邏輯,
讓它真的能根據資料去給出每日訓練提案。
AI 不只是寫程式的幫手,它也能是你的健身夥伴。


上一篇
[DAY-23] AI 寫程式,真的懂你嗎?
系列文
開除老闆計劃24
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言