什么是循环?
提示是一条单独的指令。循环是人工智能持续努力直至达成的目标。可以把它想象成一个递归目标:你定义一个目标,人工智能迭代执行直至完成。
提示会给出一个答案,然后等待你决定下一步该怎么做。而循环则会自行运行整个过程:
1 | DISCOVER → work out what needs doing |
这五个循环中有三个真正发挥作用,而人们往往在这三个循环中犯错。
验证是循环的核心。 如果没有对结果进行真正的检查,就不是循环,而是智能体在不断地重复自我确认。检查可以将重复转化为进步。它可以是一个严格的测试(“代码是否通过”),一个可衡量的条件(“数值是否大于 X”),或者一个模型用来评分的评分标准。如果没有门槛,就意味着智能体在给自己打分,而执行任务的模型评分会过于宽松。
状态是循环学习的关键。 每次循环,人工智能都必须记住之前尝试过的操作,否则就会永远重复同样的错误。一个真正的循环会在后台维护一个小的记录:哪些操作已经完成,哪些操作失败了,下一步该做什么。第二天的循环会从之前的记录继续执行,而不是从零开始。这也正是循环开始变得耗费资源的地方,我们稍后会详细讨论。
停止条件是保持程序正常运行的关键。 没有退出的循环会一直运行,直到成功、失败或耗尽你的账户余额。每个正规的循环都应该有两种停止方式:成功停止和硬性限制(例如“尝试 8 次后停止并报告”)。忽略这一点,你就会构建一个可以整夜空转却毫无意义的机器。
提示符向人工智能提供指令。循环则向人工智能提供任务、任务完成的判断方法以及放弃规则。
你真的需要吗?
大多数文章在告诉你循环是错误之前,就先向你推销它。以下是真正严谨的研究人员使用的测试方法。只有当以下四个条件全部成立时,构建一个循环才有意义:
这项任务至少每周重复一次。如果频率低于此,前期投入的成本就无法收回。即使是一次性任务,一个好的提示也能更好地完成。
某些机制可以自动拒绝错误的输出。 例如测试、类型检查、构建、代码检查工具或硬性规则。如果没有任何东西可以帮你发现问题,那么循环就会一直进行下去。
Agent可以自己完成所有工作, 而不是把一半的工作交给你。
“完成”是一个客观标准,而非主观判断。 如果质量取决于个人口味,那么最终还是由人来决定。
如果漏掉一个方框,就把它保留为手动提示。关于这个话题,说实话:循环工程是真实存在的,而且大多数人目前还不需要功能强大的版本。 每个人都能用得上的是轻量级版本,我们稍后会讲到。 但你应该知道界限在哪里。
为代码构建的版本
循环首先在软件领域流行起来,因为代码是世界上最容易验证的东西。测试要么通过,要么失败。结果无可辩驳,所以人工智能总是知道它是否已经完成。
编码循环被赋予一个目标和一个严格的检查方法:
1 | ▸ LOOP SPEC |
自动化(心跳)
这就是触发机制,它使程序循环运行,而不是一次性运行。您可以定义提示、频率和目标,程序会自动按计划运行,无需您手动启动。在 Claude Code 中,/loop会按指定时间间隔重新运行提示,/goal会保持会话持续运行,直到您设定的条件为真,钩子会在代理生命周期的特定节点触发命令,而将其推送到 cron 作业或 GitHub Actions 则可以确保程序在您关闭笔记本电脑后继续运行。系统会自动将结果发送给您,无需您四处检查。技能(可重复使用的指令)
与其每次运行都粘贴一大段指令,不如将它们保存为一个文件,循环每次都读取该文件:包括规则、要遵循的模式以及绝对不能触碰的内容列表。现在,自动化程序只需按名称调用技能即可,而重复性任务也能保持可维护性,而不是像以前那样被困在无人更新的计划表中,最终失效。分包商(让制图者远离检查者)
循环中最有效的结构技巧是将执行工作的代理与检查工作的代理分开。编写代码的模型往往会过于宽容,自行批改作业。第二个代理,拥有不同的指令,有时甚至在付出更多努力时会使用更强大的模型,可以发现第一个代理自己犯的错误。你的写手可以快速且成本低廉,而你的审校者可以缓慢而严格。这种分离是保证质量的关键所在。连接器(使其执行操作,而不是提出建议)
这就是代理程序直接给出“修复方案”和循环程序自动创建拉取请求、关联工单并在构建成功后通知频道之间的区别。连接器让循环程序能够在你的实际环境中运行,而不仅仅是描述它在实际环境中应该做什么。验证器(门)
测试、类型检查或构建过程会自动拒绝劣质代码。正是这一个模块决定了循环是能帮到你还是只会浪费你的钱。其他一切都是基础,而这部分才是真正让一切运转起来的关键。
把这些叠加起来,就得到了大型团队现在大规模运行的方案:成群的代理同时循环执行同一项任务,数量可能从几十个到几千个不等。一位工程师就曾利用这样的循环,在短短六天内将整个代码库从一种编程语言重写为另一种,而这项工作如果手动完成,则需要近一年的时间。这确实改变了严肃软件的构建方式。但它也存在一个演示中从未提及的隐患。
没人提及的代价
循环使用代币运行,而代币就是货币。问题不在于每一步都需要成本,而在于成本是如何累积的。
每次循环,智能体都会重新读取上下文:目标、代码、上次结果、失败之处。所有这些信息在每次迭代中都会再次输入模型,并且每次都会增长。运行十次的循环并非消耗十次提示,而是消耗十次不断增长的提示。这种提升质量的“创建者-检查者”技巧也使成本翻倍,因为现在需要两个模型而不是一个来读取数据。
1 | ▸ ROUGH COST OF ONE LOOP |
真正重要的指标(几乎没人关注)是每次接受更改的成本,而不是花费的代币数或运行的循环次数。如果循环返回十个结果,你丢弃了六个,那么你实际上是在做它原本应该节省的审核工作。如果接受率低于 50%,那么它的成本就大于收益。
循环也会悄无声息地失败。工程师杰弗里·亨特利称之为“拉尔夫·维格姆循环”:代理过早地判定任务完成,在未完成的工作上退出,循环却继续运行并消耗资源,却一无所获。如果没有一个能够强制终止工作的硬性限制,循环不会崩溃,而是默默地向你收取费用。
这就是为什么功能强大的版本只适用于那些预算充足且有相应约束措施的团队:迭代次数上限、代币预算、在繁琐步骤中使用低成本模型以及监控机制。如果你不具备这些条件,也不用担心,其核心理念只需极少的成本即可实现,而且无需任何设置。
真正有效的顺序
如果你真的要自己组装一个循环回路,顺序比工具更重要。那些最终成功投入生产的循环回路,其组装顺序都是一样的:
1 | 1. Get ONE manual run reliable first. |
跳过一些步骤,直接安排那些未经人工验证、尚未可靠的程序,正是循环程序在你睡觉时崩溃的原因。务必先验证一次,使其更加完善,然后再自动化。
自己构建一个基本循环(任何 LLM)。
你不需要编码代理就能体验它的工作原理。现在,你只需一个提示,就可以在任何 LLM 中手动运行一个简单的循环。诀窍在于同时给模型提供循环的所有三个部分:目标、严格的成功标准以及强制其在停止前进行自我检查的协议。
1 | ▸ SELF-CHECKING LOOP (paste into Claude or ChatGPT) |
看看会发生什么。这个模型会先起草,然后根据你的标准给自己打分,找出薄弱环节,再反复修改,直到真正达到标准,而不是随便给你一个看起来接近标准的东西。这就是一个循环。你刚刚用一个段落就构建了一个循环。
但请注意,这里仍然缺少什么,因为这正是接下来一切的关键所在。你就是触发器。你打开聊天窗口,粘贴提示信息,然后坐在那里看着它不断迭代。关闭标签页,它就消失了。没有时间表。没有“每天早上执行此操作”,也没有“收到邮件时醒来”。它无法主动联系你,因为它只在你查看它时才存在。
要获得一个能够按照计划自行运行、由真实事件触发、无需你时刻照看的循环,你通常需要回到之前提到的繁重领域:工具、托管、代码、门禁和账单。
当你处理真正棘手的任务时,这样做当然有道理。但对于99%的日常任务来说,早已存在现成的、极其简单的解决方案。
同样的道理,也适用于你的现实生活。
抛开代码和成本,剩下的就是一个简单而真正实用的概念:一个可以按计划或在特定事件发生时自动运行的任务,无需你记住或时刻守候。你不需要成为工程师也能做到这一点。你只需要为生活而非代码库构建循环即可。
还有一个免费选项,您只需用简单的语言描述即可创建。无需代码、无需托管、无需密钥、无需保持标签页打开,也无需担心构建顺序出错。
它叫做 Mira,存在于 Telegram 应用中,你可能已经打开了这款应用。你可以像给朋友发消息一样给它发消息,它运行的循环被称为“技能”。每个技能都包含一个真正的循环所需的所有部分:触发器、动作和独立运行的方式,只不过你不需要将它们连接起来。你只需要说出你想做的事情。
1 | ▸ SKILL |
这是一个真正的循环。一个时间触发器,一个跨越两个关联应用的多步骤操作,它独立运行并最终发送给你。而你却把它写成了一条消息。
米拉究竟能做什么
关键就在这里。Mira 并不是一个更智能的聊天机器人。它与 ChatGPT 的区别很简单:ChatGPT 负责回答问题,而 Mira 负责执行操作。你不会让它写邮件,而是直接告诉它发送邮件。你不会收到草稿工单,而是会在 Linear 系统中收到一个已分配负责人的正式工单。它会在后台默默地完成任务,并且每次对话后都能记住你。
它通过 Composio 连接到 500 多个应用程序(包括 Notion、Gmail、Google Calendar、GitHub、Figma、Stripe 等数百个应用),拥有跨会话和群聊的长期记忆,并且与模型无关,可以根据任务运行 GPT、Claude 或 Gemini 等模型。以下是它的运行结果。
工作
这就是循环思想发挥作用的地方,而且无需编写任何代码。
1 | ▸ SKILLS |
它能在几秒钟内让你快速了解 200 条消息的聊天记录,在你继续聊天的同时自动提交工单,让你在开会前就已经掌握了所有信息。在群聊中,它不仅会记住你个人的决策和任务,还会记住整个团队的决策和任务。
致创作者
这是大多数人低估的部分。Mira 在聊天室里一手包办了所有内容的制作。
1 | ▸ SKILLS |
语音留言输入,大约三十秒内即可发布完整内容。一条简短的文字信息可以生成六个平台原生版本。它能直接在聊天中生成图片和视频,编辑照片,更换背景,创建吉祥物和头像,甚至还能进行口型同步和动画制作。所有内容流程都集中在一个窗口中完成。
语音
Mira 将语音视为一级输入,这一点比听起来更重要。
▸ SKILLS
“Transcribe my voice messages into clean text.”
“Read this article back to me as audio.”
“Summarize the voice notes in this group chat into key points.”
它可以转录你的语音留言,朗读文本内容,理解群聊中的语音留言并总结讨论内容,并在你无法打字时作为免提语音助手使用。
同样的引擎,指向其他一切。
为了你的生命
1 | ▸ SKILLS |
一位督促你坚持到底的教练。一本真正记住你、并随着时间推移成为你日常打卡伙伴的日记本。无需额外应用,只需一张照片即可追踪卡路里消耗。基于你自身错误设计的语言练习。一款在价格合适时帮你抢购的航班监控器。一份剔除标题党内容的每日简报。
如何在两分钟内开始
打开 Telegram。前往米拉发送消息即可。免费访问立即生效。先试试以下方法之一:
1 | @mira, plan my week |
本文中的任何示例都会在你输入后立即进入循环运行。
这对你来说究竟意味着什么?
循环并非一种趋势,而是工作主体的转变。人工智能不再等待你手动执行每一步操作,而是开始自主完成整个任务。
话虽如此,但也不要盲目追求或强行把它塞进不该塞的地方。很多时候,你只会白白浪费钱。
我的建议是:先利用现有的免费资源,只有当你真正觉得这些资源不够用时,才应该开始考虑你真正需要什么。