前言 :最近在备战一场高级 AI 开发工程师的面试,复盘时我发现,过去一年里大家都在卷 Prompt、卷模型参数,但真正到了企业级落地场景,这些似乎都不够用。直到我在准备过程中梳理清楚了 Vibe Coding 和 Harness Engineering 的区别,才有一种"开窍"的感觉。今天把这套认知写下来,希望能帮大家跳出"调参侠"的视角。
1. 从 Vibe Coding 说起:AI 编程的"玩具阶段"
如果你关注 Andrej Karpathy(前特斯拉 AI 总监)或者近期的 AI 圈动态,一定听过 Vibe Coding(氛围编程) 这个词。
什么是 Vibe Coding?简单来说就是: "我只看结果,不读代码。"
你对着 Cursor 或者 Copilot 说:"帮我写个登录页",它生成了一堆代码,你复制粘贴,跑起来能看就行。至于里面的逻辑、边界条件、安全漏洞,你并不关心,只要"氛围"对了,功能出来了,就算成功。
这种模式在原型验证(Prototype) 和个人项目中简直爽翻天。它极大地降低了编程门槛,让不懂代码的人也能"开发"。但是,一旦把这种代码放到生产环境(Production),灾难就来了:
- 代码不可维护,没人敢改。
- 没有异常处理,一碰就碎。
- 安全隐患巨大,像个裸奔的孩子。
Vibe Coding 是 AI 能力的"兴奋剂",它能让你快速从 0 到 1,但它解决不了从 1 到 100 的问题。
2. 中间态:Context 与 Agent 的过渡
在 Vibe Coding 和真正的工程化之间,还有两个概念我们经常听到:Context Engineering(上下文工程) 和 Agent Engineering(代理工程) 。
- Context Engineering:以前我们叫 Prompt Engineering,现在发现光写提示词太浅了。Context 才是关键。你要考虑在有限的 Token 窗口里,塞进什么系统提示、什么长期记忆、什么实时检索(RAG)结果,以及怎么编排工具定义。这是在解决"喂饭"的问题。
- Agent Engineering:这步更进一步,我们把 AI 当作一个"员工"而不是"函数"。我们要设计它的思考模式(ReAct)、反思循环(Reflection Loop)以及工具使用能力。这是在解决"干活"的问题。
这两个概念都很重要,但它们依然侧重于模型本身的能力挖掘。在实际工程中,你会发现一个尴尬的现象:模型很聪明,Context 喂得很饱,Agent 也会用工具,但结果依然不可控。它还是会胡编乱造,还是会调用错误的 API。
为什么?因为我们缺了一套控制系统。
3. Harness Engineering:给野马套上缰绳
这就是我今天想重点聊的 Harness Engineering(驾驭工程 / 挽具工程) 。
Harness 这个词本意是"马具"。想象一下,大模型是一匹拥有千匹马力但性格暴躁的野马。Prompt 和 Context 是告诉它"往哪跑",Agent 是让它"开始跑"。但如果没有缰绳(Harness) ,它随时可能把骑手摔下来,或者冲进沟里。
Harness Engineering 的核心不是优化模型,而是构建一套工程设施,让模型变得可靠、可控、可观测。
它包含哪些东西?
- 约束与护栏(Guardrails) :这是最基础的。限制模型能调用的 API 范围,限制它能访问的数据权限,过滤敏感词,防止 Prompt Injection(提示词注入)。
- 验证逻辑(Validation) :模型输出的 JSON 格式对不对?参数类型有没有错?数值有没有越界?这些必须由代码层面的 Harness 来校验,而不能指望模型"自觉遵守"。
- 观测与溯源(Observability) :每一次调用,模型思考了什么?调用了什么工具?返回了什么结果?失败了怎么回滚?全链路日志是必须的。
- 反馈闭环(Feedback Loop) :当模型犯错时,系统能否自动修正?能否将错误案例反馈给训练集?
OpenAI 的 Codex 团队曾有一个惊人的实验:他们在几乎不改动模型权重的情况下,仅通过改进 Harness(更好的测试、更好的环境约束),就将代码生成的任务成功率从 53% 提升到了 66%。
这说明什么?在工程化时代,模型能力决定了上限,但 Harness 水平决定了下限,甚至直接决定了落地成功率。
4. 写在最后:AI 工程师的新标尺
回顾这四种形态的演进:
- Vibe Coding:信任直觉,重在快速验证。(玩具)
- Context Engineering:喂养信息,重在信息架构。(基建)
- Agent Engineering:赋予灵魂,重在自主决策。(大脑)
- Harness Engineering:驯服野马,重在稳定可控。(生产)
作为 AI 工程师,如果你的简历上还只写"熟练使用 Prompt 技巧",那已经过时了。未来的高级岗位,一定会问你:
- "你是如何设计 Agent 的安全护栏的?"
- "你如何保证大模型输出的数据结构是合法的?"
- "你的 AI 系统如何监控和告警?"
这些问题,都属于 Harness Engineering 的范畴。
不要再只盯着模型内部了,抬头看看模型的运行环境吧。毕竟,我们要的不是一匹只会撒欢的野马,而是一辆能稳定载着业务驶向终点的马车。
系列预告:
这篇讲了认知,下一篇我会结合实战,聊聊我对 DIFY 这个热门工具的理解。很多人说它是"低代码神器",但我却认为它更像是一个半成品的 Harness。为什么?欢迎持续关注。