
过去我们习惯把 AI 应用的核心理解成 Prompt Engineering。但到了 Agent 阶段,问题变了:模型不只是回答一次,而是要观察、行动、获得反馈、修正、继续推进。于是 Context Engineering、Harness Engineering、Loop Engineering 这些概念陆续出现。它们到底有什么区别?这篇文章试着拆一下。
过去两年,很多人对 AI 应用的理解,基本停留在一个动作上:
给模型一个好 Prompt,然后等它返回一个好答案。
这就是 Prompt Engineering 最早火起来的原因。你写清楚角色、任务、约束、格式、示例,模型输出就会稳定很多。对于写文案、总结、翻译、生成代码片段,这一套确实有效。
但到了 AI Agent 阶段,问题开始变化。
Agent 不只是“回答一次”。它可能要读文件、调用工具、执行命令、看报错、修改代码、重新运行测试、继续判断下一步。这个过程更像一个循环:
观察当前状态 → 思考下一步 → 执行动作 → 获得反馈 → 修正策略 → 再执行
这就是最近很多人开始讨论 Loop Engineering 的原因。
它关注的不是“这一句话怎么写得更好”,而是:
一个 AI 系统如何在连续反馈中,把事情一步步做完?
这个判断很关键。因为越往后,AI 应用的难点越不在“让模型说得好听”,而在“让模型持续做对”。
如果简单拆,可以这样理解:
概念 | 主要问题 | 关注对象 | 典型场景 |
|---|---|---|---|
Prompt Engineering | 怎么问模型? | 单次输入指令 | 写作、总结、问答、简单代码生成 |
Context Engineering | 给模型看什么? | 上下文组织 | RAG、长文档分析、代码库理解、企业知识库 |
Harness Engineering | 怎么把模型接进系统? | 外部执行框架 | 工具调用、评测、沙箱、CI、权限、安全边界 |
Loop Engineering | 模型如何反复行动并收敛? | 多步反馈循环 | AI Agent、自动编程、自动研究、复杂任务执行 |
这四个不是互相替代,而是层层叠加:Prompt 负责把任务说清楚,Context 负责给对材料,Harness 负责把模型接入工具和安全边界,Loop 负责让多步行动在反馈里收敛。
Prompt Engineering 是最容易理解的一层,它主要优化单次模型调用。
常见做法包括:
比如你问:
帮我写一个产品介绍。
和你问:
请用面向企业 CTO 的语气,写一段 300 字以内的产品介绍,重点突出安全、私有化部署和系统集成能力,避免营销腔。
效果肯定不一样。Prompt 的价值,是降低模型理解任务的成本。
但它也有天然边界:如果任务需要多轮执行、根据结果修正方向、调用外部工具,再好的 Prompt 也只能解决第一步。
Context Engineering 解决的是另一个问题:
模型每次回答之前,应该看到哪些信息?
很多 AI 应用失败,不是因为 Prompt 写得差,而是上下文给错了。
比如让模型分析一个代码库,你不能只说“帮我修 Bug”。你要让它知道:
Context Engineering 的核心不是“塞更多内容”,而是“选择正确内容”。上下文窗口变长以后,这件事反而更重要:信息越多,噪音也越多,模型注意力可能被稀释。
一个好的 Context Engineering 系统,通常要做几件事:
所以 Context Engineering 回答的是:
模型做判断时,它的“现场材料”是否正确?
现场材料错了,再好的 Prompt 也救不回来。
再往外一层,是 Harness Engineering。
这个词没有 Prompt Engineering 那么普及,但在做 AI 应用的人里面很重要。这里的 harness,可以理解成模型外面的“承载和约束系统”:它负责接住模型输出、调用工具、执行动作、验证结果,并控制权限和风险。
它解决的问题是:
模型输出之后,系统怎么接住它、执行它、验证它,并限制它?
比如一个 AI 编程助手,不可能只生成代码就结束。它还需要:
这些不是 Prompt 本身能解决的,而是模型外面的工程框架。
在评测领域也一样。你要判断一个模型是不是更强,不能只看一次回答。你需要一个 evaluation harness:
所以 Harness Engineering 问的是:
模型被放进一个什么样的执行环境里?
很多 Agent demo 看起来很强,但一接入真实工作流就容易出问题,常常不是模型完全不行,而是 harness 太弱:权限不清、工具不稳、反馈不完整、失败不可控。
现在回到 Loop Engineering。它关注的是 Agent 的核心循环。
一个最简单的 Agent Loop 大概是:
1. 接收目标
2. 观察当前状态
3. 生成下一步计划
4. 调用工具或执行动作
5. 获取结果
6. 判断是否成功
7. 如果失败,分析原因并重试
8. 如果成功,继续下一步或结束这个循环看起来简单,但每一步都有工程问题。
Agent 最常见的问题之一,是停不下来。它会反复搜索、反复修改、反复总结,看起来很努力,但没有明确收敛条件。
所以 Loop Engineering 要设计终止条件:
没有终止条件的 Agent,本质上不是自动化,而是失控循环。
人类做事时,失败之后会判断原因:是信息不够、工具错了、假设错了,还是目标理解错了。Agent 也需要类似机制。
比如代码测试失败,下一步不能只是“再试一次”。它应该先判断:
Loop Engineering 的重点,是让 Agent 的重试不是“再来一次”,而是带着反馈修正。
Agent 每一步都会产生新信息。问题是:哪些要保留?怎么保留?保留多久?
比如一个编程 Agent 修 Bug,它可能经历:
如果这些状态管理不好,Agent 就会“失忆”,或者反复做同一件事。
这就把 Loop Engineering 和 Context Engineering 连在了一起:Loop 负责推进,Context 负责在每一步提供正确状态。
一个成熟的 Agent 不应该假装什么都能自动完成。有些节点应该主动停下来:
Loop Engineering 不是追求全自动,而是设计合理的人机协作边界。
我觉得有三个原因。
Copilot 时代,AI 主要是辅助人:你问,它答;你选,它改;你复制,它执行。
Agent 时代,AI 开始承担连续任务,比如:
连续任务的难点不在第一次回答,而在中间过程:如何判断、行动、验证、修正,并最终停止。
模型越强,越容易让人误以为“只要模型够强,外部工程就不重要”。但现实往往相反。
模型能做的动作越多,越需要边界、反馈、验证和控制。否则它可能很自信地把事情做偏。
这也是为什么很多 Agent 产品最后拼的不是单个模型,而是:
这些正是 Loop Engineering 和 Harness Engineering 变重要的地方。
写代码、研究资料、写文章、处理客服工单,都不是一次问答就结束。真实工作流本来就是循环:做一点,看结果,再调整。AI 如果要进入真实工作流,就必须学会在循环里工作。
如果你是开发者,我建议不要把 Loop Engineering 当成一个新名词去追,而是把它当成一个提醒:
以后做 AI 应用,不要只写 prompt,要设计过程。
设计一个最小可用的 Agent Loop,至少要想清楚这些问题:
这些问题比“Prompt 应该怎么写”更接近真实工程,也决定了 Agent 是稳定推进,还是不断跑偏。
假设你要做一个“自动修 Bug”的 Agent。
只靠 Prompt Engineering,你可能会写:
你是一个资深工程师,请修复下面这个 Bug,并给出代码。
这能解决一部分问题,但离真正可用还差很远。
加入 Context Engineering,你会给它:
加入 Harness Engineering,你会给它:
加入 Loop Engineering,你要设计:
读取 Bug → 定位相关代码 → 提出假设 → 修改代码 → 运行测试
→ 如果失败,读取错误 → 判断原因 → 再修改
→ 如果通过,检查 diff → 输出总结 → 等待人工确认这才像一个真正能工作的 AI Agent。否则它只是一个会写代码建议的聊天框。
这里有一个容易被忽略的点:Loop Engineering 不是让 Agent 无限循环。
很多 Agent demo 看起来很酷,是因为它会不断行动。但在真实系统里,循环越长,成本越高,风险也越高。
风险包括:
所以好的 Loop Engineering 不是“让 AI 多做几步”,而是“让每一步都有依据、有反馈、有退出机制”。Loop 的价值不在循环本身,而在收敛。
Prompt Engineering 解决“怎么问”,Context Engineering 解决“给模型看什么”,Harness Engineering 解决“怎么把模型接进真实系统”,Loop Engineering 解决“如何让模型在多步反馈中把事情做完”。
这几个概念背后,其实是 AI 应用开发重心的变化:从写好一句 Prompt,变成设计一个可靠的工作系统。
如果只是做一次性问答,Prompt 仍然重要。
如果要做知识库、代码理解、企业助手,Context 会变得重要。
如果要接入工具、执行命令、做评测和权限控制,Harness 会变得重要。
如果要做真正的 Agent,让 AI 能持续行动、失败修正、最终收敛,Loop Engineering 就绕不开了。
所以我对 Loop Engineering 的理解是:
它不是一个新包装的 Prompt 技巧,而是 AI Agent 进入真实工作流之后,工程复杂度自然暴露出来的结果。
接下来很多 AI 产品的差距,可能不会只体现在“用了哪个模型”,而会体现在:谁把这个循环设计得更稳、更短、更可控。
你现在做 AI 应用时,最头疼的是 Prompt 不稳定,还是 Agent 在多步执行里容易跑偏?欢迎留言聊聊。