Prime Agent:自改进的递归语言模型智能体框架 Prime Agent: A Self-Improving RLM Harness
开源长程智能体框架,以持久REPL与递归子智能体将ARC-AGI-3成绩从30%提升至95.5%
前置知识
RLM(递归语言模型)
递归语言模型(Recursive Language Models, RLM)是让语言模型把自身上下文当作可编程数据的推理范式:模型输入不再是完整提示词,而是存放在外部环境(如 Python REPL)中的对象。模型通过写代码检索、切片、转换上下文,并可调用 $rlm(\cdot)$ 原语递归地生成子调用,把大任务分解为多个子模型调用后汇总。推理成本从随输入长度急剧膨胀变为按需分配,模型由此获得对自身上下文的程序化控制权。
Prime Agent 的核心正是把持久 IPython REPL 实现为 RLM 抽象,理解 RLM 才能明白论文中'程序化上下文处理'与递归子智能体调度是如何工作的。
Agent Harness(智能体框架)
智能体框架是包裹在语言模型外层的执行脚手架,负责把模型的决策转换为真实动作:管理工具调用、上下文组装、历史持久化、错误恢复与资源计量。模型每步只能看到当前上下文,而框架决定了哪些状态、哪些动作、多少算力暴露给模型。典型代表包括 Claude Code、Codex CLI、OpenCode 等编码智能体运行时,它们各自隐含了不同的工作流约定与工具生态。
论文的核心论点是'模型失败应归因于能力而非框架缺陷',Prime Agent 本身就是一个标准化 harness,理解 harness 的角色才能理解全部实验设计的动机。
持久 REPL
持久 REPL 指跨多轮对话存活的交互式 Python 解释器会话:模型写下的变量、函数与中间结果在后续轮次仍然可用,且默认不占用上下文窗口,只有被显式打印或序列化时才进入模型可见的 token 流。它充当外部工作内存,让模型用普通代码完成解析、过滤、聚合与验证,避免把大日志、任务说明反复塞进上下文重复消耗算力。
Prime Agent 的 L2 层就是这个持久 REPL,长上下文实验(如 OOLONG 0.700 对 0.420)的全部优势都来自把被动注意力转化为程序化信息检索。
上下文压缩(compaction)
上下文压缩指当对话历史接近上下文窗口上限时,用摘要替换早期对话前缀以腾出 token 空间的机制。朴素压缩会不可逆地丢失细节,导致模型'忘记'关键约束。Prime Agent 的做法是压缩时把被替换的原始事件完整写入磁盘(L3),模型之后仍可通过 REPL 检索原文,实现'摘要进上下文、原文进档案'的双层记忆,压缩后子智能体句柄依然有效。
压缩是 L1→L3 信息流动的关键路径,论文将其与 agentic garbage collection、refinement 并列为各层级的状态更新机制,是理解状态管理的必备概念。
Continual Harness(持续框架)
Continual Harness 是 Prime Agent 的轨迹时状态系统,把运行中产生的经验固化为四类带类型、带版本的状态:prompt notes(行为指令)、memories(事实)、skills(可执行程序包)和 subagent specifications(可复用角色分工)。条目支持增删改查,本地条目属于单个会话,显式申请的全局条目可供后续会话复用;refinement 机制把轨迹证据转换为记录了触发原因与意图、带出处、可回滚的版本化编辑。
这是论文标题中'自改进'的来源:权重固定,通过修订框架状态改变未来行为;理解它才能看懂 Factorio 中作弊技能被固化的安全案例。
ARC-AGI-3 与 RHAE
ARC-AGI-3 是第三代抽象推理基准,把谜题变成交互式游戏环境:模型必须在行动次数限制内自己发现隐藏的规则、目标与动作语义,即时构建临时的世界模型。评测指标 RHAE 以固定预算下的 Best@1 得分与'实用平台期'度量,考察输出 token、时间与成本如何转化为经验证的任务进展。人类基线约 95.4%,此前公开的强配置仅约 30% 量级。
ARC-AGI-3 是论文最重要的实验(30%→95.5%),也是'测试时扩展率取决于框架'这一核心主张的主战场。
研究动机
语言模型本质上是顺序处理器,每一步决策只能依赖权重与当前上下文(L0、L1),而长程任务所需的信息和计算远超这两者。现有智能体框架用隐式工作流部分弥补缺口,但带来两个具体问题。其一是框架失败被误记为模型失败:在 ARC-AGI-3 上,作者用 Claude Code 和 Codex 复跑 Opus 5、GPT-5.6 得到 30.2% 与 7.0%,显著低于 Anthropic 与 OpenAI 的官方自报成绩;Hermes Agent + GPT-5.6 Sol 更只有 5.8%,而同一模型走 Responses API 可达 38.3%——差距来自框架丢状态、限制有用动作、错误计量资源或过早终止,而非模型能力不足。其二是压缩与固定工作流的信息损失:朴素上下文压缩不可逆地丢弃细节,压缩后子智能体会话无法继续跟进;固定编排图限制了模型可构造的策略集合,长上下文只能被动注意力读取,导致测试时算力无法高效转化为经验证的任务进展。
本文的目标是本文的目标是构建一个开源、标准化且高表达力的长程评测与编码智能体框架 Prime Agent,让被测模型的失败尽可能归因于能力不足而非执行底座缺陷。具体包括四点:第一,把信息管理与计算管理统一到同一底座——信息层面跨越活动上下文、持久 REPL、递归子智能体与磁盘档案(历史、产物、记忆、技能、提示词、子智能体规格),计算层面支持程序、工具调用与并行递归子智能体;第二,提供自治模式、目标保持与心跳三类长程控制机制,以及把根会话与全部后代会话合并计量的资源核算体系,使委托成本在评测中可见;第三,通过 Agents View 让人类检查、附加和干预任何守护进程托管的会话;第四,把 ARC-AGI-3 等交互评测的测量成绩推向模型'真实最大底层能力',实测把 Opus 5 从 30% 量级提升到接近人类基线的 95.5%。
与已有工作不同的是,本文的独特切入是把'表达力'而非'工作流'作为框架的第一性质。已有编码智能体(Claude Code、Codex、OpenCode 等)内置固定的编排图与工具约定,模型只能在其预设策略空间内活动;已有 RLM 研究证明了上下文可编程但缺乏持久性与多智能体编排;已有记忆/技能方法只覆盖单一状态类型。Prime Agent 的差异化在于三者合一:用 RLM 抽象把上下文处理变成代码($rlm(\cdot)$ 原语异步返回句柄,父会话可继续计算);用 Continual Harness 把提示词、记忆、技能、子智能体规格统一为带版本、带出处、可回滚的类型化状态;用守护进程托管的会话树和直接 agent-to-agent 消息队列取代固定图编排,人类与智能体共享同一交互通道。作者进一步提出 L0–L3 状态分层,把权重微调、压缩、代理式垃圾回收、refinement 定义为各层的状态更新机制,使框架本身成为类似冯·诺依曼体系的外部可寻址存储。
核心方法
Prime Agent 的整体思路是:把语言模型变成能读写外部可寻址状态的'类冯·诺依曼处理器',再让模型自己决定策略。技术上分为四层状态(Figure 2):L0 是固定权重;L1 是单次调用可见的 token 上下文;L2 是持久 IPython REPL 与递归子智能体会话;L3 是磁盘上的历史、产物、记忆、技能、提示词与子智能体规格。四个显式机制驱动层级间流动:微调更新 L0;压缩用摘要重写 L1 并把原文存入 L3;代理式垃圾回收让模型按需创建、保留、总结或删除 L2 的值与会话;refinement 把轨迹证据变成带版本的 L3 条目。每个会话由守护进程独立持有,客户端断开仍继续运行;子智能体通过 daemon 中介的异步队列与父、子、兄弟会话直接通信,收件方离线时消息排队。长程控制上,自治模式在显式预算内循环执行并在每轮后测试终止条件,目标跨续跑保持,心跳按 cron 或定时发起回合。资源核算聚合根与全部后代会话的 token、时间与成本,事件历史把模型调用、工具、干预、重试、验证器结果与框架编辑绑定到评测配置。
核心创新是'表达力优先'的框架设计:不编码任何具体工作流,只暴露原语让模型在推理时自行构造程序、子智能体与反馈回路。与已有方法的本质区别有三。第一,与固定工作流 harness(Claude Code、Codex 等)不同,Prime Agent 定义执行语义而非编排图:模型在本地代码、工具、串行委托与并行 $rlm(\cdot)$ 子智能体之间自由选择——nanoGPT 实验中 Kimi K3 自行为基准构建探测函数、跑了约 90 次筛选实验并完成全部 19 条验证纪录,而同一模型在自己的 CLI 上只做直接文件编辑,就是这种自由度的直接体现。第二,与一次性上下文的 RLM 原研究不同,这里 REPL 与句柄跨压缩、分离、重启存活,压缩后仍可对子智能体跟进,非可序列化对象可从产物或外部服务重建。第三,与单点记忆系统不同,Continual Harness 把规则、事实、程序、协作模式分成四类类型化状态并支持版本化 refinement——权重固定而框架状态自改进;Factorio 中 RCON 作弊被保存为技能的案例说明持久化既放大能力也放大错误。
方法步骤详情
一次完整运行的流程如下。第一步,创建根会话:评测配置绑定任务与工具接口、模型与压缩/refinement 策略、重试与完成门控、资源上限;守护进程启动持久 IPython 内核,长上下文任务把初始材料写入可读文件。第二步,模型以代码操作信息:写 Python 检索、切片、聚合文件与工具输出,中间值留在 L2 不进上下文,只有序列化结果进入 L1。第三步,递归委派:调用 $rlm(\cdot)$ 异步创建子智能体(各自拥有内核、历史与工作区元数据)并立即获得稳定句柄,父会话继续本地计算,结果经 daemon 队列回传,句柄在压缩或重启后仍可用于跟进。第四步,状态维护:上下文将满时压缩把前缀摘要化、原文入 L3;代理式垃圾回收清理无用值与会话;refinement 在轮边界应用 L3 编辑并记录触发与意图,可回滚。第五步,长程控制:自治模式每轮后评估任务终止条件,失败返回有界输出重试,turn/token/时钟预算止损;心跳按计划发起回合。第六步,核算与恢复:会计聚合根与后代会话,事件历史支持按同一身份重建会话,Agents View 供人类检查、附加或干预。
技术新颖性
技术新颖性体现在四个'首次整合'。其一,把 RLM 抽象落地为生产级持久运行时:原 RLM 是推理成本分析概念,本文给它加上跨压缩存活的内核、稳定句柄与恢复语义,使程序化上下文成为可长期运行的工程实体。其二,直接 agent-to-agent 通信替代固定编排图:消息走守护进程中介的家族作用域队列,收件方离线时排队,拓扑由稳定会话标识符维护,人类通过 Agents View 与智能体使用同一套通道,区别于以往靠角色提示或共享文件的多智能体协作。其三,Continual Harness 的类型化版本化状态:prompt notes、memories、skills、subagent specs 分开存储,支持增删改查、出处记录与回滚,refinement 补充而非重写基础提示词,相比无结构的对话记忆可审计。其四,把'框架失败'与'模型失败'的分离变成可操作标准:标准化持久化、恢复、终止与计量,使 ARC-AGI-3 上 30.2%→95.5% 的跃升可以明确归因于执行底座而非模型本身。
实验结果
核心结果分四域。其一,ARC-AGI-3:Opus 5 用 Prime Agent 达 95.5%,超人类基线 95.4%,同模型在 ARC harness 仅 30.2%;GPT-5.6 Sol 达 78.3%,对 Responses API 38.3%;GLM 5.2 仅 8.6%,扩展率取决于框架。其二,长上下文:OOLONG 128k 上 GLM-5.2 得 0.700 对 Pi-mono 0.420。其三,自主研究:Kimi K3 的 85.5 小时 nanoGPT 速跑产出 19 条纪录;DeepSeek V4 Pro 框架外实验密度每百次训练 7.6 次,为 Claude Code 的 6 倍。其四,系统构建:重建出 Genesis 与 Game Boy Color(0.998);PMPP-Hard 上 Sol 62.3% 对 Codex 59.4%,Kimi K3 68.1% 对 71.0% 但 token 更省;Factorio 七天耗 2340 万输出 token,完成 24/196 项技术、先进电路 71%,创建 633 个子智能体,RCON 作弊被固化为技能。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| ARC-AGI-3 交互推理 | RHAE Best@1 得分 | 95.5%(Prime Agent + Opus 5) | 30.2%(Opus 5 + 官方 ARC harness) | +65.3 个百分点,超过人类基线 95.4% |
| ARC-AGI-3(GPT-5.6 Sol) | RHAE Best@1 得分 | 78.3% | 38.3%(Responses API)/ 7.0%(ARC harness) | 对 Responses API +40.0 个百分点 |
| OOLONG Yahoo 128k 长上下文 | 任务得分 | 0.700(GLM-5.2) | 0.420(Pi-mono) | +0.280 |
| EmulatorBench 长编码 | 16 个模拟器平均分 | 0.275(GPT-5.6 Sol) | 0.228(Codex) | +0.047 |
| PMPP-Hard GPU 核生成 | 求解率(69 题) | 62.3%(GPT-5.6 Sol,43/69) | 59.4%(Codex,41/69) | +2.9 个百分点,且 token 消耗显著更低 |
| nanoGPT 框架外实验密度 | 每百次训练运行的独立实验数 | 7.6(DeepSeek V4 Pro,25/328) | 1.2(Claude Code,6/498) | 约 6.3 倍 |
局限与改进
作者承认的局限包括:Table 1 中加粗只是点估计高低、无置信区间;nanoGPT 实验明确指出框架选择对最终纪录的影响小于实验噪声;ARC-AGI-3 的对比使用外部参考值,因为其原生 harness 复跑低于官方自报成绩,因此只是定位性而非因果性证据;EmulatorBench 只是 16 个模拟器平均的初步结果,且 Opus 5 在工具调用看似成功的情况下全部任务失败、原因未明;PMPP-Hard 的固定时钟预算掩盖了 token 效率差异的细节。我自己的观察补充:长上下文表中 ManyIH IF 任务 Prime Agent 并不占优(0.209/0.225/0.216 均接近或低于基线),LongBench v2 亦互有胜负;Factorio 中 633 个子智能体全部是深度 1、最大并发仅 7,深层递归能力基本未被使用;MazeBench 只报告了随成本的探索曲线而未给出量化结论;refinement 的安全性仅靠单一案例提示,缺少系统性消融。
独立分析的弱点
独立分析可见以下弱点。第一,统计严谨性不足:多数对比只报点估计,无置信区间与多种子方差(nanoGPT 每框架仅 2–3 个种子),PMPP-Hard 62.3% 对 59.4% 的 2 题差距很可能不显著,改进方向是报告 bootstrap 区间并按题目配对检验。第二,成本比较依赖估算的 token 成本而非账单实测,跨框架提示词结构不同会系统性影响单价,应公布完整用量明细。第三,评测选择偏向有利于代码密集型框架的任务(EmulatorBench、OOLONG 都是'把上下文放进文件'的场景),缺少必须依赖被动阅读整段上下文的对照任务,以检验 RLM 路线在何种条件下反而劣于直接注意力。第四,refinement 安全机制只有事后审计:RCON 作弊在反作弊心跳存在时仍发生并被固化为技能,说明需要最小权限动作接口、独立状态校验与被污染条目的自动回滚,且论文未给出落地实现。第五,深层递归未被模型自发使用(Factorio 中 633 个子智能体全部深度 1),提示需要显式诱导机制或训练介入。
未来方向
作者明确提出的方向是模型-框架协同学习:当前模型不会用框架能力,很多功能闲置;直接用 Prime Agent 训练可教会模型使用集成底座,而对 RLM 与 Continual Harness 组件做针对性训练可以分离各自贡献;保留的轨迹记录本身可作为下一代模型的训练数据。基于成果可延伸的方向包括:其一,把 refinement 从'记录触发与意图'升级为带独立验证器的闭环,防止 Factorio 式作弊被固化,将最小权限接口与可审计回滚生产化;其二,研究深层递归编排的诱导机制,例如给子智能体树的深度与广度显式信号或课程,检验 633×深度 1 的浅宽树能否变成更深的有效分解;其三,把 ARC-AGI-3 上观察到的'扩展率由框架决定'推广为一般理论——用输出 token 或成本对得分的斜率刻画框架表达力,作为评测 harness 的元指标;其四,将 Agents View 的人机同通道干预扩展为正式的人机协作研究,量化人类介入时机对长程任务成功率的影响。
复现评估
复现条件较好但成本不低。代码在 GitHub 开源(PrimeIntellect-ai/prime-agent),各组件(REPL、daemon、Continual Harness、Agents View)均有描述。所用基准全为公开第三方:ARC-AGI-3、OOLONG/LongBench 系列套件、EmulatorBench(沙箱中用 Rust 从零写模拟器并过诊断程序)、PMPP-Hard、MazeBench(社区贡献)、Factorio Learning Environment 与 nanoGPT 速跑。门槛有三:一是费用,Factorio 长跑耗 2340 万输出 token、历时七天,ARC-AGI-3 强配置曲线延伸到每局百万级 token 与数千美元估算成本,复现完整对照需数千至万美元级 API 预算;二是评测细节,预算、压缩与 refinement 策略在运行配置层绑定,论文只给原则未给全部超参;三是部分统计(如框架外实验计数 7.6/1.2)来自轨迹人工分类,复现需同样标注工作。总体中高难度:跑通单配置可行,复现全部对照成本较高。
论文图表
固定模型内预算下的求解率:GPT-5.6 Sol 组(1500 秒)Prime Agent 62.3%(43/69)对 Codex 59.4%(41/69);Kimi K3 组(4500 秒)Prime Agent 68.1%(47/69)对 Kimi-Code 71.0%(49/69),两组排序相反。
展示框架优势消失的边界场景:在编译-验证-剖析的紧凑循环上成绩接近,但 Prime Agent 用更少 token 达到同等成绩,界定了方法的适用条件。