iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
AI Engineering

AI Agent 上線要想清楚的事:30 天拆解 Harness 的設計取捨 系列

Agent 的 Demo 很快能跑起來,交付真實工作後,問題常出在模型外面:按了停止還在改檔、Timeout 後又寄一次信、文件寫了卻沒被讀到。組裝 Context、執行工具、決定何時停下的這層程式,就是 Harness。我實作 Harness 時也踩過類似的坑,於是整理 OpenAI、Anthropic、Shopify 等團隊公開的工程文章,看他們面對同樣問題怎麼取捨。三十天分為五個主題:任務狀態與恢復、Context 與知識、工具與副作用、權限與信任邊界、運行與改善。每篇從一個問題出發,比較做法的代價,整理成設計判斷,讓讀者檢查自己的 Agent 時,知道該補哪一層、補到什麼程度。

參賽天數 24 天 | 共 24 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11|Compaction 壓完,原文去哪了?

🗃️ Compaction 把舊對話壓短,Agent 才跑得下去;壓完原文通常還在,摘要要記下出處,才找得回去。 昨天在 Day 10,我們確認了必要的內容...

2026-09-25 ‧ 由 davimperiald 分享
DAY 12

Day 12|Memory 記住的事,過期了怎麼辦?

🧠 Agent 記下的 memory 會過期。寫進去時連當時的條件一起存,讀回來先看它多舊、條件還在不在;有了新說法,舊的標成已取代,別直接蓋掉。 昨天在...

2026-09-26 ‧ 由 davimperiald 分享
DAY 13

Day 13|多開幾個 Subagent,會比較快嗎?

🔀 subagent 先換到的是乾淨的主對話:大量的測試輸出、log 留在它那邊,主對話只收一份摘要。多開幾個會不會快,看分出去的工作重疊多少;重疊的部分,開...

2026-09-27 ‧ 由 davimperiald 分享
DAY 14

Day 14|API 直接轉成工具,退款金額誰來算?

🔧 API 原樣轉成工具,後台畫面替客服人員做的事就落到模型身上。工具要照 Agent 的任務設計:模型判斷退哪幾件,金額由系統照規則算,做了什麼、為什麼被拒...

2026-09-28 ‧ 由 davimperiald 分享
DAY 15

Day 15|工具越多,選錯越多:控制 Agent 當下看見的能力面

🧰 工具一多,定義會占掉 Context,名字像的也更難分。先把這個 Agent 用不到的拿掉;剩下的常用幾支一直給,其餘先只給名字、用到再載入;搜不搜得到、...

2026-09-29 ‧ 由 davimperiald 分享
DAY 16

Day 16|工具輸出太長,截掉就好嗎?

✂️ 只回傳一部分沒問題,前提是講清楚讀到哪裡、為什麼只有這些,和下一段怎麼拿。 昨天在 Day 15|工具越多,選錯越多:控制 Agent 當下看見的能力...

2026-09-30 ‧ 由 davimperiald 分享
DAY 17

Day 17|Agentic search 停下來時,怎麼知道找齊了?

🧭 Agentic search 搜什麼、搜到哪裡停,都由 Agent 自己決定,從改了哪些檔案看不出漏了什麼。要判斷找齊沒,交回時得附上它用哪些線索搜、排除...

2026-10-01 ‧ 由 davimperiald 分享
DAY 18

Day 18|Timeout 之後,可以直接重試嗎?

🔁 timeout 不代表失敗,動作可能已經做了,不能直接再送一次。要再送,Harness 得帶上同一把 key:key 從「做哪一件事」算出來,不管誰重送、...

2026-10-02 ‧ 由 davimperiald 分享
DAY 19

Day 19|做到一半換模型,任務接得下去嗎?

🔌 接得下去,但不能只交一段摘要給新模型。Harness 要把確認過的結果直接交過去,例如哪些檔案改好了、diff 是什麼;舊模型的工具呼叫和供應商專屬的狀態...

2026-10-03 ‧ 由 davimperiald 分享
DAY 20

Day 20|寫在 Prompt 裡的規則,擋得住 Agent 嗎?

🛡️ 擋不住。prompt 裡的規則和資料裡夾帶的指示,對模型來說都是讀到的文字,它可能照後者做。在模型外面先掃描、執行前再檢查,能降低被騙的機率;要擋住,得...

2026-10-04 ‧ 由 davimperiald 分享