ELI5 · 说人话

什么是 Engineering

碰运气 每次都成

Engineering 不是「想出一个好办法」,是「让这个办法每次都成」。
所以你看到的每一个 xx Engineering,重点从来不在那个 xx。

engineering = 把手气变成手艺

先说清楚这个词

一次成了,不算

一次
碰对了

你换了个说法,它这回答得挺漂亮。换道题,又不行了。你也说不清为什么。

一万次
每次都成

同一套东西跑一万个任务,成功率报得出数字;哪次砸了,知道是哪一环坏的。

差别不在聪明,在可重复、可测量、可修。前者是灵感,后者才叫工程。

它们的关系

这几个词,是一棵树

它们不是三个互相竞争的流派,是同一棵树上的三个高度

Agent Engineering 总目标:让它真能交付 HARNESS ENGINEERING 整层外壳 —— 把下面五样搭成一台真能跑的机器 上下文 CONTEXT 这一轮看见什么 记忆 MEMORY 跨轮次记得什么 工具 TOOLS 能伸手碰什么 技能 SKILLS 会不会这类活 循环 LOOP 转几圈、何时停 Agent 真正跑起来的那个 Evals 考卷:改完就整套重跑 分数反过来改整套

从上往下:目标 → 外壳 → 五根柱子 → 跑起来的 agent → 打分

Harness Engineering 是整层壳,Context 和 Loop 是这层壳里的两根柱子——跟它俩并排站着的,还有 Memory、Tools、Skills。问「它们有什么区别」,答案是:一个是车间,两个是车间里的机器。

壳里有什么

五根柱子,各管一件事

上下文Context

这一轮递到它眼前的那一摞东西:任务、相关文件、上一步的结果、能用的工具清单。它只能照着看得见的东西答题——递错了,再聪明也白搭。

记忆Memory

跨轮次留下来的东西:你的偏好、项目约定、上周踩过的坑。上下文是这一轮的桌面,记忆是抽屉——桌面每轮清空,抽屉一直在。

工具Tools

它能真的伸手碰到的东西:读文件、跑命令、查数据库、发请求。没工具的模型只会说,有了才会做——顺带也决定了它伸手能伸多远。

技能Skills

干某一类活的固定套路:这个仓库怎么发版、图表按什么规范画、报告长什么样。没有就每次现编,风格来回飘,你还得每次重讲一遍。

循环Loop

干一轮 → 看结果 → 改 → 再干,以及什么时候停手。这是它唯一能自己发现「我错了」的机会。只问一次的 AI 没有这个机会,错了也只能错着交。

回到你的问题

那三个词,摊开看

在树上哪一层 管的是 做砸了长这样
上下文工程Context Eng. 壳里的一根柱子 这一轮往它眼前递什么、什么时候清掉 一堆无关资料压进去,它抓不住重点,还按字数收你钱
循环工程Loop Eng. 壳里的另一根柱子 转几圈、拿什么判断「做完了」、什么时候停手 一次交卷不检查;或者原地打转,烧钱到你手动掐断
外壳工程Harness Eng. 整层壳,上面五根都归它管 五样怎么拼成一台能跑的机器,谁先谁后、谁管谁 单看每一样都对,合起来就是跑不动,还查不出是哪出的问题

所以「Context 和 Harness 有什么区别」这个问法本身有点歪——它俩不在一个层级上。正确的对照是 Context 对 Loop(同级),Harness 对 Agent Engineering(上下级)。

树的最底下

没有考卷,上面全是猜

Evals 就是给它出一套固定的题,每改一次就整套重跑。

  1. 1

    出题挑 200 个真实任务,答案要机器能判——测试跑绿、字段对得上,不是「看着还行」。

  2. 2

    重跑壳里任意一根柱子动了,哪怕只改一句提示词,200 道题整套重来一遍。

  3. 3

    对比跟上一版摆一起:成功率、平均转了几圈、一道题花了多少钱。三个数一起看。

  4. 4

    定夺涨了留下,跌了退回去。这一步就是「工程」和「玄学」的分界线。

三条别踩

最常见的三个想当然

「上下文塞得越满越好」

整个仓库倒进去,重点就被无关内容挤没了,钱也白花。只递这一步用得上的,用完就清——该忘的不删掉,跟没记住一样糟。

「工具和权限一次给全,省事」

省的那点事,抵不过一条误删命令。默认只读,写和删要人点头,危险动作放沙箱里跑。壳的一半价值就在这道闸上。

「让它一直转,转到对为止」

没有停机条件的循环就是无限烧钱。设轮次上限,再给一个机器能判定的通过标准;超了就停手交给人,别让它自己判自己及格。

Context 决定它看见什么,
Loop 决定它能不能改对,
Harness 决定这些能不能拧成一台机器。