Context window 限制讓 AI 失智,試試這個工具

Context window 限制讓 AI 失智,試試這個工具

文章目錄(7 節)

先說結論

  • Roo Code 的迴旋鏢 Orchestrator 模式(也叫 Boomerang Tasks),可以避免 context window 限制問題發生。
  • 它會把任務拆成小任務,交給小幫手(子代理)獨立完成,每個小幫手都是新的視窗,滿滿的 200K 血條,最後再整合起來。
  • 只要指令要求詳細完整,基本上看著他們辛苦的交接和工作,很療癒。

有遇過這種情況嗎?

你開心地打開 Cursor(或其他 AI 開發工具),拉了一堆檔案進去,結果 AI 一開始表現很好,講著講著突然就開始失憶,忘記我要他做的事,然後開始失智,它開始亂使用工具、或者原地開始解釋你丟給他的程式碼、或說他完成了。

最難過的是,他甚至忘記了他的初衷,我們最初的那個約定:

開場就講好的那一句

「一率用繁體中文回答」

這時候身為 AI 渣男的我,就會重新開一個新視窗重來。

上下文限制,就是 AI 的短期記憶

AI 工具的上下文限制,它就像一個人的短期記憶一樣,一次能記住的東西有限。

現在 Claude 3.7 能處理 200k 的資訊量,Gemini 已經 1M了,但實際使用時,要用程式碼把它塞滿還不容易,而且往往還沒滿,就會開始出問題。

Gemini 1M 的大小因為夠大,其實也是滿好用的,畢竟瘦死的駱駝比馬大。按照目前發展速度,可能明後年,我們大家就都是 context 富翁啦。

但現在用 AI 工具,還是會遇到問題

因為現在的 AI Agent 開發工具都是一條龍處理任務,節奏通常是:

一條龍的節奏

搜集資料 → 生成程式碼 → 繼續下一個任務

卡住就重來

任務複雜或出現錯誤時,AI 不斷重試

閒不下來

AI 花式找事做

其實很容易 context window 就滿了,滿了就會開始失憶+失智。

一條龍處理任務時的上下文消耗 同一個上下文視窗被搜集資料、生成程式碼、不斷重試、花式找事做依序填滿,越過 200K 上限之後就開始失憶與失智。 一條龍 同一個視窗 搜集資料 生成程式碼 不斷重試 花式找事做 200K 上限 context window 滿了 開始失憶+失智

左右滑動看完整內容

一條龍模式把所有工作塞進同一個視窗,越過上限就開始失憶+失智

這部分其實 ClineRoo Code 做得很好,他有可視化的 context window 血條,讓你知道距離 AI 吃不下了還差幾行程式碼。

roo code context window 顯示
Roo Code 和 Cline 有提供目前的上下文使用狀況

解決方法:分工合作

  1. AI Agent 當 PM,負責規劃工作,然後派小弟去處理。

  2. 根據規劃的工作,指派任務給小弟處理。

  3. 小弟只處理自己的事,完成後跟 PM 回報結果。

  4. PM 根據回報結果規劃下一個工作,再派給新的小弟處理。

  5. 不斷 loop 直到任務完成或是 PM 爆了 XD(但這樣很難爆)。

Roo Code 的迴旋鏢模式實作了這個想法

Roo Code 的 Orchestrator 模式就是這套分工合作的具體實踐。它會自動幫你做這件事:

  1. 主任務會先分析你要做的事情,然後暫停。

  2. 自動把任務拆解,生成一個詳細、帶有足夠上下文的指令,再根據工作性質設定子任務的 mode。

  3. 小幫手完成後,會按照生成的指令內的要求,回報主任務想要的結果。

  4. 主任務再根據這個結果繼續後面的工作。

迴旋鏢模式的派工與回報迴圈 主任務先分析再暫停,把工作拆成帶足夠上下文的指令,分派給三個各自開新視窗、滿血 200K 的子任務;子任務照指令回報結果,主任務接手後規劃下一輪,形成迴圈。 分析後暫停 派工並指定 mode 回報結果 主任務規劃下一輪 主任務 · Orchestrator AI Agent 當 PM 拆解任務、生成詳細指令 帶足夠上下文,並指定子任務 mode 子任務 · Code 模式 寫程式碼 新視窗 · 200K 滿血 子任務 · Architect 模式 重構與規劃 新視窗 · 200K 滿血 子任務 · 其他 mode 依工作性質指定 新視窗 · 200K 滿血 按生成的指令回報結果

左右滑動看完整內容

迴旋鏢模式:主任務只負責拆解與整合,每個子任務都在自己的新視窗裡滿血開工
Roo Code 官方對 Boomerang Tasks 的示範影片

實際使用感受:我靜靜地看著你裝逼

實際使用 Roo Code 的 Orchestrator 模式時,會感覺 AI 很忙啊,一直在角色扮演:

  • 一下當 PM
  • 一下當 架構師 規劃
  • 一下當 工程師 寫 code

一個 AI cosplay 團隊在幫你工作。

  1. 你只要給出明確的指令,例如:寫一個 XX 功能的開發計畫書,越詳細越好。

  2. 設定 Orchestrator mode,然後請他按照開發計劃書內容完成功能。

  3. 他就會開始規劃,然後分派給最適合的 AI 小弟,例如:程式碼交給 Code 模式,重構交給 Architect 模式。

  4. 整個流程偶爾需要介入確認是否走在正確的路上。

Sonnet 不愧是親兒子!使用 Claude 3.5 / 3.7 API 我的體感上特別強,幾乎自動高效完成任務,很少需要介入也很少中斷反問我問題。其他模型就會容易迷失,很常遇到 o4-mini 就會問我:「我的小弟有沒有完成任務返回結果啊 XD」。

Roo Code 迴旋鏢模式官方文件

留言