自主运行的长期编码 Agent

@omarsar0
英语1个月前 · 2026年6月13日
207K
734
93
31
1.7K

TL;DR

AI 工程的未来正从简单的提示词转向稳健的控制系统。本指南介绍了如何使用验证器、循环和 Artifacts 来创建能够自主工作数小时的编码 Agent。

自主编码正从更好的提示转向更好的控制系统。重要的转变在于,工程师们正在学习如何将 Agent 包裹在目标、评估器、循环和制品中,让它们在人类停止输入后仍能继续工作。

这一点之所以重要,是因为大多数严肃的工程工作跨度很长:模糊的需求、隐藏的约束、部分失败、不断变化的上下文以及反复的验证。新的前沿是为 Agent 设计整个系统,使其能够规划、执行、检查工作、从错误中恢复,并在无需人类持续引导的情况下持续取得进展。

本文基于DAIR.AI Academy 关于自主长时间运行编码 Agent 的课程,我在其中实际演示了 Claude Code 的 /goal 模式、新的 /loop 命令、验证器、制品和编排模式。与 Codex 和 Claude Code 协作撰写。

从提示到目标设计

elvis - inline image

Claude Code 的 /goal 等功能背后的核心思想很简单:编码 Agent 仍然是执行者,但人类不再与其逐轮交互。相反,人类指定期望的最终状态、证明成功所需的证据、不得违反的约束条件,以及在可能的情况下,轮次和预算的限制。

这个目标更像是一份契约,而非更长的提示。一个薄弱的目标会让模型有机会提前停止、走捷径,或重新定义成功,使其在对话记录中看似合理,但在实际系统中却失败。而一个强大的目标则给 Agent 一个可以反复自我衡量的靶子。

工程判断力在此仍然至关重要。最好的目标编码了模型可能猜测的领域知识。对于一个研究实验,这可能意味着一个目标基准分数、一个留出评估集、一条必需的损失曲线,以及结果必须击败初始基线的规则。对于一个 UI 任务,这可能意味着一个截图参考、具体的布局约束,以及一个浏览器验证步骤。模型可以执行,但人类仍然定义“完成”的真正含义。

评估器成为第一等组件

elvis - inline image

长时间运行的 Agent 除了目标之外,还需要第二个角色。这个评估器可以是另一个编码 Agent、一个 LLM 作为裁判、一个脚本、一个测试套件、一个基准测试工具,或者它们的组合。关键的设计选择是将评估器与任务匹配。当成功条件明确时,确定性检查更优。类型检查、单元测试、lint 规则、集成测试和基准测试脚本,只要它们能清晰地表达条件,就应该使用。

当成功条件模糊时,Agent 评估器就变得有用。脚本可以告诉你测试是否通过,但它不容易判断生成的研究报告是否连贯、实现是否忠实地遵循了论文、或者 UI 是否符合设计意图。这正是评估器需要语言、判断力,有时还需要视觉能力的地方。

实际模式是,将确定性检查作为基础,将 Agent 评估作为更高级别的审查。这种组合减少了幻觉式的成功,同时允许在那些无法干净地适配到测试断言的自主任务上保持自主性。

验证器定义信任边界

elvis - inline image

更深层的观点是,只有当系统拥有可靠的验证器时,自主性才能发挥作用。一个编码 Agent 可以生成计划、实现功能,并解释为什么它认为工作已完成,但这种解释不应被视为证据。证据来自 Agent 无法轻易绕过的外部检查。

对于代码,验证器可以是测试套件、类型检查器、基准测试、浏览器运行、截图比较或可重现脚本。对于研究工作,它可以是留出评估集、复现的表格、损失曲线或优于基线的基准分数。对于设计工作,它可以是参考截图加上视觉审查步骤。验证器将长时间运行的 Agent 从一个自信的文本生成器转变为一个可以被信任并赋予更多时间的系统。

大多数走捷径的情况出现在这个边界上。如果验证器模糊,模型往往会满足任务最简易的解释。如果验证器过于狭窄,模型可能会过拟合于它,而忽略了更广泛的意图。因此,一个好的自主工作流需要分层验证:用廉价的确定性检查捕捉基本失败,用更高级的审查捕捉判断密集型失败。一些前沿模型已经能够实现一定程度的验证,但根据我的研究,仍然存在明显的 OOD 问题:如果你分配给 Agent 的验证任务超出训练分布,模型会表现得非常困难。

验证器仍然是一个开放的研究领域,但我预计会有更多公司开始在这一领域进行巨额投资。企业界对微调验证器的需求也很高。

循环让自主性持久

elvis - inline image

目标给 Agent 提供了方向,但循环让工作持续进行。这一区别很重要,因为模型往往在实际任务完成之前就停下来。它们可能达到轮次限制、失去信心、耗尽上下文,或者认为部分解决方案已经足够。

循环是外部控制系统。它被唤醒,检查进度,运行检查,将结果与目标进行比较,并在目标未达成时向 Agent 发送下一指令。在其最简单的形式中,这是 Ralph 循环模式,配合一个编码 Agent 和一个确定性条件。在更灵活的形式中,循环包括一个评估者 Agent,它可以推理进度并决定下一步该做什么。

长时间运行的自主性是控制层监督下的重复努力,而不是一次持续智能行为。Agent 仍然可能失败,但循环给系统提供了一种注意到失败并继续运行的方式,而不是默默地宣布胜利。

规划是专业知识的切入点

elvis - inline image

课程中最强烈的主题之一是规划仍然至关重要。你可以让一个前沿模型生成计划,但你仍然需要检查它、质疑假设,并在将任务交给自主循环之前使成功标准更加清晰。

这导致了一个有用的分工。更强的规划模型可以帮助定义目标、识别缺失的约束、构建评估。而不同的执行模型则可以在计划明确后运行实现。在实践中,这意味着工程师应该停止将“模型”视为单一选择。模型选择成了一种架构决策。

有些模型更擅长规划。有些更擅长执行。有些是更便宜的评估器。有些更擅长基于视觉的审查。一个好的编排器让你可以互换这些角色,而不是等待一个供应商提供完美的编码 Agent 接口。

视觉制品成为控制界面

elvis - inline image

当多个 Agent 在运行时,终端对话记录无法扩展。一旦你有几个会话并行工作,原始文本就成了理解进度的糟糕界面。

实时制品之所以重要,是因为一个包含损失曲线、基准分数、任务状态、截图、成本估算和近期决策的仪表盘,给人类提供了更好的监督自主性的方式。制品成为决定何时介入的控制界面,而不是事后生成的报告。

最有用的模式是将存储与呈现分离。Markdown 或 vault 可以存储持久的证据、日志、笔记、计划和结果。HTML 制品可以将这些状态渲染成可视和交互的内容。Agent 可以搜索 Markdown,而人类则可以监控制品。

对于 UI 和产品工作,视觉线索尤其强大。截图参考可以比文字更精确地传达设计意图,而具备视觉能力的评估器可以将实现与参考进行比较。这减少了常见的失败模式,即 Agent 在技术上实现了请求的组件,但忽略了间距、层级、对齐或产品感受。

会话挖掘将使用转化为记忆

elvis - inline image

另一个重要见解是,过去的 Agent 会话是工作流数据的丰富来源。如果一个 Agent 反复以相同方式失败、忘记运行相同的检查、使用了错误的路径、或重试了相同的损坏命令,这个模式不应埋没在日志中。

会话挖掘将这些记录转化为操作规则。Agent 可以扫描过去三十天的工作,发现重复出现的失败模式,并提出对项目指令、vault 知识或 Agent 规则的更新。这就是团队如何在不手动记住每个错误的情况下逐步改进其框架的方法。

目标是让本地环境更智能,而无需从头训练模型。Agent 指令文件中的一个小规则可以防止未来会话中的重复失败,尤其是当该规则针对特定项目时。

一个实用的操作模型

elvis - inline image

对于 AI 工程师来说,新兴的工作流程如下所示。

  • 在启动完整的自主运行之前,先从一个小型、廉价的子集开始。
  • 编写一个包含可衡量的成功标准、明确的约束条件以及(在可能的情况下)轮次或时间预算的目标。
  • 将执行者与评估者分离,使实现和判断不被合并到同一个角色中。
  • 在长时间运行循环开始之前定义外部验证器。
  • 尽可能使用确定性检查,然后对模糊标准进行 Agent 审查。
  • 要求提供证明制品,如日志、截图、基准曲线或变更文件。
  • 挖掘过去的会话,并将反复出现的经验教训提升为项目指令。

这就是使用编码 Agent 和工程化自主编码系统之间的区别。前者给你一次对话。后者给你一个框架。

仍然存在的问题

elvis - inline image

这些都不能消除困难问题。Agent 仍然会走捷径。它们仍然会提前停止。它们仍然会高估完成度。它们仍然会产生自信但薄弱的计划,尤其是在面对最近的论文、不熟悉的基准测试或训练分布之外的系统时。

更多地信任它们并不能解决这个问题。更好的控制系统可以。目标、循环、评估器、确定性检查、视觉制品和会话记忆,都是让自主性变得可观察和可修正的方式。

方向是明确的。编码 Agent 的未来取决于围绕更有能力的模型构建更好的编排,让工程师设计出 Agent 可以安全运行数小时甚至数天、并仍能产出可验证工作的条件。

一键保存

使用 YouMind AI 深度阅读爆款文章

保存原文、追问细节、总结观点,并在一个 AI 工作空间里把爆款文章沉淀成可复用笔记。

了解 YouMind
写给创作者

把你的 Markdown 变成干净的 𝕏 文章

图片上传、表格、代码块,往 𝕏 上手动重排太痛苦。YouMind 把整篇 Markdown 一键转成干净、可直接发布的 𝕏 文章草稿。

试试 Markdown 转 𝕏

更多可拆解样本

近期爆款文章

探索更多爆款文章