ACE(Agentic Context Engineering) 概念 === ###### tags: `AI Tools / 新概念` ###### tags: `AI`, `tools`, `新概念` <br> [TOC] <br> ## 預備知識 ### ACE 核心概念:會進化的系統提示(system prompt) > ACE: Agentic Context Engineering, 代理式情境工程 - ### 把 context 當成「會長大的策略手冊(playbook)」 不是手寫一個固定 system prompt,而是讓系統把每次成功/失敗經驗,整理成一條條 bullet 策略,持續加進這本手冊。 - ### 相關角色 | 角色 | 任務 | |------|------| | **Generator** [ˋdʒɛnə͵retɚ] | 實際去做事的人 | | **Reflector** [rɪˋflɛktɚ] | 事後檢討的人 | | **Curator** [kjʊˋretɚ] | 整理攻略手冊的人| <br> --- --- <br> > 產生一份概念引導式(step-by-step)的教學,教會一般人認識 ACE (Agentic Context Engineering) > > -- by gpt-5 (2025/11/17) ## Step 0:一句話先講清楚 ACE 是什麼 > **ACE(Agentic Context Engineering)就是: > 讓 AI 在「做事情」的過程中,一點一滴長出自己的攻略手冊(playbook), > 下次遇到類似任務就照這本手冊做得更好。** * 不改模型權重、不一定要再訓練 * 只是把經驗寫成規則/小重點,再放回提示(context)裡 * 所以它本質上是:**「會進化的系統提示」** <br> --- <br> ## Step 1:先問一個簡單問題 —— 為什麼光改 prompt 不夠? 你可以這樣問一般人: 1. 「如果 AI 每次都像新來的新人,一切從零開始,你不會覺得很浪費嗎?」 2. 「既然 AI 幫你做了這麼多次任務, 有沒有辦法:**把成功經驗、踩過的雷,整理起來,讓它下次不要再犯?**」 傳統做法: * 要嘛一直手動改 system prompt * 要嘛花錢做 **微調(fine-tuning)**,而且很難解釋裡面學到了什麼 ACE 出現,就是為了解這個痛點: > **讓「上下文」自己長大,而不是一直改模型本體。** <br> --- <br> ## Step 2:先理解兩個關鍵名詞 ### 2-1. 上下文(Context) 給 AI 的「所有額外資訊」,例: * 系統提示:「你是一個旅遊規劃助手」 * 背景資料:文件、FAQ、RAG 抓到的段落 * 歷史對話:前幾輪談過的內容 它決定 AI **「現在像誰」**、**「知道什麼」**。 ### 2-2. 攻略手冊(Playbook) 想像一家公司有: * 新人手冊 * SRE 的 incident runbook * 客服話術、常見 Q&A、危機應對 SOP 這些都是「**做事的策略 & 步驟**」, ACE 就是要幫 AI 自動寫出這本 **AI 專用的攻略手冊**: * 條列式 bullet * 內容是「遇到什麼情況,要怎麼做」 * 可以被人看懂、審查、版本控制 <br> --- <br> ## Step 3:ACE 的核心想法(用白話講) > **讓 AI:從一次次任務的「執行軌跡」,自己總結出「下次要怎麼做更好」, > 然後把這些總結,變成會被重複使用的提示/規則。** 跟兩種東西區分一下: 1. **不是 GPT 長期記憶** * GPT 記憶的是「使用者是誰、喜歡什麼」,讓對話更個人化 * ACE 記的是「怎麼完成某種類型的任務」,讓 **工作流程** 更好 2. **也不是微調模型** * 微調:改的是「腦袋裡的權重」,黑箱、不好解釋 * ACE:改的是「給腦袋看的工作說明書」,透明、可讀、好審核 <br> --- <br> ## Step 4:三個角色 —— 用「公司裡的專案」比喻 ACE 裡面有三個角色,你可以用一個小公司來解釋: ### 4-1. Generator:實際去做事的人 * 類比:窗口 / 工程師 / 客服 * 他拿到: * 使用者的需求(Query) * 目前手上的攻略手冊(Playbook) * 然後實際去: * 打 API、查資料、下決策 → 這一整段過程叫 **Trajectory(執行軌跡)** --- ### 4-2. Reflector:事後檢討的人 * 類比:做檢討會的同事 * 他會看: * 這次流程哪裡成功? * 哪裡卡住、犯了什麼錯? * 然後寫出幾個 **「可以重複使用的心得 bullet」**,例如: > - 遇到海馬 emoji 時,要說明「目前沒有海馬 emoji」,不要硬編一個。 > - 在某網站搜尋商品時,先用關鍵字 X,再用 Y,比較成功。 --- ### 4-3. Curator:整理攻略手冊的人 * 類比:知識管理 / 文件負責人 * 他會: * 把 Reflector 寫出的 bullet 分類 * 決定哪些要加入、哪些要丟掉 * 更新成新的 **Playbook 版本** 更新方式很重要: * 不是重寫整本,而是用 **Delta Context Items**: 一條一條小更新, 避免「越整理越短、最後什麼細節都不剩」這種 **brevity bias / context collapse** 問題。 - **備註**: - **brevity bias**:過度簡化偏誤 > 字面是「偏好簡短的偏誤」,在 LLM/ACE 裡指:模型太愛把東西講得又短又精簡,結果細節都不見了。 - **context collapse**:情境崩解 / 脈絡崩解 > 本來用很多脈絡在幫模型,但因為太多/太雜,後來模型乾脆只抓到幾個碎片,原來的脈絡關係全部被「攪成一團」。 <br> --- <br> ## Step 5:ACE 的兩種學習方式 ### 5-1. Online(線上、從做中學) * 每次任務跑完,就把這次的軌跡丟給 Reflector→Curator * Playbook 就一點一點長大 * 有點像: * 每接完一通客服電話,就在 SOP 上多加一句「遇到這種情況要這樣說」 適合:**持續在跑的系統**(客服 bot、工具 agent、網站自動化…) --- ### 5-2. Offline(離線、事前先學一輪) * 把歷史 log / demo case 當作「過去的專案」 * 一口氣跑 ACE 流程, 先長出一版「初始攻略手冊」再上線 適合:**已經有很多資料,但還沒做成智慧 agent 的公司** (例如:一堆客服紀錄、財報檢查案例、法律文件等等) <br> --- <br> ## Step 6:ACE 到底幫了哪些忙? 你可以用三個常見痛點來講: 1. 🧱 **不再當金魚腦:會累積經驗** * 模型不只看眼前的 prompt * 還能用過去任務學到的「做事方式」 → 同樣類型的任務,**越做越順** 2. ✂️ **減少「越講越短」的問題(brevity bias)** * 人手寫提示時,會一直想「再短一點」 * ACE 用的是一條條具體 bullet,而不是一句抽象口號 → 保留細節,不會只剩下「請你仔細一點」這種空話 3. 🕳️ **減少「context 塞滿就爆掉」的問題(context collapse)** * Playbook 不一次塞全部,而是: * 先挑跟這個任務最相關的 * 再用 Delta 方式慢慢長 → 更省 tokens,也比較不會亂掉 <br> --- <br> ## Step 7:跟一般人講的幾個「實際例子」 你可以挑一兩個例子講,越具體越好: 1. **客服小幫手** * 一開始只會照 FAQ 回答 * 遇到沒有寫在 FAQ 裡的問題時,它會自己想辦法處理 * 成功或失敗的處理方式,會變成新的 SOP bullet * 一段時間後,就長出一套「這家公司特有的處理風格」 2. **幫你網購的 AI** * 你說:「幫我找五樣小孩的早餐,總價不要超過 500 元」 * 一開始它可能常常點錯分類、選錯數量 * 透過 ACE: * 記下「哪一種搜尋關鍵字比較準」 * 「遇到缺貨怎麼換商品」 * 之後買東西會越來越穩定、越來越快 3. **寫程式的 AI 助手** * 一開始有時候會用錯專案慣例(命名風格、錯誤處理方式) * ACE 會記住每次 code review 被退回的原因 * 慢慢加進 playbook: * 「在這個專案裡,錯誤要用自訂的 `AppError`」 * 「API call 要加重試機制」 * 越寫越符合團隊標準 <br> --- <br> ## 最後:如果要用 30 秒跟別人解釋 ACE,可以這樣說 > 「ACE 其實就是幫 AI 做一個會長大的攻略手冊。 > AI 每次幫你做事情,它的過程和結果會被記錄下來, > 再由另一個流程去做事後檢討,整理成一條條『下次遇到這種情況要怎麼做』的規則, > 放回提示裡。 > 所以不用重訓模型,它也能『從做中學』, > 而且學到的是可讀、可審核的工作策略,而不只是黑箱的權重。」 <br> --- --- <br> ## 討論 ### ACE 核心概念,跟 GPT 長期記憶有什麼差別? - ### gpt-5 (2025/11/17) 我用一句話先對齊概念: > **ACE 是「讓模型自己長出一份任務 playbook 的框架」,而 GPT 長期記憶是「幫助聊天機器人記住你這個人」的功能。** 下面拆成兩部分說。 --- ### 1. ACE 核心在「任務策略 playbook」,不是用戶資料 #### ACE 在做什麼? 論文把 ACE 定義成: > 把 *context* 當成會演化的「playbook」,透過 **生成 → 反思 → 策展** 的流程,把策略、規則、程式片段一條條累積起來,而不是去改模型權重。([arXiv][A-1]) * **Generator**:執行任務,產生 trajectory(目標、狀態、action、觀察、reward…)。([arXiv][A-2]) * **Reflector**:事後檢討這些 trajectory,抽出「成功策略」、「踩雷模式」、「缺少的 heuristics」。([Medium][A-3]) * **Curator**:把這些 insight 變成結構化 bullet、規則、工具用法,增量更新成一份 **playbook context**。([Medium][A-4]) 這份 playbook 後面會被注入到 prompt 中,讓 agent 在 **下一次執行任務時表現更好**(成功率變高、錯誤更少),而且是可以 offline 或 online 持續演化的「任務記憶」。([arXiv][A-1]) > 關鍵點:ACE 記的是 **「如何解這類任務」的知識**,而不是「用戶是誰」。 --- ### 2. GPT 長期記憶在做什麼? 以 ChatGPT 為例,官方的「Memory」是: * 會存放一些跟你有關的資訊(身份、偏好、常用設定、正在進行的專案…),在之後的對話自動帶入。([OpenAI][A-5]) * 有兩種來源: * 你明講「請記住我…」的 **顯式記憶**, * 系統根據多次對話自動抽出的一些「洞見」。([OpenAI][A-5]) * 這些記憶會跨對話、跨 session 存在,用於個人化回覆,而不是針對某一個 task pipeline 的策略優化。([Marketing AI Institute][A-6]) 實作上,這類長期記憶通常會轉成 embedding,照語意相似度檢索出來,再塞回 prompt。([Reddit][A-7]) > 關鍵點:GPT 長期記憶的主體是 **「User Profile & 偏好」**,用來讓聊天更個人化,而不是讓某個 App 的 agent 越用越強。 --- ### 3. 直接對比:ACE vs GPT 長期記憶 | 面向 | ACE(Agentic Context Engineering) | GPT 長期記憶(ChatGPT Memory 類) | | --------- | ------------------------------------------------------------------------- | ---------------------------------------------------- | | **目的** | 提升「特定任務 / Agent」的表現:學會更好的策略與流程 | 提供更個人化的對話:記住使用者的背景與偏好 | | **記住的東西** | 任務 playbook:規則、heuristics、常見錯誤、工具用法、程式範例等([arXiv][A-1]) | 用戶資訊:職業、興趣、格式偏好、專案狀態等([OpenAI][A-5]) | | **來源** | Agent 的執行軌跡 + 成功/失敗回饋 → Generator/Reflector/Curator 產生 bullet([arXiv][A-2]) | 多輪對話內容,由系統自動萃取 + 使用者明確「記住這件事」的指示([OpenAI][A-5]) | | **表現形式** | 結構化、可審核的 playbook(文字規則、程式碼、工具說明…)([Medium][A-4]) | 內部資料庫 + UI 上的一條條簡短記憶(自然語言描述)([OpenAI][A-5]) | | **作用位置** | 每次 agent 推理前,挑選相關 playbook 片段注入 context,偏向「系統級/任務級」 | 每次回覆前,把跟「這個用戶」相關的記憶塞進 prompt,偏向「使用者級」 | | **演化方式** | 可 offline 批次(用歷史 log)、也可 online 持續自我更新;設計 reward/評估指標很關鍵([arXiv][A-1]) | 由系統根據啟發式自動更新,或由使用者手動增刪;沒有顯式的「成功/失敗」學習回圈([OpenAI][A-5]) | | **誰掌控** | 主要是系統/產品開發者(決定記什麼、用什麼規則更新 playbook)([Kayba][A-8]) | 主要是最終使用者(可以關閉、清除、管理記憶)([OpenAI Help Center][A-9]) | --- ### 4. 真正重要的一句差異總結 * **ACE = 任務級「自我優化上下文」**: * 重點是「這個 agent 怎麼做事才更強」。 * 產出的是 domain playbook,可以被工程師審閱、版本控制。 * **GPT 長期記憶 = 使用者級「個人化上下文」**: * 重點是「這個助理更懂你」。 * 產出的是 user profile,跟任務策略本身關聯較弱。 如果你之後想做的是 *自己的* agent 系統,其實可以 **同時用兩種**: * 用類似 GPT 記憶機制記「user 偏好」, * 用 ACE 流程記「agent 在你這個產品裡學到的技能/策略」。 [A-1]: https://arxiv.org/abs/2510.04618?utm_source=chatgpt.com "Evolving Contexts for Self-Improving Language Models" [A-2]: https://arxiv.org/html/2510.04618v1?utm_source=chatgpt.com "Evolving Contexts for Self-Improving Language Models" [A-3]: https://medium.com/%40jannadikhemais/agentic-context-engineering-ace-fea25fb05cdd?utm_source=chatgpt.com "Agentic Context Engineering (ACE) | by Khmaïess Al Jannadi" [A-4]: https://medium.com/%40adnanmasood/agentic-context-engineering-playbooks-not-prompts-150341768ef3?utm_source=chatgpt.com "Agentic Context Engineering: playbooks, not prompts" [A-5]: https://openai.com/index/memory-and-new-controls-for-chatgpt/?utm_source=chatgpt.com "Memory and new controls for ChatGPT" [A-6]: https://www.marketingaiinstitute.com/blog/chatgpt-memory?utm_source=chatgpt.com "ChatGPT Will Now Remember Everything You Tell It" [A-7]: https://www.reddit.com/r/OpenAI/comments/1jy3e6z/eli5_how_does_chatgpts_memory_actually_work/?utm_source=chatgpt.com "ELI5: How does ChatGPT's memory actually work behind ..." [A-8]: https://kayba.ai/?utm_source=chatgpt.com "Kayba" [A-9]: https://help.openai.com/en/articles/8590148-memory-faq?utm_source=chatgpt.com "Memory FAQ" --- <br> ### 「新版 GPT 記憶」 vs ACE - ### Question 現在的 GPT 長期記憶已經不是單純記住用戶資料,而是會自動紀錄,像是: - **預設使用臺灣繁體中文回答,避免使用大陸簡體用法** - **預設使用 FastAPI 當作後端框架** - **預設使用純 JS 前端框架** - 等等 - ### gpt-5 (2025/11/17) 對,你說的這點很重要,我來幫你「補強新版 GPT 記憶 vs ACE」的對齊。 --- ### 1. 是的:GPT 長期記憶 ≠ 只記「個人資料」 現在的 GPT 記憶,實際上已經會記很多「**穩定偏好**」跟「**習慣設定**」,例如你提到的: * 用 **臺灣繁體中文** 回答 * 盡量 **避免中國簡體/陸用詞** * 寫後端範例時 **預設用 FastAPI** * 前端 **偏好純 JavaScript,而不是 React/TS** * 翻譯時某些專有名詞使用你的偏好用語 * 寫程式碼時,註解用英文、變數命名風格等等 這些其實都是「**對這個使用者,要怎麼講話/怎麼寫範例**」── 所以 GPT 記憶現在更像是: > **「關於這個人的對話與教學風格設定集合」** > = 語言、術語、技術堆疊偏好、格式偏好、互動習慣…… 它當然也可以包含一點「背景資料」(職業、專案之類), 但核心是:**讓之後的所有回答更貼合你這個人。** --- ### 2. 那 ACE 跟這種「風格+技術偏好記憶」差在哪? 照你剛補充的情況,我會這樣重新切分: #### GPT 長期記憶(你這邊在用的) * 記的主軸是: * **我應該怎麼跟這個人互動?** * 用什麼語言?用哪一派術語?用哪一套技術堆疊展示範例? * 本質上是: * **對話/教學策略的個人化 Setting** * 很像 IDE 裡的「使用者偏好設定+程式碼樣板風格」 #### ACE Playbook * 記的主軸是: * **這個 Agent 要怎麼完成任務才最穩?** * 例如:遇到某網站改版,要怎麼重新找到按鈕; * 某個財報欄位缺失,要用哪些 fallback 規則。 * 本質上是: * **任務解決策略 & 流程 SOP**(跟「這個 user 是誰」無關) * 很像公司內部的「操作手冊+Runbook+Best Practices 集合」 --- ### 3. 用一句話幫你總結新版對齊 * **GPT 記憶(你現在用的這種)** = 幫模型記住: > 「**對這個人**,要用什麼語言、什麼稱呼、什麼技術棧 / 風格來回答?」 * **ACE** = 幫 Agent 記住: > 「**對這種任務**,要走什麼流程、採用什麼策略、避免哪些坑?」 兩個可以疊在一起用: * **上層**:GPT 記憶 → 決定「說話方式+技術選擇」 * **下層**:ACE Playbook → 決定「整個任務要怎麼拆步驟+怎麼修正錯誤」 如果你之後要寫部落格或簡報,可以直接用這個對比:「**GPT 記憶管的是『對誰說話』,ACE 管的是『怎麼做事』**」。 <br> {%hackmd vaaMgNRPS4KGJDSFG0ZE0w %}
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up