Recursive Language Models(RLM)2025 年 12 月提交、5 月 11 日最近一次修訂,提出透過給 LLM 一個可遞迴呼叫的 Python REPL,把可處理的 prompt 長度推到模型原生 context window 之上兩個數量級。Alex L. Zhang、Tim Kraska(MIT)與 Omar Khattab(Stanford,也是 DSPy 和 ColBERT 的作者)報告:在 GPT-5 上比壓縮方法高 26%,比帶子呼叫的 CodeAct 高 130%,比 Claude Code 在四項長上下文任務上高 13%,成本相當。微調後的 RLM-Qwen3-8B 比 baseline 的 Qwen3-8B 高 28.3%,在三項長上下文任務上接近 vanilla GPT-5。arXiv 2512.24601。

機制:父 LLM 跑在一個 Python REPL 裡,使用者 context 綁定到一個 `context` 變數,一個 `llm_query()` 函式衍生 RLM 子實例,每個子實例有自己的全新 REPL。讓整套東西跑通的關鍵架構選擇是:子的回應作為 Python 變數回傳,而不是作為文字倒回父的 context window。父透過變數引用來組成最終答案 —— 「我讓子呼叫 A 構造的字典」、「我讓子呼叫 B 列的國家清單」 —— 不用付重新把它們的輸出 inline 進去的 token 成本。這就是它跟 Anthropic Claude Code 的 subagents 以及 CodeAct 的結構性差別 —— 那兩個都是把文字回傳到父正在跑的上下文裡。

對應到現有的代理架構分類:ReAct(單代理加 tool loop)、CodeAct(代理呼叫使用者定義的 Python 函式)、Self-Loops(代理用摘要過的歷史重新提示自己)、Subagents(主代理透過文字委派給專家子代理)。RLM 最接近 Subagents,但語意是回傳符號引用而不是回傳文字。經濟性 claim —— 在四項上都贏的同時成本相當 —— 來自不把父上下文用子輸出撐爆,父只需要按引用拿到這些輸出。論文提出但還沒完全為生產環境解決的兩個問題:當一半推理藏在不透明的變數引用後面時怎麼 debug,以及子計算怎麼跨 run 做快取。

週一上手:如果你在運營一個代理系統,因為子代理或 tool 的輸出吃光了 context 預算而撞牆,符號回傳這個模式今天就可以落地,不必整套搬 RLM —— 把你的 subagent 呼叫包一層,讓父拿到的是「輸出存在哪裡」的 handle,而不是輸出本身。Qwen3-8B 的結果(同一個模型上 28.3% 的提升)說明這個技術是跟你正在跑的任何模型組合相加的,不限於前沿模型。看 Anthropic、OpenAI 或 Google 在未來兩個季度,是否會把符號回傳的語意吸進它們第一方的 subagent 產品裡。