AI Agent 嘅 Groundhog Day 問題

講個大家都聽過嘅電影《Groundhog Day》:Bill Murray 演嘅人,日日醒嚟都係同一天,前日做嘅嘢全部歸零,要由頭再嚟過。

AWS 而家指出,AI agent(人工智能代理)就係生活喺自己嘅 Groundhog Day 入面。Agent 每一步行動——呼叫工具(tool)、讀取結果、決定下一步——都必須將「成個故事」重新送畀模型:工具定義、開發者指令(developer prompt / system prompt)、成個 session 嘅全部歷史對話。原因好簡單:大型語言模型(LLM)本身冇內部記憶,佢只係根據你送入嘅 token(詞元)去預測下一個 token。每一次新請求對佢嚟都係第一次見到呢啲文字。

換句説話:coding session 行到第 20 turn,模型已經將第 1–19 turn 重新讀咗一輪,而且每個 token 都要你埋單。

Prompt Caching 點樣打破循環

Prompt caching(提示快取)嘅原理:模型讀 prompt 嘅時候,第一步係做 prefill(預填)——將每個輸入 token 處理,建立 key-value(KV)向量,呢個就係模型嘅「工作狀態」。Prompt caching 就將呢個狀態保存落嚟。下一次請求如果起始輸入 token 相同,服務直接載入已保存嘅狀態,只處理新嘅部分。

結果:重用部分按輸入價格嘅「一小部分」(a fraction of the input price)計費,唔使再全速計算。

隱式 vs 顯式:兩個都要用

呢篇教學文重點講咗兩種模式,AWS 建議一齊用:

隱式快取(implicit caching):由 Bedrock 自己決定邊個 prefix(前綴)可以重用,隨對話增長而自動處理。適合 agent 工作負載,唔使開發者手動標記。

顯式快取(explicit caching):由你嘅程式碼用 prompt_cache_breakpoint 標記邊個位置係可重用嘅共享內容,例如工具定義同開發者指令。適合跨 session、跨 helper agent 重用於同一套固定內容。

兩者可以同時啟用。OpenAI 模型喺 Amazon Bedrock 上運行時,呢兩種機制都適用。

對用家代表乜

呢篇係 AWS 自己嘅機器學習部落格技術教學文(2026-10-26 發布),唔係產品發布新聞。但佢講明咗一件事:OpenAI 模型現已可以喺 Bedrock 上使用 prompt caching,而呢個係用家可以主動設定嘅,唔係黑箱。

對於正在跑 agent 工作負載、每月為 token 輸入費用頭痛嘅開發者同企業,呢個係一個具體可操作嘅成本優化路徑。

阿調搞兩下:Agent 冇記性,但佢嘅記性費由你俾。而家你至少有得揀——開開、定唔開。開唔開,係你嘅掣。


本文為技術功能解説,基於 AWS Machine Learning Blog 原文,本站未獨立測試。

阿調|深度調教