@AnatoliKopadze: https://x.com/AnatoliKopadze/status/2068328135611822149
摘要
本文解释了在AI交互中使用循环的概念,即AI围绕一个目标进行迭代而非单次提示,并讨论了验证、状态和停止条件等关键组成部分。
查看缓存全文
缓存时间: 2026/06/22 03:35
轮询机制详解:Claude、GPT、Mira 以及真正有效的方法
AI 进入每个人的手中已有多年。大多数每天使用它的人,依然在用最慢的方式:手动输入请求、等待、修改、再问一遍,所有步骤全靠手工。
不是因为有更快的方式太复杂,而是因为没人向他们展示过那是什么样。
更快的方式是一个循环(loop),而它正是当下全球最顶尖 AI 工程师们最关心的一件事。这篇文章补上了那个没人解释的部分。
读完本文,你将比你的时间线上几乎所有人都更懂循环:它是什么、它在底层是如何工作的、什么时候值得用、什么时候是个陷阱、如何在 Claude 或 ChatGPT 里自己搭建一个基础的循环,以及那些值得在你日常生活中运行起来的简单循环。
在开始之前,请关注我的 X 并加入我刚创建的 Telegram 频道,我会在那里每天发布更多 AI 内容。两者都是免费的。
X - https://x.com/AnatoliKopadze
Telegram - https://t.me/kopadzemp
大多数人是怎么用 AI 的?
仔细看看这种“一次一个请求”的习惯,因为这就是全部的问题所在。每一步都经过你。你决定问什么,你判断答案,你决定下一步。除非你推一下 AI,否则它永远不会动;你一旦停下来,它也就停了。
这没问题,但它有一个天花板。你就是引擎。AI 只是你手中的工具,而工具本身不会做任何事。
还有另一种工作方式,这也是全球最顶尖工程师们改变他们构建方式的原因。你不是领着 AI 走每一步,而是给它一个目标,然后让它自己执行步骤。它会规划、做工作、检查自己的结果、修补薄弱之处,然后重复,直到达到目标。你退出来,工作继续推进。
Peter Steinberger @steipete·Jun 8 这是你本月的提醒:你早就不该再给编码 agent 下提示词了。 你应该设计循环来给你的 agent 下提示词。 1.8K 2.8K 19K 8.3M
两位最受尊敬的工程师,用不同的话说出了同一件事。大多数人看到这样的文字,心里其实不清楚它们在实践中到底是什么意思。所以让我们好好拆解一下。
什么是循环?
提示词是一条指令。循环是一个目标,AI 会一直朝着它努力,直到达成。把它想象成一个递归目标:你定义一个目的,AI 不断迭代直到完成。
提示词给你一个答案,然后等你来决定下一步。循环则自己跑完整个流程:
发现 → 弄清需要做什么 规划 → 决定怎么做 执行 → 做具体工作 验证 → 对照目标进行检查 迭代 → 还没达到?把结果反馈回去,然后重复
这五个步骤中有三个承担了所有实际工作,而人们也正是在这三个地方搞错循环。
验证是循环的核心。 如果没有对结果进行真正的检查,你得到的就不是循环,而是 agent 在重复地自说自话。检查把重复变成了进步。它可以是硬性测试(“代码通过了吗”)、可测量的条件(“数字大于 X 吗”),或者是一个模型需要达标的评分标准。没有关卡,就意味着 agent 在给自己批改作业,而那个做了工作的模型打分时实在过于仁慈。
状态让循环能够学习。 每经过一次,AI 必须记住它已经尝试过什么,否则它会永远重复同一个错误。一个真正的循环会在旁边保存一个简短的记录:完成了什么、失败了什么、下一步是什么。明天的运行就能从断点继续,而不是从零开始。这也就是它开始变得昂贵的地方,我们后面会谈到。
停止条件让它保持理智。 没有出口的循环会一直运行,直到成功、崩溃或花光你的账户余额。每一个严肃的循环都有两种停止方式:成功,以及一个硬性限制(“尝试 8 次后停止并报告”)。跳过这个,你就造了一台可能整晚空转却什么也得不到的机器。
提示词交给 AI 一条指令。循环交给 AI 一份工作、一个知道工作何时完成的方法,以及一个何时放弃的规则。
你真的需要一个循环吗?
大多数文章在告诉你什么时候使用循环是个错误之前,就先把它推销给你。以下是真正严肃的人使用的判断标准。只有当以下四个条件都满足时,循环才值得构建:
-
该任务至少每周重复一次。 少于这个频率,搭建成本永远收不回来。一次性任务用一条好的提示词就能处理好。
-
有东西能自动拒绝不好的输出。 测试、类型检查、构建、代码检查工具、硬性规则。如果没有东西能为你判定工作失败,循环只会空转。
-
agent 自己能从头到尾完成工作,而不是把一半交回给你。
-
“完成”是客观的,而不是主观判断。 如果质量取决于个人口味,那么人仍然更胜一筹。
有一个条件不满足,就保持手动提示词。关于这个主题最诚实的说法是:循环工程是真实的,但大多数人目前还不需要那么重的版本。每个人都能用的是轻量版,我们后面会讲到。 但你应该知道界线在哪里。
为代码而生的版本
循环最先在软件领域起飞,因为代码是世界上最容易验证的东西。测试要么通过要么失败,没什么好争辩的,所以 AI 总是知道自己是否完成了。
一个编码循环被赋予一个目标和严格的检查方式:
▸ 循环规格 目标:test/auth 中的所有测试通过,代码检查无警告,无类型错误。
每次迭代:
- 运行测试套件并读取所有失败
- 选取一个影响最大的失败
- 写出能修复它的最小改动
- 重新运行测试、代码检查和类型检查
验证:所有测试通过 + 零代码检查警告 + 零类型错误 停止条件:验证通过,或者达到 8 次迭代 停止时:总结改变了什么,以及还有哪些失败
在底层,一个真正的循环由五个构建块组装而成。Claude Code 和 Codex 现在都内置了这五个构建块。
1. 自动化(心跳)
这是让它成为循环而不是一次性运行的东西。你定义一个提示词、一个节奏和一个目标,它就会按计划运行,不需要你启动它。在 Claude Code 中,/loop 会在间隔后重新运行提示词,/goal 会让会话持续进行直到你写的条件为真,hooks 会在 agent 生命周期的各点触发命令,把它推到 cron 任务或 GitHub Actions 上,它会在你合上笔记本电脑后继续运行。结果会直接通知你。你不需要主动去检查。
2. 技能(可重用的指令)
你不会把一整套指令每次粘贴到运行中,而是把它们保存为一个文件,循环每次都会读取它:规则、要遵循的模式,以及一个绝对不能触碰的硬性列表。现在自动化只需要按名字调用技能,这个重复的任务就能保持可维护性,而不会腐烂在没人更新的计划表中。
3. 子 agent(让制造者和检查者分离)
循环中最有用的结构技巧是,把做工作的 agent 和检查工作的 agent 分开。写代码的 model 给自己批改作业时总是太仁慈。第二个 agent,使用不同的指令,有时用更强的 model 和更高的输出质量,能抓住第一个 agent 说服自己忽略的问题。你的“写手”可以又快又便宜,你的“评审”可以又慢又严格。这种分离就是大多数质量的来源。
4. 连接器(让它能行动,而不是只建议)
这就是“建议修复方案”的 agent 和“自己打开拉取请求、关联工单、并在构建成功后在频道里 @ 你”的循环之间的区别。连接器让循环能在你的真实环境中行动,而不是仅仅描述如果它能做会做什么。
5. 验证器(关卡)
能自动拒绝糟糕工作的测试、类型检查或构建。这是能决定循环是帮到你还是烧你钱的那个模块。其他都是管道。这一个环节让它变得真实。
把这些堆叠在一起,你就得到了大型团队现在大规模运行的东西:成群的 agent 在对同一个任务循环,一次几十甚至上千个。一位工程师用这样的循环在大约六天内将一个完整代码库从一种编程语言重写为另一种,这个工作量手动完成需要将近一年。这是真正的软件构建方式的改变。而且它有一个演示从未展示过的代价。
没人提到的成本
循环消耗 token,而 token 就是金钱。问题不在于每步都有成本。问题在于成本如何复合增长。
每次循环经过一圈,agent 都会重新读取它的上下文:目标、代码、上一次的结果、失败的内容。整个堆栈每次都会被重新送入模型,并且每经过一次它都会变大。一个循环运行十次,不是十个提示词的成本,而是十个提示词,且每个提示词中的上下文都在变大。那个提升质量的“制造者与检查者”技巧也会让账单翻倍,因为现在有两个模型来读取工作结果。
▸ 一个循环的大致成本 单个 agent,一个中等任务: ~50,000 – 200,000 个 token 每次迭代重新发送的上下文: 每轮都会增长 并行运行的一组 agent: 以上所有乘上倍数
真正重要的指标,几乎没人追踪的指标,是每个被接受变更的成本。不是消耗的 token 或运行的循环次数。如果循环给你十个结果,你扔掉了六个,那你还是在做它本来应该帮你省掉的检查工作。接受率低于 50%,它的成本就超过了它带来的收益。
循环也会悄无声息地失败。工程师 Geoffrey Huntley 称之为“Ralph Wiggum 循环”:agent 过早地认为自己完成了,在一个半成品上退出,然后循环继续运转并持续花钱,却什么都没产出。如果没有一个能判定工作失败的硬性关卡,循环不会崩溃,它们会悄无声息地给你计费。
这就是为什么重版本属于那些有预算和护栏(迭代上限、token 预算、在无聊步骤上用便宜模型、监控)的团队。如果你不是这种情况,你也没错过什么——核心思想可以以一小部分成本和零搭建工作来运行。
真正有效的顺序
如果你真的要搭建一个循环,顺序比工具更重要。那些能上线并存活下来的循环,其团队都是这样做的:
- 先让一个手动运行可靠。
- 把它变成一个技能(保存指令)。
- 把技能包进循环里(加上关卡和停止条件)。
- 然后才把它放到计划表上。
跳过上面几步,去计划一个你还没有手动验证可靠的东西,这正是循环在你睡觉时爆炸的原因。先证明一次,把它加固,然后再自动化。
自己搭建一个基础循环(任何 LLM)
你不需要编码 agent 就能感受这个工作原理。你现在就可以在任何 LLM 中手动运行一个简单的循环,只需要一个提示词。诀窍是让模型同时拥有三个循环部分:一个目标、严格的成功标准、以及一个强制它在停止前先自我检查的协议。
▸ 自检循环(粘贴到 Claude 或 ChatGPT 中) 你将在一个循环中工作,直到任务达到标准。
任务: [精确描述你想产出的内容]
成功标准(严格,不容混淆):
- [标准 1]
- [标准 2]
- [标准 3]
循环协议,每轮重复:
- 规划 - 说出下一步的单个步骤。
- 执行 - 产出或改进工作。
- 验证 - 针对每个标准对结果进行 1-10 评分。 要极其诚实。列出具体还薄弱的地方。
- 决定 - 如果每个标准都达到 8+,输出“完成”并停止。 否则输出“继续迭代”并继续,优先修复 最薄弱的点。
规则:
- 在每个标准都达到 8 或更高之前,绝不能说完成。
- 每次通过必须修复上一次验证中最弱的分数。
- 不要问我问题。做一个合理的假设,记录下来, 然后继续。
开始。运行循环直到输出“完成”。
看看会发生什么。模型会起草、根据你的标准给自己评分、找到薄弱点、然后重写,一遍又一遍,直到它真的达到标准,而不是把第一个看起来差不多够格的结果扔给你。这就是一个循环。你只用一段话就搭建了一个。
但注意,还缺了点什么,因为这是接下来内容的核心。你是触发器。你打开了聊天窗口,你粘贴了提示词,你坐在那儿看着它迭代。关掉标签页,它就没了。没有计划表。没有“每天早上都做这个”,没有“收到邮件时唤醒”。它没法主动联系你,因为它只在你看着它的时候存在。
要获得一个能自己运行、按计划表、由真实事件触发、且不需要你监督的循环,你通常需要进入前面提到的那个重型世界:工具、托管、代码、关卡和账单。
当你处理真正繁重的任务时,这很合理。但对于 99% 的日常任务,已经有了一个现成的、极其简单的解决方案。
同样的想法,适用于你的真实生活
去掉代码和成本,剩下的就是一个简单而有用的概念:一个能自己运行的任务,按计划或在某件事发生时自动触发,不需要你记住它或在场。你不需要是工程师。你只需要为生活而非代码库而建的循环。
有一个免费选项,你可以用简单的语言描述来创建。无需代码、无需托管、无需密钥、无需开着标签页、无需搞错构建顺序。
它叫 Mira,就在你可能已经打开的 Telegram 应用里。你可以像和朋友聊天一样发消息给它,它运行的循环叫做“技能”(Skill)。每个技能悄悄拥有了一个真正循环需要的所有部分:触发器、动作、自我运行的方式,只是你不用去连接它们任何一个。你只需要说出你想要什么。
▸ 技能 “每个工作日早上 7 点,检查我的 Gmail 和 Google 日历。 给我发一条简短摘要:最重要的三个会议,收件箱里的 紧急事项,以及一件我本应跟进但还没做的事。控制在 120 词以内。”
这就是一个真正的循环。时间触发器,跨两个连接的 app 的多步动作,自动运行,结果送到你面前。你只写了一句话。
Mira 实际能做什么
这就是关键所在。Mira 不是一个更智能的聊天机器人。它和 ChatGPT 的区别很简单:ChatGPT 回答,Mira 行动。你不是让它写邮件,你是告诉它发送邮件。你不是得到一张工单草稿,你是得到一张在 Linear 中已经分配了所有者的真实工单。它做具体的事,在后台,并且它会记住你在每次对话之间的事。
它通过 Composio 连接 500+ 个 app(Notion、Gmail、Google 日历、GitHub、Figma、Stripe 以及几百个其他的),它有长期记忆,可以在不同会话和群聊中保持,并且它不依赖特定模型,会根据任务运行 GPT、Claude、Gemini。下面是它能变成的样子。
用于工作 这就是循环的想法在不写一行代码的情况下发挥价值的地方。
▸ 技能 “每个会议前一小时,给我发一条提醒,附上我们上次与那个人 对话的背景和决策。”
“当我把一条消息转发到这里时,把它变成一张 Linear 工单, 设置正确的优先级并分配负责人。”
“每周五下午 4 点,收集团队的任务状态和指标,在聊天中 发布一份整洁的周报。”
“用 5 个要点概括我在这个群聊里离开时错过的一切。”
它能几秒钟内概括一条 200 条消息的对话,在你谈话的同时提交工单,在开会时已经了解情况。在群聊中,它记得团队(而不仅仅是你的)的决策和任务。
用于创作者 这是大多数人低估的部分。Mira 能在聊天里端到端地创作内容。
▸ 技能 “我会发一条语音消息,包含一个原始想法。把它变成一篇 完整帖子和一段文案及标签。”
“把这个想法写成适合 X、Instagram、LinkedIn、邮件、 以及新闻简报的版本,每个版本格式正确。”
“为这篇帖子生成 3 张图片选项。”
“把这图片转换成一段用于我的 Telegram 频道的短视频。”
语音消息进来,约 30 秒后成品帖子出去。一条简报变成六个平台原生版本。它能生成图片和视
相似文章
@sunaiuse: https://x.com/sunaiuse/status/2069077492267098483
这篇帖子解释了为什么AI开发者应该使用循环而非单一提示,并强调了合适的触发条件、验证机制和停止条件,以构建可靠且成本效益高的AI系统。
@akshay_pachaar: https://x.com/akshay_pachaar/status/2069118430582866051
本文解释了AI代理中的循环工程概念,强调核心循环很简单,但关键工作在于模型周围的“束具”,包括知道何时停止以及防止上下文腐败。
@0xCodez: https://x.com/0xCodez/status/2064374643729773029
一个包含14个步骤的循环工程路线图,指导开发者从手动提示AI编码代理到设计自动化系统,由系统自行处理提示、验证和迭代。
@mvanhorn: https://x.com/mvanhorn/status/2068426104088748331
一篇解释AI编码工具(如Claude Code和Codex)中goal、loop和schedule命令区别的文章,并提供了15个实用的循环示例,用于运行自动化任务。
@mvanhorn: https://x.com/mvanhorn/status/2063865685558903149
本文解释了AI编程中'循环'的概念,即开发者编写程序来提示编码代理,而不是手动提示,这一概念由Peter Steinberger和Boris Cherny推广开来,并讨论了这种转变如何代表了AI辅助开发中的新抽象层。