Brevity bias
prompt 优化倾向于生成短、通用、容易在验证集上复用的说明,却删掉领域规则、工具细节、边界情况和失败模式。
根因:把抽象和简短默认当作高质量 context 的目标。
从 brevity bias 与 context collapse 出发,理解结构化增量上下文为何能够支持 LLM 在不更新权重的情况下持续学习。
现代 LLM 系统的真实能力不只来自权重。系统提示词规定行为,memory 保存经验,检索证据补足事实;这些输入共同决定模型在当前环境里能做什么。
论文把 context adaptation 定义为:不改变模型参数,而是在训练结束后,通过修改指令、推理策略、示例、memory 或证据来改善行为。它与微调的区别不只是成本更低,还在于 context 可以被人阅读与审计、可以在运行时迅速加入新知识,也可以跨模型和 compound AI system 的不同模块共享。
长上下文模型和 KV cache 复用使这种路径越来越可部署。于是问题发生了变化:既然 context 要承担持续学习,它就不能只是一段静态 prompt,而必须能吸收新经验、保留旧经验,并允许系统知道哪条经验曾经有用或有害。
但“可以改 context”不等于“会正确地改 context”。ACE 的方法选择来自两个具体而非抽象的失败。
prompt 优化倾向于生成短、通用、容易在验证集上复用的说明,却删掉领域规则、工具细节、边界情况和失败模式。
根因:把抽象和简短默认当作高质量 context 的目标。
每轮让 LLM 重写完整 memory 时,一次过度压缩就可能覆盖之前所有积累,长期状态没有保护。
根因:用不可控的全文生成承担数据库式状态更新。
作者引用 prompt optimization 在 test generation 上反复收敛到近乎相同泛化指令的现象,例如“创建单元测试以确保方法按预期运行”。这句话没有错误,但它没有保存某个库、API 或故障类型的可执行知识。对多步 Agent、程序生成和专业推理而言,成功往往依赖大量难以压成一句原则的局部细节。
论文主张在知识密集和环境密集任务中,context 应是详细、包容、结构化的 playbook。LLM 可以在推理时选择相关细节,因此作者偏向“先保留、后选择”,而不是“先压缩、再执行”。
直接证据token 数量与准确率同步断崖式下降,说明更新操作本身可能破坏长期知识。旧信息是否存在,不能只依赖下一次 LLM 是否愿意复述。
ACE 不是泛泛地寻找“更好的 prompt”,而是在回答:context 能否成为一个持续生长、局部修订、质量可追踪、同时可控制冗余的长期知识结构?
作者据此提出三项对应设计:专门的 Reflector 把执行与经验提炼分开;incremental delta update 取代完整重写;grow-and-refine 在持续积累和冗余控制之间平衡。这里的创新逻辑是职责分离加受约束的状态变更,而不是简单增加调用次数。
ACE 的 context 由结构化 bullet 组成。每条 bullet 有唯一 ID、helpful/harmful 计数和一小块可复用内容。内容可能是领域概念、工具规则、代码片段、常见失败模式或排错步骤。
表示形式解决了“旧知识放在哪里”,还需要一个更新流程解决“新经验怎样变成可信的条目”。
携带当前 playbook 执行新 query,生成推理、工具调用或答案,并引用本次相关的 bullet ID。
结合结果、ground truth 或执行反馈诊断根因,提炼可复用 insight,给旧条目标注 helpful/harmful/neutral。
把缺失且不重复的 insight 转成小型 delta;附录示例中输出甚至被约束为 ADD,由系统补 ID。
Curator 之后,轻量的非 LLM 逻辑把新 ID 追加到 playbook,把已有条目的计数或内容定点更新。语义 embedding 用来检测重复。多个 delta 可以并行产生再批量合并。
本文解读真正防止 collapse 的不是 Reflector 更聪明,而是权限边界改变了:三个 LLM 角色都只能提出局部候选更新,没有任何一次生成可以用 122 tokens 覆盖 18,282 tokens 的全部状态。
grow 负责保留新 insight,refine 负责语义去重、更新 helpful/harmful metadata,并在 context 超出阈值时剪除陈旧或低价值条目。去重可在每个 delta 后主动执行,也可在触发长度上限后惰性执行。
在训练集上构造 playbook,再固定 context 到测试集做 pass@1。最多 5 个 epoch,同一 query 可被重复访问以继续修订经验。
按序处理测试样本:先用当前 context 预测,再利用这个样本的反馈更新,下一条样本立即读取新状态。
主实验统一使用 DeepSeek-V3.1 non-thinking 模式承担三个角色,batch size 为 1,Reflector 最多 5 轮。使用同一个模型是为了避免更强 Reflector 向较弱 Generator 转移能力,把收益尽量归因于 context construction。
| 任务 | 核心能力 | 指标 | 反馈条件 | 主要问题 |
|---|---|---|---|---|
| AppWorld | API、代码、环境交互 | TGC / SGC | GT 或执行成败 | 无人工标签能否自改进 |
| FiNER | 139 类 XBRL 实体 | Accuracy | GT 或弱自反馈 | 专业规则能否累积 |
| Formula | 金融概念与数值推理 | Accuracy | GT 或答案反馈 | 复杂领域策略能否复用 |
| DDXPlus / BIRD-SQL | 医疗 / Text-to-SQL | Accuracy / LLM judge | offline GT | 能否跨领域迁移 |
基线对应四种不同思路:ICL 塞入 demonstrations;MIPROv2 联合优化指令与示例;GEPA 用轨迹和反思做完整 prompt evolution;Dynamic Cheatsheet 在测试时累积并重写外部 memory;AppWorld 的基础 Agent 为官方 ReAct。
评估边界offline 在训练集优化、测试集评估;online 在统一打乱的测试序列上先预测再更新。GT labels = 否不代表完全没有反馈:AppWorld 仍有代码执行结果,FiNER 则缺少同样可靠的环境信号。
| 方法 | GT | Normal TGC | Normal SGC | Challenge TGC | Challenge SGC | 平均 |
|---|---|---|---|---|---|---|
| ReAct | — | 63.7 | 42.9 | 41.5 | 21.6 | 42.4 |
| Offline adaptation | ||||||
| ReAct + ICL | ✓ | 64.3 | 46.4 | 46.0 | 27.3 | 46.0 +3.6 |
| ReAct + GEPA | ✓ | 64.9 | 44.6 | 46.0 | 30.2 | 46.4 +4.0 |
| ReAct + ACE | ✓ | 76.2 | 64.3 | 57.3 | 39.6 | 59.4 +17.0 |
| ReAct + ACE | ✗ | 75.0 | 64.3 | 54.4 | 35.2 | 57.2 +14.8 |
| Online adaptation | ||||||
| ReAct + DC-CU | ✗ | 65.5 | 58.9 | 52.3 | 30.8 | 51.9 +9.5 |
| ReAct + ACE | ✗ | 69.6 | 53.6 | 66.0 | 48.9 | 59.5 +17.1 |
直接证据在线 ACE 在 test-challenge 的 TGC / SGC 从 41.5 / 21.6 提升到 66.0 / 48.9;离线无 GT 也达到 57.2 平均。可支持的准确结论是:在 AppWorld 有执行成败可用时,ACE 不依赖人工标签仍能形成有效 playbook。
比较限制论文把 ACE 59.4 与 2025 年 9 月 AppWorld 榜单的 IBM CUGA 60.3 放在一起,但脚注明确说 CUGA 只是粗略参照,不是同设置的方法学 baseline,不能据此断言 ACE 的完整 Agent 系统优于 CUGA。
| 方法 | 设置 | GT | FiNER | Formula | 平均 |
|---|---|---|---|---|---|
| Base LLM | Base | — | 70.7 | 67.5 | 69.1 |
| GEPA | Offline | ✓ | 73.5 | 71.5 | 72.5 +3.4 |
| ACE | Offline | ✓ | 78.3 | 85.5 | 81.9 +12.8 |
| ACE | Offline | ✗ | 71.1 | 83.0 | 77.1 +8.0 |
| DC-CU | Online | ✗ | 68.3 -2.4 | 62.5 -5.0 | 65.4 -3.7 |
| ACE | Online | ✓ | 76.7 | 76.5 | 76.6 +7.5 |
| ACE | Online | ✗ | 67.3 -3.4 | 78.5 +11.0 | 72.9 +3.8 |
无 GT online ACE 在 Formula 上提升 11.0 点,却在 FiNER 上下降 3.4 点。这一混合结果比平均值 72.9 更重要:没有 ground truth 或可靠执行信号时,模型可能把错误判断持久写入 context。
本文解读ACE 的“无标签”能力依赖自然反馈,而非依赖模型无条件相信自己。自进化系统首先要设计反馈通道,其次才是 memory 更新算法。
AppWorld 四项平均从 ReAct 的 42.4 开始:没有 Reflector 和 multi-epoch 时为 55.1;加入 Reflector、但没有 multi-epoch 时为 56.8;完整 offline ACE 为 59.4。在线设置不做 offline warmup 为 56.1,加入 warmup 为 59.5。基础条目式适应已经有效,Reflector、多 epoch 和 warmup 继续累积增益。
| 条件 | Reflector / 污染频率 | Accuracy | 相对 Base 70.7 |
|---|---|---|---|
| 较弱 Reflector | GPT-OSS-120B | 76.6 | +5.9 |
| 默认 Reflector | DeepSeek-V3.1 | 78.3 | +7.6 |
| 更强 Reflector | GPT-5.1 | 78.5 | +7.8 |
| 持续有害更新 | 每 1 step | 66.7 | -4.0 |
| 间歇有害更新 | 每 5 steps | 76.1 | +5.4 |
| 无有害更新 | Never | 78.3 | +7.6 |
结构化条目、metadata 和去重可以缓冲偶发噪声,但每一步都注入错误时会低于 base。ACE 解决“怎样保存经验”,没有自动解决“怎样保证经验为真”。
| 场景 | 对照 | ACE | Latency 变化 | 额外成本指标 |
|---|---|---|---|---|
| Offline AppWorld | GEPA: 53,898 s | 9,517 s | -82.3% | Rollouts 1,434 → 357(-75.1%) |
| Online FiNER | DC: 65,104 s | 5,503 s | -91.5% | Token cost $17.7 → $2.9(-83.6%) |
离线适应时,ACE 相比 GEPA 少用 80.8% input tokens 和 83.6% output tokens。主要原因是 ACE 不执行 GEPA 的候选 prompt validation loop,并用局部 delta 代替反复全文重写。
局部更新显著减少重复生成和验证,延迟、输出 token 与 rollout 开销下降。
playbook 更长,每 query raw input tokens 相比 GEPA 增加 117.4%,不是“所有 token 都更少”。
论文在 GPT-5.1 的 OpenAI prompt caching 实验中报告 91.8% input tokens 命中 cache,使 billed input-token cost 相对按原始 token 计费降低 82.6%。
成本边界ACE 把部署端成本押注在稳定 prefix 和高 cache 复用率上。若基础设施没有等价缓存、计费不同或上下文频繁变动,raw input 增长仍会转化为首 token 延迟、显存或费用。
跨模型附录在 GPT-OSS-120B、GPT-5.1、Llama-3.3-70B-Instruct 上替换全部角色而不改算法,均报告增益;较弱模型提升较小。这支持“不是 DeepSeek 专属 prompt”,但也反映算法上限仍受底层模型反思能力约束。
Generator 产生轨迹、Reflector 抽取 insight、Curator 形成 delta,任何系统性偏差都可能被持久保存。helpful/harmful 计数和去重主要解决组织问题,不能验证一条知识是否为真。
作者明确指出 HotPotQA 可能更需要简洁的检索与证据综合规则,Game of 24 可能只需要一条稳定策略。若模型已经掌握知识或任务规则很少,持续增长只会增加噪声和成本。
论文统一样本顺序保证实验公平,但没有充分回答概念漂移、矛盾经验、跨用户隔离和过期知识。生产系统还需要来源追踪、版本回滚、冲突检测、权限边界与人工审批。
条目式 delta 确实让上述能力比权重更新更容易实现,但当前实验没有完成隐私删除、合规审计或长期安全更新。评价时应区分数据结构提供的可行性和系统已经验证的能力。
ACE 是一种 test-time / post-training 的非参数自进化:经验不写回 weights,而是写入可持续更新的外部 context。
后续比较 TF-GRPO、AHE 与 SEAGym 时,可以沿四个坐标继续追踪:方法更新的是 weights、context、workflow/harness 还是 environment;反馈来自标签、reward、执行信号还是 self-judge;更新发生在离线、训练时还是测试时;错误更新能否定位和回滚。