Frontier · The Batch / DeepLearning.AI

循环工程:构建优秀软件的三个关键循环

吴恩达 (Andrew Ng) 描述了构建 AI 原生软件的三个相互关联的循环:代理编码循环、开发人员反馈循环和外部反馈循环。

本文由英文原文翻译。

亲爱的朋友们,

“循环工程”在 Boris Cherny(Claude Code 的创建者)和 Peter Steinberger(OpenClaw 的创建者)提及后在社交媒体上疯传,成为热门流行语。循环现在是我们如何让人工智能代理进行详细迭代以构建软件的关键部分。在这封信中,我想分享我用于构建 0 到 1 产品的 3 个关键循环,如下图所示。这些循环不仅指导我如何构建软件,还指导我如何决定构建什么软件。

循环工程:构建优秀软件的三个关键循环

**代理编码循环:**给定产品规范和可选的一组评估(即用于衡量性能的数据集),我们可以让 AI 代理编写代码、测试其工作并不断迭代,直到代码没有错误并满足其规范。这种闭环的想法在去年年底开始兴起,它改变了游戏规则,使编码代理能够在没有人工干预的情况下更长时间地高效工作。例如,周末,我正在为我的女儿构建一个应用程序来练习打字,我的编码代理可以轻松地工作大约一个小时,使用网络浏览器多次检查它构建的内容,然后再回复我,而不需要我的干预。

工程循环执行速度很快。每隔几分钟,编码代理可能会构建并测试软件的新版本。我经常听到开发人员正在寻找新方法来设计更有效的工程循环。这是一个活跃的发明领域!

开发人员反馈循环: 在此循环中,开发人员检查当前产品并引导编码代理对其进行改进。去年,许多开发人员(包括我)充当我们编码代理的 QA(质量保证)职能,手动查找错误,然后要求代理修复它们。但是,随着编码代理更能够测试自己的代码,我们需要花在这个功能上的时间显着减少。这使我们能够做出更高级别的产品决策,例如提供哪些关键功能、UI 需要改进的地方等等。

开发人员反馈循环在数十分钟到几小时之间的时间间隔内运行 - 这就是开发人员审查产品并提供反馈的频率。就打字应用程序而言,我对视觉设计、她在学习时可以解锁哪些猫服装(她喜欢猫)以及成人登录并引导孩子的学习体验的用户流程改变了几次想法。

当开发人员对要构建的内容有清晰的愿景时,将该愿景转化为编码代理要实现的规范仍然需要做大量工作。此外,在开发人员看到实现后,他们可能会更新(或者可能澄清)规范以引导其实现他们想要的目标。如果您发现系统反复遇到某些问题,那么为代理构建一组评估就变得很有用。

人工智能原生团队越来越多地使用人工智能来帮助塑造产品方向,例如,自动收集和分析使用数据、总结书面和口头客户反馈或进行竞争分析。然而,对于我参与的几乎所有产品,我认为人类比当前的人工智能系统具有显着的上下文优势——我们比人工智能系统更了解用户和产品必须运行的上下文——因此人类发挥着关键作用。许多人将人类的贡献描述为“品味”,但我更愿意将其视为人类具有上下文优势,因为这为我们提供了一条更清晰的道路来帮助人工智能系统变得更好。这也说明了为什么此步骤无法自动化:只要人类知道人工智能不知道的东西,就需要人机交互将这些知识注入系统。

**外部反馈循环:**这包括广泛的策略,例如向一些朋友寻求反馈、向 alpha 测试人员启动或通过 A/B 测试将代码投入生产。这些策略通常很慢,很少会花费不到几个小时,有时需要几天甚至几周。这些数据告知开发人员愿景,开发人员愿景进而继续推动详细的产品规范,进而推动编码代理。

随着编码代理加速软件开发,更多的工程师开始扮演部分产品管理的角色。对于许多正在成长为这个角色的工程师来说,最困难的部分是塑造产品愿景并在构建(弥合愿景和规范之间的差距)和获取用户反馈以发展愿景之间取得平衡。两者兼顾很重要!

我将在以后的信件中详细介绍如何做到这一点,但就目前而言,我发现工程师正在发挥更大的作用(就像产品经理和设计师现在做更多的工程工作一样),这令人鼓舞。

继续建设!

安德鲁

著作权归原作者及相关权利人所有。如需更正或删除, 请联系参识AI