English Title: Externalization in LLM Agents: A Unified Review of Memory, Skills, Protocols and Harness Engineering
Authors: Chenyu Zhou, Huacan Chai, Wenteng Chen, Zihan Guo, Rong Shan, et al.
Institutions: Shanghai Jiao Tong University, Sun Yat-Sen University, Shanghai Innovation Institute, Carnegie Mellon University, OPPO
近年来,大语言模型(LLM)的演进呈现出一条清晰的轨迹:从“能力依赖于权重(Weights)”(如预训练和微调),发展到“能力依赖于上下文(Context)”(如Prompt工程、RAG、CoT),目前正快速迈向“能力依赖于基础设施(Infrastructure/Harness)”的阶段。
对于资深从业者而言,单纯依赖LLM的内部参数或上下文窗口在实际业务中面临着不可回避的痛点(即认知负担,Cognitive Burdens):
为了解决上述系统级不稳定性,业界开始通过外部环境来重塑Agent。这篇综述从认知科学中“认知工具(Cognitive Artifacts)”的视角出发,提出了一个统一的理论框架——“外化(Externalization)”,以此来解释当前Agent技术栈演进的根本逻辑。
本文突破了将大模型外围组件视为“工程补丁”的视角,系统性地提出了LLM智能体外化(Externalization)框架,将其拆解为四大核心维度:
论文中给出了一个非常直观的软件工程智能体(Coding Agent,如SWE-agent或OpenHands)的对比案例,深刻揭示了“外化”前后LLM面临的任务表征差异:
任务场景: 要求Agent在一个大型代码库中实现一个新Feature,运行测试,并提交Pull Request (PR)。
❌ 未外化的系统(仅依赖模型权重和Context):
模型必须将代码库的结构、项目的开发规范(如变量命名规则)、当前工作流的状态,以及各种Bash/Git工具的交互指令全都硬塞进一个极其脆弱且臃肿的Prompt中。一旦溢出或产生幻觉,任务直接失败。
✅ 深度外化的系统(Harness范式):
1. Memory外化: 持久化的项目记忆提供上下文检索,模型只需根据当前快照决定下一步。
2. Skills外化: 具体的代码库规范、PR提交流程被固化为可复用的Skill文档(SOP),模型只需调用 Submit_PR_Skill,不再需要凭空捏造长串Shell命令。
3. Protocols外化: 工具接口遵循严格的协议Schema,确保输入参数类型绝对正确。
4. Harness管控: 外部脚手架负责管理失败重试(Failure Recovery)、隔离执行环境(Sandboxing)并在提交PR前插入人类审批流(Human in the loop)。
结果: 底层基座模型(如GPT-4o或Claude 3.5)可能并没有改变,但系统稳定性获得了数量级的提升,因为“任务本身的表征方式”被彻底简化了。
从系统工程实现的角度,智能体架构的控制流可以抽象为以下范式转移:
传统的单次调用:$Output = LLM(Prompt, Weights)$
外化架构下的执行引擎:$State_{t+1}, Action_t = Harness\Big(LLM, Memory(State_t), Skills(Intent), Protocols\Big)$
文章详细拆解了这三大外化组件的技术路线图:
作为一篇统一综述(Unified Review),本文并未进行单一的定量实验对比,而是通过对过去3年(2022-2026预测)数百篇顶会论文和业界生产级框架(如LangGraph, SWE-agent, AutoGen, DeepSeek/OpenAI最新实践)的深度Mapping得出系统性结论:
本文最具启发性的观点在于引入了认知科学理论来指导工程实践,对资深AI架构师有极强的指导意义:
作者:Zhuohong Chen, Zhenxian Wu, Yunyao Yu, Hangrui Xu 等
机构:清华大学、亚利桑那大学、合肥工业大学
在知识型视觉问答(Knowledge-Based VQA, KB-VQA)任务中,模型面临着双重挑战:既要准确理解视觉内容(如细粒度实体或长尾知识点),又要动态引入外部百科知识来弥补自身参数化知识(Parametric Knowledge)的不足。当前主流的解决方案是检索增强生成(Retrieval-Augmented Generation, RAG)。
然而,现有的多模态RAG框架大多采用静态、线性的Pipeline设计(即“检索 -> 过滤/重排 -> 生成”)。这种范式存在几个致命的痛点:
本文突破了静态RAG的桎梏,从智能体(Agent)的视角将KB-VQA重新定义为一个多步序贯决策过程(Sequential Decision-Making Process)。主要贡献包括:
Answer(回答)、Image Retrieval(以图搜文)、Text Retrieval(文本检索)和 Caption(生成中间描述桥梁)四种高度协同的工具动作。为了直观感受 DBAgent 的多步决策能力,我们来看论文附录中展示的一个极其经典的“视觉理解+二次文本改写检索”多跳(Multi-hop)轨迹案例(对应 Figure 7):
输入问题: Which country does this animal come from? (附图为一只毛茸茸的白兔)
<think> The image shows a rabbit, but I cannot confirm its specific species, so I will use the image search tool. </think><image_search>。环境返回外部证据表明这是一只 Angora rabbit(安哥拉兔),但未提及起源国。<think> The retrieved content does not contain the origin country, but I now know it's an Angora rabbit. I need to generate a caption and rewrite the text query... </think><caption> 辅助表征,并调用 <text_search> 搜索“Angora rabbit originate from”。<think> The new evidence states it originated in Ankara, present-day Turkey... </think><answer> Turkey </answer> 并结束 (Early Stop)。点评: 这种复杂的链式调用(Image Retrieval -> Entity Identification -> Text Retrieval -> Final Answer)充分证明了基于当前 State 动态改写和判断信息不充分(Information Insufficiency)的能力是静态RAG所无法企及的。
DBAgent 的技术基石是将固定流程转为马尔可夫决策过程(MDP)风格的表述,并采用显式的 CoT(Chain-of-Thought)进行状态路由。
在 $t$ 时刻,模型维持的信息状态定义为:$s_t \triangleq (I, q, e_1, \dots, e_{t-1})$,其中 $I$ 是原图,$q$ 是问题,$e$ 是历史调用返回的证据包。基于 $s_t$,模型从预定义的动作空间 $\mathcal{A}$ 选择下一个动作:
$\mathcal{A} = \{ a^\text{ans}, a^\text{text}, a^\text{img}, a^\text{cap} \}$
特别地,Caption 动作专门处理“视觉实体不明确,难以直接构造文本Query”的困境,作为视觉向语言过渡的中间语义锚点(Semantic Anchor)。
SFT训练数据的质量决定了 Agent 的上限。作者设计了极具启发性的自动化 Pipeline:
Text Retrieval,后者引导至 Image Retrieval 或 Caption。在序列化训练中,轨迹展开为 $(u, a_1, o_1, \dots, a_n)$。为了避免模型死记硬背检索到的文本(Wikipedia 内容),作者严格屏蔽了 Observation (证据文本) 的 Loss,仅对模型的推理(<think>)和动作标签计算交叉熵损失:
$\mathcal{L} = - \sum_j \log p_\theta(t_j \mid t_{ 这里 $\mathcal{Y}$ 代表决策和推理 Tokens 集合。这一操作将优化目标从“预测最终答案”转移到了“学习决策与思考的策略”。
基于 Qwen2.5-VL-7B-Instruct 作为 Backbone 进行了训练与评测,重点对抗了两大 KB-VQA 数据集:InfoSeek 和 Encyclopedic-VQA (E-VQA)。
<caption> 形式化为一个不需要外界交互的内部动作,将其作为实体表征的降维手段来二次组合 Query,这是一个非常实用的工程Trick。作者:Shuai Zhen, Yanhua Yu, Roupei Guo, Nan Cheng, Yang Deng
机构:北京邮电大学、中国移动设计院、新加坡管理大学
大型语言模型(LLMs)在复杂交互式决策任务中展现出了强大的智能体(Agent)能力。为了突破静态示范数据的限制,强化学习(RL)被广泛用于通过环境交互和奖励反馈来优化LLM智能体的策略。然而,当前主流的LLM智能体架构在长期任务中面临着严重的理论与工程瓶颈:
本文提出了一种名为 STEP-HRL(Augmented Step-level Hierarchical Reinforcement Learning) 的全新框架,其核心思想是将LLM智能体从“依赖完整历史”的序列建模范式,拉回“依赖单步状态转移”的经典马尔可夫(MDP)范式:
在 ScienceWorld 的一个复杂任务中:“找到一个非生命物体,并将其移动到浴室的紫色盒子里。” 传统的ReAct智能体与STEP-HRL的表现形成了鲜明对比:
❌ 传统范式(ReAct):被冗长上下文淹没
Observation: 这个房间叫厨房。里面有空气、椅子、柜台、冰箱、微波炉、画、水槽...(海量物体描述)。你还看到:通往浴室的门(关闭)...
Action: open door to bathroom
Observation: The door is now open.
Action: go to bathroom
Observation: 这个房间叫浴室。里面有浴缸、玻璃杯、紫色盒子...
Action: focus on cup
... (随着步数增加,Prompt中堆积了大量过去的Observation和Action,导致后续规划极易混淆当前所处位置和目标)
✅ STEP-HRL范式:基于动态摘要的单步决策
高层生成子任务 1: Navigate to the bathroom and focus on any non-living object.
Observation: The door is now open.
局部进度更新 (Local Progress): 智能体在厨房,通往浴室的门已打开,尚未进入浴室。 [Route: kitchen]
低层执行 Action: go to bathroom
Observation: This room is called the bathroom. In it, you see...
局部进度更新 (Local Progress): 智能体现在在浴室,准备寻找非生命物体。 [Route: kitchen -> bathroom]
低层执行 Action: focus on cup
点评:可以看到,STEP-HRL的执行动作只依赖当前的 Observation 和 Local Progress。Local Progress 像一个内存寄存器,不断用最新的观察去刷新自身状态(抛弃不需要的历史),这使得输入LLM的上下文长度始终保持极简,决策逻辑极度清晰。
STAR框架是一个可扩展的模块化后训练管道,包含三个连续的阶段:
为了缓解训练数据稀缺的问题,研究团队对原子级的旅行要素(如出发地、目的地、日期)进行采样,并在本地沙盒中进行可行性检验 (Feasibility Checking) 以确保存在Ground-truth解。随后使用强模型 (如DeepSeek-V3.2-Exp) 将其回译为自然语言Query,并按约束条件的数量划分为 Easy, Medium, Hard 三个难度层级,合成了超1万条Query。
采用 Rejection-sampling 风格,使用强教师模型在合成Query上进行ReAct推理,仅保留严格格式化且获得“Success”的轨迹。得到约1.2K的高质量长轨迹(平均10.3K tokens, 9.2次工具调用)。以此微调Qwen2.5-Instruct系列模型(1.5B, 3B, 7B)作为RL的冷启动起点。
基于 rLLM 框架,主算法采用 GRPO,损失函数移除了 KL 惩罚并增加了 clipping bounds ($\epsilon_{\text{high}}$) 以鼓励探索。算法目标是最大化 Surrogate Advantage:
$$ \mathcal{J}_{\text{GRPO}}(\theta) = \mathbb{E}_{q \sim \mathcal{D}, \{\mathcal{H}^{(i)}\}_{i=1}^G \sim \pi_{\theta_{\text{old}}}} \left[ \frac{1}{G} \sum_{i=1}^G \sum_{j=1}^{|\mathcal{H}^{(i)}|} \frac{1}{|\mathcal{H}^{(i)}|} \min \left( \rho_j^{(i)} \hat{A}^{(i)}, \text{clip}(\rho_j^{(i)}, 1 - \epsilon_{\text{low}}, 1 + \epsilon_{\text{high}}) \hat{A}^{(i)} \right) \right] $$
为了全面探索设计空间,论文构建了一个包含从密集到稀疏的光谱化奖励函数体系:
本文通过严格的控制变量法,在 TravelPlanner (域内) 和 7 个知识密集型 QA 数据集 (域外 OOD) 上得出了7条极其具备实操价值的“Recipe”:
作者:Teng Xiao, Yige Yuan, Hamish Ivison, 等
机构:Allen Institute for AI (AI2), University of Washington
随着语言模型推理能力的提升,基于大语言模型(LLMs)的智能体搜索(Agentic Search)在处理多跳、多步推理任务时展现出巨大潜力(如 Deep Research)。目前,主流的范式是使用 RL + ReAct 框架对模型进行端到端优化,例如使用 PPO 或 GRPO 算法。
然而,这种方法面临着严重的瓶颈:极度稀疏的奖励(Sparse Outcome Rewards)。
为解决上述痛点,本文提出了 MR-Search(Meta-Reinforcement Learning Search),将智能体搜索建模为一个包含自我反思的 In-context Meta-RL 过程。它的核心思想是将原本孤立的多次尝试,串联成一个不断吸取教训的序列,让模型“学会如何反思和探索”。
Turn-level Grouped Relative Advantage 进行优化,实现了细粒度的信用分配,无需借助外部 Critic 模型(Critic-free),也不会带来额外的 PRM 推理开销。通过论文中的 Case Study 1,我们可以清晰地看到 MR-Search 模型在推理时是如何进行“反思-再探索”的:
洞察: 在传统 RL 中,输出 2015 就会被判定为 0 分,模型根本不知道如何改进。而在 MR-Search 中,错误的答案成为了下一步检索的基石,让试错过程成为有效的 Exploration。
在传统的基于 RL 的智能体搜索中,一次执行轨迹定义为 $a = (\tau_0, \alpha_0, x_0, \dots, \tau_{T-1})$。而在 MR-Search 中,完整的优化单元变成了 Meta-episode $y = (a_0, a_1, \dots, a_N)$。其中每个 $a_n$ 依赖于前面的上下文:
$$ a_1 \sim p_\theta(a_1 | a_0), \quad a_2 \sim p_\theta(a_2 | a_0, a_1) \dots $$
优化的元级别目标最大化 Meta-episode 的期望衰减奖励:
$$ \mathcal{J}_{meta}(\pi_\theta) = \mathbb{E}_{y \sim \pi_\theta} \left[ \sum_{n=0}^{N-1} \gamma^n f_{verifier}(o_n, o^*) \right] $$
为了在避免训练额外 Critic 价值模型的同时解决多步奖励分配问题,论文采用了基于 RLOO (Leave-One-Out) 的思路来估计优势(Advantage):
对于每个 prompt,采样一个包含 $G$ 个 Meta-episodes 的组 $\mathcal{G} = \{y_i\}_{i=1}^G$。模型计算该 Episode 在同一反思轮次 $n$ 相比于组内其他成员的相对奖励 $\tilde{r}_{i,n}$:
$$ \tilde{r}_{i,n} = r(s_{i,n}, a_{i,n}) - \frac{1}{G - 1} \sum_{j \neq i} r(s_{j,n}, a_{j,n}) $$
为引入长时间视野的信用分配,再计算一个累计的衰减优势(向后传播):
$$ A_{i,n} = \sum_{n'=n}^N \gamma^{n'-n} \tilde{r}_{i,n'} $$
最后,将估计出的无偏且稠密的 $A_{i,n}$ 结合到标准的 PPO Surrogate Loss 中进行参数更新。这使得每个 token 既能获取当前的 local step 反馈,又能被最终全局的 trajectory quality 所指导。
Qwen2.5-3B-Base 和 Qwen2.5-7B-Base。训练集融合了 NQ 和 HotpotQA。验证包括单跳(TriviaQA, PopQA等)和多跳复杂的综合数据集(ASearcher, Bamboogle等)。PPRM 和 StepResearch 方法。