微信文章解读
‹ 返回列表

从 Harness 到 Loop:阿福 Agent 小队如何处理持续涌入的线上 Badcase|QCon 上海

可跳过
Agent架构 Agent编排 评测设计
访问原文

📋 文章概况

一篇 QCon 上海演讲预告,介绍蚂蚁集团阿福 Agent 小队处理线上 badcase 的两阶段工程实践:先用 Harness Engineering 让 Agent 自主完成修复与验证,再用 Loop Engineering 组织内外双循环让系统持续处理新增问题。

💎 独特亮点

  • "Harness → Loop"两阶段演进框架:先解决"如何可靠修好一个 badcase"(Harness),再解决"如何持续修复不断涌入的 badcase"(Loop)。这是一个清晰的工程演进路径,区别于常见的"一次性搭建 Agent 工作流"思路。
  • 内外双循环分工:内循环负责诊断、修改、验证;外循环负责发现、归因、分派、结果回流。两组 Agent 小队共用同一套 Harness(工具、状态记录、执行约束、评测),失败时由内循环将证据返回外循环,经人工确认后改派。
  • 独立验证者设计:验证者不参与修改,独立确认目标问题是否解决,并检查是否对其他问题造成影响——防止"只优化评测分数"的自我欺骗。
  • 真实数据点:Agent 连续迭代 16 轮,改动经人工复核后上线。

🔧 可动手实践

目录点 你可以做什么 可动手程度
从自动化评测开始搭建小型 Harness 选一个边界清晰、结果可验证的任务(如某个可自动评测的 bug 修复),把开发、部署、评测、获取结果封装成 Agent 可调用的工具,先让单 Agent 稳定跑通修复-验证闭环 ✅可实现
长任务稳定性三约束 针对 Agent 长任务中的"提前结束、重复空转、上下文不足"问题,采用主 Agent 管目标 + 子 Agent 执行每轮分析修改的结构,并设置执行约束保障持续运行 ✅可实现
隔离开发数据与验证数据 在每轮修改后重新与当前基线对比,防止 Agent 只优化评测分数而非真正解决问题 ✅可实现
独立验证者模式 在修复流程中引入不参与修改的独立验证 Agent,确认目标问题解决且无副作用 ✅可实现
内外双循环 Loop 架构 当单次修复稳定后,用定时任务驱动外循环 Agent 小队持续接收、去重、归类、分派 badcase,内循环小队负责修复,失败时证据回流人工改派 ⚠️需补充(文中仅给出架构框架,未展开具体实现细节,需自行设计状态记录和证据交接格式)

工作流(最小实验):

  1. 选一个你项目中可自动评测的 badcase 类型(如某类 API 调用错误、输出格式错误)。
  2. 封装 4 个工具:开发(改代码)、部署(跑测试环境)、评测(跑自动化评测集)、获取结果(读评测报告)。
  3. 用主 Agent + 子 Agent 结构跑修复循环,设置最大迭代轮数和防空转约束。
  4. 每轮修改后强制与基线对比,记录是否真正解决问题。
  5. 稳定后加一个独立验证 Agent,不参与修改,只做确认和副作用检查。

🧠 可复用认知

  • Agent 工程化的演进顺序是"先可靠,再持续":单次任务的成功率是前提,持续处理能力是第二层问题。不要跳过 Harness 直接做 Loop。
  • 闭环的判定标准不是"能自动执行",而是三个检查点:能否持续执行、是否经过独立验证、失败后是否有明确的后续处理流程。
  • 自动化边界应显式设计:Agent 负责重复性执行,人保留约束制定、抽样复核、异常决策和最终上线责任——"不追求全自动化"本身是一种工程决策。

🏷️ 关键词

#Harness-Engineering #Loop-Engineering #badcase处理 #内外双循环 #独立验证者 #长任务稳定性 #Agent小队 #评测约束 #执行约束 #阿福

分类标签: Agent架构 Agent编排 评测设计

📊 价值判断

推荐等级: 可跳过(信息增量集中在"Harness→Loop 两阶段框架"和"内外双循环分工"两个概念上,摘要已完整传达;原文是演讲预告而非演讲实录,深度/实现细节维度缺失——长任务稳定性、证据交接、状态记录等关键机制仅有方向性描述,无具体做法或数据支撑,读原文无法获得可复现的工程细节)
最值得看: 无(预告性质,核心信息已全部在摘要中;若对完整演讲内容感兴趣,应等待 QCon 演讲实录或后续技术文章)
适合场景: 你正在规划 Agent 生产环境的 badcase 处理流程,需要确认自己的场景处于"先建 Harness"还是"需要 Loop"阶段时,可用本文的两阶段框架做初步判断;但具体实现需另找详细资料。