原文:https://dev.to/aws/how-a-strands-agent-took-claude-opus-5-from-30-to-9995-on-arc-agi-3-4kel(作者 @morganwilliscloud)
AI最热切、最乐观的倡导者们承诺一个未来:AI将通过自身的创新解决社会最重大的问题。AI系统将进行科学研究、发现新材料和药物、管理工程项目,并能自主执行通常需要多学科专家团队长期合作才能完成的复杂任务。
然而,要实现这一承诺,仅靠一个好的提示词和基础的上下文工程是远远不够的。AI系统需要长期追求目标、遭遇前所未见的情况、从失败的尝试中学习、调整策略,并在无人告知下一步该做什么时持续取得进展。
它们需要解决训练数据中未曾出现的新问题。那么,当今的模型是否真的具备这种能力?
这正是ARC Prize希望通过ARC-AGI-3基准测试来回答的问题之一。该测试将AI系统置于陌生环境中,不提供规则,甚至不说明目标。系统必须通过实验搞清楚环境的运行方式,并在这种模糊的情境下学会何为“成功”。
AWS的工程师们构建了一个智能体来挑战这个测试。该智能体使用Claude Opus 5和开源Strands智能体SDK,在一次8小时的运行中,完成了ARC-AGI-3全部25个公开环境中的所有183个关卡,相对人类行动效率(RHAE)得分达到99.95%,消耗了约830美元的token费用。NVIDIA最近也报告了类似成果,其AVO智能体同样使用Opus 5,在公开游戏集上获得了100%的RHAE。
相比之下,ARC Prize对Opus 5进行的标准评估得分为30.16%。模型本身是相同的,但围绕它的系统却截然不同。
这些结果为我们提供了一些数据,说明了智能体运行框架对于从AI中获得所需能力的重要性。模型本身提供推理和判断,而框架则为其提供了一个周围的系统来管理上下文、维护状态、采取行动、观察行动后果,以及总体上与其所处的世界进行交互。框架的构建方式至关重要,因此,拥有能够成功处理此类长期任务的系统的开源示例,使我们有机会超越基准分数,去理解哪些设计选择真正带来了差异。
我与AWS的Strands团队密切合作,并且整个Strands ARC-AGI-3框架都是开源的。那么,让我们深入其中,理解他们是如何做到的以及智能体是如何工作的。你可以在 GitHub 上自行查看代码。
ARC-AGI-3的公开与私有游戏集
在深入细节之前,我想先澄清一点,特别是对于那些不熟悉ARC-AGI-3工作原理的读者。
公开游戏集包含25个游戏,本质上相当于练习题,人类也可以玩这些游戏。但官方的ARC Prize排名来自私有的、保留的评估,而2026年的竞赛在Kaggle上离线运行,完全不允许使用托管的API模型。公开集为研究人员开发和试验其智能体系统提供了一套通用的环境,而竞赛则在全新的、未见过的环境中评估它们。
这场竞赛仍在进行中。但这并不意味着公开结果对我们毫无价值。在公开基准测试上取得优异成绩,仍然是判断哪些智能体架构能够成功处理长期任务的有力信号。
解析 Strands 基准测试框架
首先要知道,该智能体的系统提示中没有任何游戏知识。你可以直接查看代码来了解完整的系统提示。
可用的控制指令以通用标签形式呈现,例如 ACTION1、ACTION2 和 ACTION3,并未告知智能体这些动作的具体功能。棋盘本身也以原始数值形式表示。如果它想理解任何事物的作用,就必须尝试并观察结果。
这个提示在所有 25 个游戏中都是相同的,智能体对一个游戏的所有了解,都是通过游玩过程学到的。那么,如果它一无所知,智能体如何在游戏棋盘上进行导航呢?
在智能体进行第一次操作之前,基准测试框架会将初始棋盘状态写入游戏日志。然后,模型被要求读取该日志,分析棋盘,并决定它想要尝试哪些动作。
为此,框架为智能体提供了一小套用于处理文件和代码的工具。它可以读取文件、使用 grep 和正则表达式搜索文件、编写和编辑文件,以及执行 Python 代码。因此,即使棋盘没有直接粘贴到模型的提示中,智能体也可以通过检查日志并使用这些工具来开始理解它所看到的内容。
一旦智能体选择了一个动作,框架就会执行该动作,并将动作和结果棋盘状态记录回日志。随后,智能体可以检查变化,对其动作效果形成假设,并决定接下来尝试什么。每一个新动作和结果棋盘状态都为这段不断增长的历史记录增添了一份证据。
将历史记录保存在文件中,而不是持续添加到上下文窗口,这一点很重要,因为上下文很快会变得难以管理。单个棋盘尺寸是 64x64,在数百个动作之后,智能体可以积累一个庞大的交互日志,其大小可达数十兆字节。
智能体可以利用其工具来决定这些历史记录中哪些部分真正有用,进行自身的上下文工程。它可以搜索之前的操作,编写 Python 脚本来比较棋盘状态或寻找模式,保存关于它已发现内容的笔记,并利用这些发现来决定接下来尝试什么。
为何选择这些工具?
为智能体提供的这些特定工具并非凭空而来。该方法基于 PRO-LONG,该研究测试了一个使用 GPT-5.5 的智能体在 ARC-AGI-3 上的表现,随着它逐渐获得更多处理交互历史的方法,其表现如何变化。
当仅有对历史的只读访问权限时,智能体的得分为 23.1%。添加 grep 和正则表达式支持后,得分提升至 27.2%。但最大的飞跃发生在智能体获得 Python 访问权限时,得分被推至 38.3%。最后,增加文件读写和编辑能力使其得分达到 41.2%。
为智能体提供 Python 工具所带来的飞跃表明,仅仅让智能体访问其历史记录是不够的,但为其提供一种能够对历史记录进行程序化分析和提取洞察的方法,可以对性能产生显著影响。
在 Strands 的运行测试中,跨越 25 个游戏,该智能体为自己编写了 734 个脚本。其中一些脚本记录了智能体对游戏运作方式的部分理解。它构建了用于解释棋盘状态的解析器、用于表示状态的渲染器,甚至还有游戏机制模拟器。
该团队将其中一些脚本描述为小型世界模型。在 25 个游戏中的 10 个里,智能体导入了它之前编写的代码并在此基础上继续构建。
这些工具还在一个没有网络访问权限且写入被限制在智能体工作区内的 bubblewrap 沙箱中运行。这意味着智能体可以分析它通过自身交互所学到的一切,但它无法上网查找攻略或检查底层游戏实现代码。
相对人类行动效率
该智能体通过了所有关卡,并获得了99.95%的相对人类行动效率。相对人类行动效率衡量的是智能体解决游戏的效率,具体方法是将它在每个关卡所采取的动作数量,与首次玩游戏的人类玩家基线进行比较。这个指标通常比单纯看是否通关更重要,因为ARC Prize将AGI定义为“能够匹配人类学习效率的系统”。
一个智能体或许最终能通过采取数千个动作并穷尽所有可能性来解决游戏,但这并不能证明它拥有与人类相同的学习效率。相对人类行动效率帮助我们衡量这种差异。以下是Strands智能体的详细数据:
| 对比人类基线 | 关卡数 | 占比 |
| ------------------------------------ | -----: | ----: |
| 超越人类基线并达到满分 | 150 | 82.0% |
| 超越人类基线 | 7 | 3.8% |
| 匹配人类基线 | 3 | 1.6% |
| 使用动作数多于人类基线 | 23 | 12.6% |
在183个关卡中的160个里,Strands智能体的动作效率达到或超过了人类基线。并且在其中的150个关卡上,它的表现足以获得ARC Prize规定的单关最高效率分。因此,尽管总分是99.95%,但它在大多数情况下的表现都优于人类基线。你可以通过查看ARC Prize的方法论文档来了解具体的评分方式。
这意味着什么
这个在ARC-AGI-3上取得的结果令人印象深刻,并且由于它是开源的,我们都可以从其模式设计中学习。对我而言,关键要点是:外部化历史记录,赋予智能体查询该记录的工具,让它编写自己的代码将所学转化为洞见和可复用的程序,并让它自主决定哪些信息保留在活跃上下文里以供下次决策。
这段代码出人意料地易于理解,这些模式也可以直接应用到你正在构建的任何智能体中。不妨去看看。
- Strands 工具代码:https://github.com/strands-labs/benchmark-harnesses/tree/main/arc-agi-3-agent
- 相关 PR(其本身也是一篇出色的说明文档):https://github.com/strands-labs/benchmark-harnesses/pull/12
- 成绩单:https://arcprize.org/scorecards/8a10b024-3560-448f-ac31-becc48affe5b
- PRO-LONG:https://github.com/alexisfox7/PRO-LONG
- ARC-AGI-3:https://arcprize.org/arc-agi/3
原文:https://dev.to/aws/how-a-strands-agent-took-claude-opus-5-from-30-to-9995-on-arc-agi-3-4kel(作者 @morganwilliscloud)



