乐于分享
好东西不私藏

Karpathy 放出一份文档,宣告 prompt 时代「死刑」!630 行代码 + 一夜狂飙 700 次实验,AI 自己搞科研

Karpathy 放出一份文档,宣告 prompt 时代「死刑」!630 行代码 + 一夜狂飙 700 次实验,AI 自己搞科研

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 自己跑一整夜的系统了。