§02三级跳:从Prompt到Context到Loop

The Triple Jump: From Prompt to Context to Loop

四层栈,一层管一件事。Prompt、Context、Loop是三次跳,Harness夹在Context和Loop中间,是那块起跳板。

四层栈

过去两年AI圈造的那串XX Engineering,是一层层叠起来的,每层管一件更大的事。

层管什么核心问题
Prompt engineering写好一次的提示词我该告诉模型什么
Context engineering这一刻窗口里放什么检索什么、摘要什么、清掉什么
Harness engineering单次运行的武装给哪些工具、允许哪些动作、什么算完成
Loop engineering在harness之上调度怎么让它自己一遍遍跑起来

从一句话,到一个窗口,到一次运行,最后到一整套自动跑的循环。

第一层:Prompt

最底层,也是大家最熟的。你斟酌措辞、给例子、定角色、调语气。它的边界很清楚:就是这一次,你递给模型的那段文字。递进去,模型吐出来,结束。

这层的麻烦在于,它假设你每次都在场,每次都亲自递。一个prompt解决一件事,下一件还得你再写一个。

第二层:Context

往上一层,问题从「我说什么」变成「此刻这个窗口里,该装哪些东西,模型才解得动这道题」。检索什么资料、把长文摘成什么样、哪些过时信息要清出去。它管模型当下能看到的整个视野。

这层之所以单独成一层,是因为模型的窗口有限,塞错东西比塞少东西更糟。给它一窗户的噪音,再好的提示词也白搭。

第三层:Harness

再往上,到harness engineering。这层管的是agent跑一次,身上得带什么装备:给它哪些工具、允许它碰哪些动作、何时加载上下文、失败了怎么收场、什么状态才算完成。

这层我在另一本书里整本展开过。它把agent的单次运行武装好,但不负责让这次运行自动重来。

第四层:Loop

前三层做完,你手里有了一个装备齐全、能漂亮跑完一次的agent。但它跑完就停了,等你再敲下一拍。Loop这层,把「等你敲」这件事也自动化掉。

原文:Loop engineering sits one floor above the harness. The harness but it runs on a timer, it spawns little helpers, and it feeds itself.

循环工程,坐在harness的上一层楼。还是那套harness,只不过它在定时器上跑,会孵化小帮手,还会自己喂自己。

上一层楼多了什么

Addy那句话里有三个动词。

在定时器上跑。harness武装的是一次运行,得你来触发。loop给它装了个定时器,到点自己醒、自己开工。

孵化小帮手。一个loop转起来,会自己分出子agent去干并行的活,比如一个起草修改,另一个专门挑刺审查。

harness关心单个agent怎么武装,loop关心一群agent怎么协作、谁监督谁。

自己喂自己。loop跑出来的结果,会被它自己当成下一轮的输入。昨天发现的问题写进一个文件,今天醒来先读这个文件,接着干。它有了跨越单次对话的记忆。

Addy的原话是:自动化才让一个loop成为真正的loop,而不只是你手动跑过一次的某次运行(原文见§04零件一)。

Anthropic 6月那篇博客的四类分法,也能套在这层楼上:按轮、按目标、按时间、主动,差别在于你把检查、停止条件、触发、prompt本身里的哪一样交给了系统(§01有表)。

为什么要分这么清

因为每一层的失败方式不一样,拦它的检查也得装在不同的地方。

prompt错了,你当场就看见,改一句就行。context装错了,模型答偏,你也容易察觉。到了loop这层,它在你睡觉时自己跑、自己改你没看过的代码、自己把错误也一并喂给下一轮,出问题你可能几天后才发现。