小白也能看懂:Prompt、Context、Harness、Loop、Graph 到底怎么分?
大家好,我是悟鸣。(公众号:悟鸣AI)
最近 AI Agent 圈里冒出了一串新词:Prompt Engineering、Context Engineering、Harness Engineering、Loop Engineering,现在又开始谈 Graph Engineering。
每出现一个新词,大家就容易把它理解成“上一套方法过时了”。
Akshay Pachaar 的一篇文章给了一个很清楚的判断:它们彼此层层嵌套。区分它们的关键,是看这一层处理的“工作单元”有多大。
从一次输入,到一整个任务
Prompt Engineering 处理的是消息。
角色、背景、指令、示例和输出格式,都要在一次输入里组织好。它关注的工作单元,是发给模型的一条 Prompt。
Context Engineering 处理的是记忆。
任务一长,信息就会超过上下文窗口。此时重点不再是继续塞资料,而是判断哪些内容应该保留、压缩或丢弃。它关注的工作单元,是这一轮窗口里留下了什么。
Harness Engineering 处理的是机器。
模型本身只会生成内容。Harness 负责收集上下文、调用模型、使用工具或子 Agent,再通过测试或评审验证结果。它关注的工作单元,是机器完整运行的一次。
Loop Engineering 处理的是整轮运行。
一次 Harness 往往做不完任务,Loop 要决定是否再跑一轮。这里需要明确目标、迭代上限、预算和完成检查。Agent 不再调用工具,只能说明这一轮结束了,不代表任务真的完成。
Graph Engineering 处理的是协作。
当多个 Loop 需要一起工作,就要安排谁先执行、谁能并行、谁负责检查,以及状态如何在它们之间流动。节点负责工作,边决定下一步,共享状态连接整个过程。一个 Loop,也可以看成只有一个节点、不断指向自己的 Graph。
这套分法真正有用的地方,是定位问题
如果输出格式不对,先看 Prompt。
如果 Agent 忘了关键信息,先看 Context。
如果工具调用了却没人验证,问题多半在 Harness。
如果任务反复空转,或者过早停下,就要检查 Loop 的目标、刹车和完成条件。
如果多个 Agent 互相冲突、顺序混乱、共享状态被污染,才轮到 Graph。
Prompt 往往更容易修改,所以很多系统问题最后都会被归咎于“提示词没写好”。但真正的故障,可能发生在外面更大的那一层。
我的理解
这五个词,其实对应了 AI 工程不断向外扩大的视角:
从一句话,到一段记忆;从一次执行,到持续运行;再到多个执行单元之间的协作。
Graph Engineering 也不是什么突然出现的新技术,节点、边和状态早就在工作流系统里存在。新名字会继续出现,但只要一个任务需要多个 Agent 协同,协调、状态和验证就会一直是工程问题。
所以学这些概念时,不必急着追每一个新名词。先问一句:我现在出问题的,到底是哪一层?
参考资料:
Akshay Pachaar 的长帖
Graph Engineering Clearly Explained
