大宾的私人知识杂志

Prompt engineering、context engineering、harness engineering、loop engineering 分别是什么?

用普通人能听懂的方式解释 AI 从“会回答”到“会干活”时最关键的四层工程:prompt、context、harness 和 loop。

2026-07-074 min

可以把这四个词理解成:我们在把模型从“会回答”推进到“会干活”时,控制系统的四层。

如果你看到的是 harnees engineering,通常可以按 harness engineering 来理解,它说的是同一层意思。

1. Prompt Engineering

这是最靠近“单次调用”的一层,核心是:怎么提问,模型这一次才更容易答对。

它关注的是:

  • 任务描述怎么写
  • 输出格式怎么约束
  • 角色、语气、步骤要不要指定
  • 要不要 few-shot 示例

它解决的问题是:

  • 回答不稳定
  • 格式不对
  • 指令理解偏差
  • 单轮任务质量不够高

一句话理解:把这一轮话说清楚。

例子:

  • 不要说“帮我分析代码”
  • 要说“阅读这个 diff,优先找行为回归、边界条件和缺失测试,按严重级别输出”

2. Context Engineering

这是比 prompt 更高一层,核心不是“怎么说”,而是“在说之前,给模型什么信息”。

它关注的是:

  • 哪些文件、日志、文档要塞进上下文
  • 历史对话保留多少
  • 检索哪些知识库内容
  • 哪些信息该摘要,哪些该原文保留
  • 上下文窗口怎么分配

它解决的问题是:

  • 模型不知道项目背景
  • 关键约束没看到
  • 信息太多导致噪声大
  • 旧信息污染当前判断

一句话理解:把该给它看的东西给对。

例子:

  • 让模型修 bug,光写 prompt 没用
  • 你要把报错日志、相关函数、调用链、最近 diff 一起给进去

3. Harness Engineering

这是“运行框架工程”。不是在优化模型内容,而是在设计模型如何被调用、如何使用工具、如何和外部系统交互。

它关注的是:

  • 工具怎么注册和暴露
  • 调用模型前后做什么预处理、后处理
  • 权限怎么控
  • 重试、超时、回退怎么做
  • 输出如何转成结构化动作
  • 人类审阅点放在哪

它解决的问题是:

  • 模型会说不会做
  • 工具调用混乱
  • 系统不稳定
  • 结果难以落地
  • 出错后没有保护栏

一句话理解:给模型搭工作台。

例子:

  • 同样一个“修代码”任务
  • harness 决定它能不能读仓库、能不能跑测试、改完是否自动 lint、失败是否回退、是否必须先出 plan

4. Loop Engineering

这是再往上一层,核心是:如何让模型在多步循环里持续推进,而不是只做一次回答。

它关注的是:

  • observe → think → act → verify 的闭环
  • 什么时候停,什么时候继续
  • 每一轮用什么反馈修正下一轮
  • 多轮目标分解
  • 自检、复盘、终止条件

它解决的问题是:

  • 一次回答做不完复杂任务
  • 中间出错后不会纠偏
  • 做了动作但不验证
  • 任务做一半停住

一句话理解:让模型形成可控闭环。

例子:

  • 读报错
  • 定位文件
  • 修改代码
  • 运行测试
  • 看失败
  • 再修
  • 测试通过后总结风险

这整套就是 loop engineering。

怎么区分

最实用的区分方式是看你在优化哪件事:

  • Prompt engineering:优化这句话怎么说
  • Context engineering:优化给模型什么信息
  • Harness engineering:优化模型怎么接工具和系统
  • Loop engineering:优化多步任务怎么闭环推进

它们的关系

它们不是并列替代关系,而是逐层包住:

  1. Prompt 是最内层
  2. Context 决定 prompt 是否站得住
  3. Harness 决定模型能不能真正执行
  4. Loop 决定复杂任务能不能稳定完成

所以很多团队一开始以为自己在做 AI 工程,实际只做了 prompt engineering。真正把 agent 做起来,后面三层通常更重要。

一个很直白的判断

如果任务是“写一段文案”,prompt 通常最重要。

如果任务是“在代码库里找 bug 并修复”,context、harness、loop 往往比 prompt 更重要。