6 月底,一条帖让整个 AI 开发者社区坐不住了。
@hanakoxbt 在 X 上大写加粗地喊出:
"KARPATHY JUST KILLED THE PROMPT ERA WITH A SINGLE DOCUMENT"
「Karpathy 用一份文档终结了 prompt 时代。」
配图是一份据说来自 Karpathy 的「官方规则文档」,列了 9 条铁律,句句戳中开发者的痛点——
"prompts are easy. loops are hard."
「写 prompt 容易。设计 loop 难。」
14 万人看了这条帖。1800 人存了书签。评论区直接分裂成两派:一边是"这才是正确的打开方式",另一边有人直接开怼——
"Provide the real link. this document is fake."
「给出真实链接。这文档是假的。」



▲ @hanakoxbt 的帖文引爆全网:14 万阅读、761 赞、1800 书签。配图列出了 agent loop 的核心规则
那这份文档到底是真是假?
答案比所有人想的都有意思。
三月的某个晚上,Karpathy 按下了一个开关
故事的源头要回到 2026 年 3 月。
当时 Karpathy 在搞他的老项目 nanochat——一个极简的 LLM 训练框架。某一天他突然发了条帖,语气很随意:
"I now have AI Agents iterating on nanochat automatically, so I'll just leave this running for a while, go relax a bit and enjoy the feeling of post-agi :)"
「我让 AI agent 自动迭代 nanochat 了,我先去放松一下,享受一点 post-agi 的感觉 :)」
12 小时后,agent 跑了 110 次改动。验证损失从 0.862415 降到 0.858039。
他什么都没做。他去睡觉了。
两天后,他把这套东西打包成了一个公开仓库:autoresearch。
仓库里面就三样东西:
- train.py
:630 行的训练脚本,agent 唯一能碰的文件 - prepare.py
:数据准备和评估函数,锁死,agent 碰不了 - program.md
:一份 40 行左右的 Markdown 文件,agent 的行动纲领
Karpathy 配了一句极其精炼的话来概括这个系统:
"the human iterates on the prompt (.md) — the AI agent iterates on the training code (.py)"
「人类迭代 prompt(.md 文件)——AI agent 迭代训练代码(.py 文件)。」
这条帖拿了2.8 万赞,3600 转发,1109 万阅读。



▲ Karpathy 发布 autoresearch 仓库,2.8 万赞。图中每个点是一次 5 分钟的完整 LLM 训练实验
仓库在 GitHub 上迅速积累到89k Star,12.9k Fork。
但真正让所有人停下来思考的,是那份 program.md。
一份给 AI 的「宪法」:什么能做、什么绝对不许碰
打开 program.md,你看到的更像一份协议——远比任何 prompt 都严肃。
它规定了 agent 在这个循环里的一切行为边界——
Setup 阶段:约定实验标签,建 git 分支,读文件,跑一次 baseline。没有 baseline 数据,后面的一切比较都没有意义。
循环阶段(LOOP FOREVER):
你只能改 train.py。架构、优化器、超参数、batch size,随便改,但只能在这一个文件里。prepare.py只读。评估函数你碰不了。你不能给自己当裁判。 不能装新包。不能改评估逻辑。不能往环境里塞东西。 每次改完代码 → git commit → 跑训练(硬性 5 分钟截止)→ 解析 val_bpb → 比当前最优低就保留,否则 git reset。所有结果记录在 results.tsv 里:commit hash、val_bpb、显存占用、状态、描述。 超时 10 分钟?按崩溃处理。 - NEVER STOP
——一旦启动,永远不停。人类睡觉的时候它继续跑。

▲ GitHub 上的 program.md 文件,清晰列出了 agent 的行为边界:什么能改、什么不能碰、如何判定成功或失败
这里面藏着几个极其精妙的设计。
固定 5 分钟时间预算。不管你把模型变大还是把 batch 缩小,所有实验消耗的时间相同。时间本身成了货币。不同方案之间因此有了公平的比较基础。
单一标量指标 val_bpb。什么是 val_bpb?可以简单理解为「模型每预测一个字节,平均要吃惊多少信息」。越低说明模型对数据的理解越好。只有一个数字,没有模糊空间。agent 没法跟你扯"虽然指标没提升但我觉得方向对了"——数字说了算。
git revert 作为外部裁判。这大概是整个系统里最关键的一环。agent 无法篡改自己的成绩单。改好了就提交,改差了就回滚,没有中间地带。这给了整个循环一个不可腐蚀的真相来源。
Karpathy 自己也提到一个原则:同等改进下,更简单的方案更好。删除代码且效果持平,算重大胜利。
人在睡觉,agent 在跑实验:700 次循环后发生了什么?
3 月 9 日,Karpathy 发出了后续更新。
"Three days ago I left autoresearch tuning nanochat for ~2 days on depth=12 model. It found ~20 changes that improved the validation loss. I tested these changes yesterday and all of them were additive and transferred to larger (depth=24) models."
「三天前我让 autoresearch 在 depth=12 模型上跑了大约两天。它找到了大约 20 个能降低验证损失的改动。我昨天测试了这些改动,全部可叠加,而且迁移到更大的 depth=24 模型上也有效。」
700 次自主实验。约 20 个被保留的改进。每一个都经过了人工验证,而且全部迁移成功。
agent 找到了什么?几个例子——
注意力机制里的 QKnorm 缺了一个 scaler,导致 attention 太分散。agent 加了 multiplier。 Value Embeddings 缺了正则化。Karpathy 之前没加,agent 发现了。 AdamW 的 betas 参数配错了。
这些发现有多厉害?考虑到 Karpathy 本人就是这个领域顶级的研究者——他写过 CS231n 课程,在 OpenAI 和 Tesla 都干过核心 AI 工作——agent 能在他的代码里找到 bug 和优化空间,说明这套循环机制确实在输出真实价值。
然后 Karpathy 扔出了那句被无数人截图转发的话——
"All LLM frontier labs will do this. It's the final boss battle."
「所有 LLM 前沿实验室都会这么做。这是最终的 boss 战。」


▲ Karpathy 的后续帖:700 次实验,20 个有效改进全部迁移成功。366 万阅读,2 万赞
他还补了一句更通用的判断:
"And more generally,anymetric you care about that is reasonably efficient to evaluate ... can be autoresearched by an agent swarm."
「更广泛地说,任何你在意的、能高效评估的指标……都能被 agent 集群自动研究。」
这句话的射程远超 ML 训练。
风向变了:从「写 prompt」到「设计 loop」
回头看那条 viral 帖。
说"文档是假的",严格来讲也不算完全错——Karpathy 原始仓库里并没有一字一板地列出「9 条规则」。但说"思想是假的",那就大错特错了。viral 帖里描述的每一条原则,都能在 program.md 和 Karpathy 的推文里找到对应。
更重要的是,这条帖之所以能刷屏,是因为它精准地击中了 2026 年开发者群体里一种正在涌动的集体焦虑——
prompt engineering 正在过时。
旧的工作方式是什么样的?你精心打磨一条 prompt,发给模型,等输出,看一眼,觉得不对,再改 prompt,再发。状态全在上下文窗口里,关掉会话就全丢了。做简单任务还行,一旦涉及复杂、多步骤、长周期的工作,模型就开始幻觉、漂移、重复劳动。
Karpathy 示范的是完全不同的范式——
你的工作从"写指令"变成了"设计系统"。
这个系统包括:一份规则文档(program.md),一个明确的评估标准(val_bpb),一套持久化的状态管理(git + results.tsv),以及一组清晰的权限边界(什么能改什么不能碰)。
agent 在这个系统里自主运行:读规则 → 提出改动 → 执行 → 测量 → 保留或回滚 → 记录 → 进入下一轮。
循环可以跑一夜。可以跑一周。你去睡觉、去度假,它继续。
社区已经开始叫它"Karpathy Loop"。对标 prompt engineering,新名词叫loop engineering。

▲ The New Stack 深度拆解 Karpathy 的 AutoResearch:「630 行 Python 脚本一夜跑了 50 个实验,无需任何人工干预」
The New Stack 的报道直接把 program.md 定义为人类与 agent 之间的接口——一份持久的契约,取代了过去那种一次性的聊天指令。
行业里更多的信号也在印证这个方向。有人把同样的模式套到了数据库调优上,有人用来做 RAG 参数搜索,LangChain 的创始人 Harrison Chase 直接 fork 了 autoresearch,把可编辑资产从 train.py 换成了 agent.py,把评估指标换成了 LangSmith score。
一个已经被开发者社区广泛接受的判断正在浮出水面——
下一个稀缺技能,不再是"会写 prompt"。
是"会设计一个能可靠自治的循环,并且能写出清晰的 program/spec"。
Karpathy 自己也承认,他最近花在"meta-setup"上的时间远超直接调模型的时间。他在优化的是「让 agent 做研究」这个系统本身,而不再亲手写每一行训练代码。
这件事的意义,或许要过几年才能被完全消化。但信号已经很明确了:
当你还在一条一条打 prompt 的时候,有人已经在设计让 AI 自己跑一整夜的系统了。
夜雨聆风