Skip to content
所有文章 ‹ Part 02 of 08 · 設計 Agent 與 Agent Loop:先切 FR 與 NFR
工程 · 1 min read

Agent 設計就是 FR 與 NFR 的切分

把 agent 要做的事分成兩條路:固定的步驟寫成 script,只有真正需要判斷的地方才交給 LLM。判斷路徑越少,agent 越便宜、越穩定,也越好除錯。

North 每天早上要知道我「最近 7 天,到昨天為止」的能量狀況。一開始,我讓 North 自己去讀日記、自己算日期範圍。

它有時算對,有時算錯。後來我想通了:「最近 7 天,到昨天為止」是算術,不是判斷。讓 LLM 每次重算,只會多出錯的機會。

兩條路徑

我把 agent 要做的每件事分成兩種:

  • FR(固定路徑):每次步驟都一樣。例如抓資料、算日期、跑測試。這些寫成 script、hook 或模板。
  • NFR(判斷路徑):步驟無法事先寫死。例如 git 衝突時,讀完紀錄再決定保留哪一邊。這些才交給 LLM。
意圖 能固定下來嗎? 能FR:固定路徑script / hook / 模板 不能NFR:判斷路徑交給 LLM 判斷 記錄、重複出現規律? 畢業成 FR
固定的步驟往右走,交給 script。判斷往下走,交給 LLM。重複出現的判斷,再爬回 FR。

North 現在怎麼做

能量分數、睡眠時間、目標分配,全部由 script 先算好。North 拿到的是答案,不是原始資料。它只負責一個判斷:「今天值不值得提醒他少排一點事?」

判斷路徑變少之後,North 更便宜、更穩定,也更好除錯。出錯時,我知道要看 script 還是看 prompt。

這不是反 AI

有人會問:這樣不是讓 AI 做得更少嗎?我的看法是,這是把 AI 用在它真正擅長的地方。算術交給 script,判斷交給 LLM。圖上最後一步「畢業成 FR」,我寫在讓 NFR 畢業成 FR。要先切得好,前提是意圖清楚,見先寫意圖,不先寫 prompt。

能算的,就不要讓 LLM 猜。


延伸閱讀: 看看最後一步怎麼走,讀讓 NFR 畢業成 FR,回頭讀先寫意圖,不先寫 prompt。或回到系列總覽:設計 Agent,先切 FR 與 NFR。

// connect

Be brave | Be wise | Be grateful

21 BreakinCode

// elsewhere
LinkedInMedium (lang: en)Youtube
wh:~$William Hung· © 2026 Taipei · GMT+8 · ● Available for collaboration
↑↓ 移動 ↵ 開啟 esc 關閉