这是一篇来自斯坦福大学、SambaNova Systems与UC Berkeley的联合研究,标题叫《Agentic Context Engineering: Evolving Contexts for Self-Improving Language Models》,中文可以译作"智能体上下文工程:为自我进化的语言模型构建动态语境"。
论文的核心主张只有一句话:与其修改模型的权重,不如让模型的"记忆"越来越好用。发表后,这篇论文在AI社区引发了不小的讨论,甚至有工程师直接喊出"微调已死"。原因在于,他们用一个更小的开源模型,通过这套方法,在公开榜单上追平了IBM用GPT-4.1构建的生产级智能体——而且没有花一分钱去做微调。
这个结果足够令人吃惊,值得认真拆解一遍。
先说一个被低估的问题:上下文工程
在深入ACE之前,需要先厘清一个术语:上下文适配(Context Adaptation),或者更通俗地说,"上下文工程"。
对LLM来说,提升性能有两条路:一条是改模型本身,也就是微调(fine-tuning);另一条是改模型的输入,也就是往prompt里塞更好的指令、策略、示例、领域知识。后者就是上下文工程。
这条路并不新鲜。每个认真做过RAG、写过system prompt、调过few-shot的工程师都在无意识地做上下文工程。它的优势显而易见:不需要动模型权重,改起来快、看得见、可以随时回滚。
但它的天花板在哪里?
研究者在论文里指出了两个老对手从未解决的根本缺陷。
第一个:简洁偏差(Brevity Bias)。 现有的提示优化方法,比如GEPA,倾向于把上下文压缩成简短的通用指令。这在某些场景里够用,但在需要大量领域知识的任务里,把"当分页API返回为空时停止循环"这类具体的工程经验浓缩成"请注意API规范",就等于把最有价值的东西扔掉了。
第二个:上下文崩塌(Context Collapse)。 这个现象更危险。当让一个LLM在每次更新时全量重写上下文,随着内容越来越多,模型会倾向于把它压缩成更短的摘要。论文里给出了一个实测数据:在AppWorld基准测试的第60步,上下文里有18,282个token,准确率达到66.7。但下一步,LLM全量重写后,上下文直接塌缩到了122个token,准确率跌到57.1,比什么都不做(基准线63.7)还要差。一次重写,把60步积累的所有经验清零了。
![]()
这就是ACE要解决的核心问题。
ACE的核心思路:把上下文当成一本会生长的手册
ACE的设计哲学可以用一句话概括:"上下文不是摘要,而是剧本(playbook)。"
背后有一个关键判断——人类和LLM的处理习惯恰好相反。人类喜欢高度浓缩的信息,靠背景知识和直觉填补空白;而LLM在接收详细、具体、丰富的上下文时,表现往往更好,它们有能力在推理时自己判断哪些内容有用。
所以,与其帮LLM"提炼",不如帮它"积累"。
ACE的架构由三个角色协同完成:
![]()
Generator(生成器)执行实际任务,产出推理轨迹——哪些步骤走通了,哪些报错了,哪些API用错了,完整记录。
Reflector(反思器)拿着这份轨迹做诊断。它会分析哪里出了问题,为什么出问题,正确做法应该是什么,并提炼出"关键洞察"。它还会对剧本里现有的每个知识条目打标签:这次有没有帮上忙?
Curator(整理器)把反思器的输出转化为结构化的"增量条目"(delta entries),然后用非LLM的确定性逻辑合并进剧本。合并、去重、修改计数器——全部不需要再跑一次大模型。
这里有一个细节值得注意:Curator在合并时用的是代码逻辑,而不是让LLM重写整个剧本。这直接消除了上下文崩塌的根源。更新是原子的、局部的,过去积累的内容不会因为一次新的迭代而消失。
增量更新与"生长再精炼"机制
ACE的防崩塌设计有两个具体机制,值得展开说。
增量delta更新:剧本由一条条带ID的知识条目(bullets)组成,每个条目记录着它被标记为"有用"和"有害"的次数。新的经验只会追加或修改已有条目,不会触发全量重写。多个增量可以并行处理,然后一次性合并——这也是为什么ACE的延迟能大幅低于传统方法。
生长再精炼(Grow-and-Refine):剧本会持续变长,但这不能无限膨胀。ACE用语义嵌入做相似度比较,把语义相近的条目合并或去重。这个精炼操作可以主动触发(每次delta之后),也可以懒触发(只有当上下文窗口快撑不住了才运行)。
论文里展示了一个AppWorld生成的剧本样例,里面分成"策略与硬规则"、"可用代码片段与模板"、"故障排查与陷阱"三个板块。比如其中一条写道:如果身份验证失败,按顺序尝试用手机号而非邮箱作为用户名,清除supervisor里的凭证,查阅API文档确认正确参数,不要使用变通方法(workaround)。
这不是一条抽象的"注意认证问题",而是一条可以直接指导下一次操作的具体经验。这正是ACE与之前方法的本质区别。
实验结果:更小的模型,顶尖的成绩
研究团队在两类任务上做了系统评测。
智能体基准(AppWorld):这是一个要求LLM通过Python代码调用API、完成日常任务的复杂环境,包含邮件、文件系统、音乐、支付等场景。任务分"普通"和"挑战"两个难度级别,公开榜单上有来自工业界的对标系统。
在离线适配(先用训练集优化剧本,再在测试集上评估)的设置下,ReAct + ACE的平均准确率达到59.4%,而ICL基准线是46.0%,GEPA是46.4%,提升幅度接近13个百分点。在线适配(边测试边更新剧本)的设置下,ACE达到59.5%,比Dynamic Cheatsheet高出7.6个点。
![]()
更重要的比较来自公开榜单快照(2025年9月20日)。榜首是IBM的CUGA,使用GPT-4.1,平均准确率60.3%。ACE使用的是DeepSeek-V3.1(一个更小的开源模型),平均59.4%,基本持平。在更难的test-challenge分项上,ACE的TGC(任务目标完成率)比CUGA高8.4个百分点。
金融领域基准(FiNER + Formula):这两个任务要求对XBRL格式的财务文件做实体识别和数值推理,需要大量金融领域的专门知识。有标注监督时,ACE在FiNER上比基线提升7.6个点,在Formula上提升高达18个点。平均来看,比GEPA高出10.9个点。
还有一个值得关注的数字:在无标注场景下(只靠执行反馈,没有人工标注的正确答案),ACE在AppWorld上仍然比基准线高14.8个点。这说明ACE的自我改进机制不依赖人工监督,代码执行的成功或失败本身就是足够强的信号。
效率的对比同样戏剧性。在离线适配上,ACE的适配延迟比GEPA低82.3%,需要的rollout数量少75.1%。在线适配上,比Dynamic Cheatsheet的延迟低91.5%,token费用低83.6%。
消融实验揭示了什么
论文花了不少篇幅做消融(逐步拆掉某个组件,看性能如何变化),结论比较清晰。
去掉Reflector和多轮迭代,只保留基本框架,AppWorld平均准确率从59.4%跌到55.1%,损失4.3个点。只去掉多轮迭代,保留Reflector,准确率56.8%,损失2.6个点。这说明Reflector的存在本身就有价值,而多轮迭代在此基础上进一步改善了质量。
在线适配中,加入"离线预热"(先用训练集跑一遍积累初始剧本,再进入在线测试)从56.1%提升到59.5%,增益明显。这个设置在实际部署中是可行的——对于确定的业务场景,提前用历史数据初始化剧本,然后在生产环境里继续在线更新。
这套方法的边界在哪里
论文在Limitations一节坦诚地讨论了几个限制。
ACE的表现强依赖Reflector的质量。如果模型本身连有效的反思都做不到,剧本就会被噪声污染。金融任务在无标注场景下,ACE和DC都出现了性能下降,就是因为缺乏可靠的信号,错误的反思反而干扰了剧本。
不是所有任务都适合这套方法。HotPotQA这类问答任务更需要的是如何检索和整合证据的高层策略,而不是堆砌细节;Game of 24这类有固定解法的游戏,一条规则就够了,多余的上下文只是负担。
ACE最适合的场景是:需要掌握大量领域知识、工具使用有很多细节、或者环境交互有很多特定经验值得积累的任务——恰好是当下企业级AI应用最集中的方向。
长上下文不等于高成本
这个点被论文单独拿出来讨论,因为它是一个常见的误解。
ACE会生成比GEPA更长的上下文,有人担心这意味着更高的推理成本。但作者指出,现代推理基础设施对长上下文做了专门优化——KV cache复用、压缩和卸载等技术让重复使用的上下文段不需要反复做prefill计算。随着长上下文推理的效率持续提升,ACE这类方法的摊销成本会越来越低,而它带来的性能收益会持续存在。
更深的一层含义是,上下文里存储的知识是"可解释的"。合规官员可以直接阅读剧本,知道AI学到了什么;发现问题时可以直接编辑或删除某条知识,而不是重新跑一遍微调。这在金融、法律、医疗等受监管行业里,是一个实质性的优势。
论文地址:
https://arxiv.org/pdf/2510.04618
END本文来自至顶AI实验室,一个专注于探索生成式AI前沿技术及其应用的实验室。致力于推动生成式AI在各个领域的创新与突破,挖掘其潜在的应用场景,为企业和个人提供切实可行的解决方案。
Q&A
Q1:ACE与传统prompt优化方法(如GEPA)的本质区别是什么?
GEPA等方法会不断重写整个提示,倾向于生成越来越简短的通用指令,以此来满足验证指标。ACE的不同之处在于它不做全量重写。每次迭代只生成"增量条目",用非LLM的代码逻辑合并进剧本,保证旧知识不会因为一次新的更新而消失。这直接解决了"简洁偏差"和"上下文崩塌"两个问题。
Q2:没有人工标注的正确答案,ACE怎么知道该学什么?
在智能体任务中,代码执行本身就是天然的反馈信号——代码跑通了、任务完成了,就是正确的;报错了、任务失败了,就是错误的。ACE的Reflector利用这些执行结果做反思,不需要人工标注。这使得ACE可以在生产环境中持续自我改进,而不需要持续的人工干预。
Q3:这套方法是否意味着模型微调变得不必要了?
不是这个意思,但它确实改变了微调的必要性边界。对于需要快速适配、知识需要频繁更新、或者领域知识量大但结构清晰的场景,ACE提供了一条更轻量的替代路径。微调在需要改变模型底层推理能力或语言风格时仍然有价值,但在"让模型知道更多领域经验"这件事上,ACE表明上下文工程可以做到原来认为需要微调才能实现的效果。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.