iT邦幫忙

2026 iThome 鐵人賽

DAY 5
0

前言

前面四篇都在介紹我要做的東西到底是什麼?

今天我要先把這個系統的骨架畫出來,也會順便介紹各個工具的工作內容。


我希望使用者看到的是什麼?

最簡單的使用流程應該是:

使用者
 ↓
新增任務
 ↓
填寫任務資訊
 ↓
系統儲存
 ↓
AI 分析
 ↓
推薦下一個任務

例如使用者新增:

任務:完成 Python 作業
預估時間:120 分鐘
重要程度:High
Deadline:明天
完成進度:0%

系統把這些資料存起來。

等使用者按下 「現在做什麼?」 ,系統再把目前的任務資料拿出來交給 AI。


那 Flask 要做什麼?

這次我預計使用 Flask 當後端。

簡單來說,我希望 Flask 負責處理:使用者跟系統之間的溝通。

例如:

POST /tasks

使用者新增任務。

或者:

GET /tasks

取得目前的任務。

未來也可以有:

PUT /tasks/<id>
DELETE /tasks/<id>
POST /tasks/plan

最後這個 /tasks/plan 之後可以拿來做:「幫我重新安排任務」


那 MySQL 要做什麼?

既然每天都會有很多任務,當然不能把資料只放在 Python 程式裡,所以我會使用 MySQL 儲存資料。

例如一筆任務可能包含:

task_id
title
description
estimated_time
importance
deadline
progress
status
created_time
updated_time

這樣即使 Flask 重新啟動,我的任務還是存在。

而且未來如果想分析:「這個使用者平常預估時間準不準?」

也可以從歷史資料繼續發展。


那 LLM 又要做什麼?

這就是這個系統最重要的一部分,我不希望讓 LLM 負責所有事情。

我希望每個部分都有自己的工作。

MySQL
負責:保存資料

Flask
負責:API、系統邏輯

LLM
負責:理解任務、分析條件、產生規劃

所以整個系統可以想成:

                 使用者
                    ↓
                Frontend
                    ↓
               Flask API
              ↙         ↘
         MySQL           LLM
          ↓               ↓
       任務資料       任務分析/規劃
              ↘       ↙
              AI 推薦結果
                    ↓
             「現在先做這個」

預計最後的使用流程

假設使用者今天新增五個任務,系統先把它們存進 MySQL。

使用者到了晚上,發現:「靠X,我今天只剩一個小時。」

這時候他不需要自己重新研究五個任務哪個最適合。

只要按:幫我安排下一步

系統就重新取得:

  • 現在時間
  • 剩餘時間
  • 任務 Deadline
  • 任務重要程度
  • 預估處理時間
  • 完成進度

再交給 LLM 分析,最後回傳:

現在推薦:完成 Python 作業

原因:重要程度高、明天截止,目前剩餘時間足以完成一部分。

這就是我目前希望最後做出來的核心功能。

這次我會先從最基本的 MVP 開始:

能新增任務 → 存進 MySQL → Flask 取得 → LLM 分析 → 推薦下一個任務。

先讓它能跑起來,再慢慢讓它變聰明。

下一篇就讓我們開始製作吧!


上一篇
Day 04|Deadline、重要程度、剩餘時間衝突了,誰說了算?
下一篇
Day 06|用 Flask 建立任務規劃系統
系列文
如果 AI 幫我安排每日的任務?——讓待辦清單不只是清單:LLM × Flask × MySQL 打造動態任務規劃系統9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言