大白话聊聊 Harness Engineering
AI 时代的驾驭工程到底是什么?剥开高大上的术语,用大白话聊聊怎么给 AI 套上缰绳,让它从「高效率制造垃圾」变成「自我纠错的好员工」。
最近技术圈里到处都在吹一个词:Harness Engineering(驾驭工程)。听起来很高大上,说是 AI 时代的软件工程终极答案。
咱们把那些用来唬人的架构词汇全剥开,其实核心就一句话:以前咱们当程序员,天天琢磨"怎么自己把代码写好";现在有了 AI,咱们的工作变成了"怎么搭个流水线,管好 AI 这个干活飞快、但极度容易瞎搞的新员工"。
Harness 翻译过来就是"马具"或者"安全带"。如果把 AI Agent 比作一只跑得极快、但经常"撒手没"的哈士奇,那 Harness 就是咱们手里的狗绳,和跑道两边的防撞护栏。老金我个人非常喜欢"驾驭工程"这个翻译。
为什么我们需要驾驭工程?
想象一下你让 AI 帮你开发个复杂功能:
没套缰绳(裸奔状态):
你给 AI 甩过去一段提示词(Prompt),它一秒钟给你吐出 1000 行代码。结果一跑,直接崩了,因为有个数据库连接它忘了关。你骂骂咧咧手动改好了。明天你让它加个新功能,它又把同样的错犯了一遍。或者它根本不知道你定的"不准用 A 框架"的死规矩,一通乱写。这就叫 "高效率地制造垃圾"。
套上缰绳(Harness 状态):
这次你不急着让它写代码了。你先在本地写了个"项目规矩.md",然后搞了个代码检查脚本。只要 AI 写的代码里忘了关连接,系统直接亮红灯,把代码打回去让它重写。AI 交差之前,必须先看规矩,再过测试。这就成了一个能让 AI**"自我纠错"**的护栏。
大白话拆解:这玩意到底在干啥?
那些深层的工程理念和底层架构,咱们留到以后的文章慢慢聊。今天先说透最直观的两点,Harness 其实就是干这两件事:
给 AI 发"员工手册":
AI 没法转个电竞椅过来请你喝杯咖啡,问你这块历史代码有啥坑。所以你必须把脑子里的业务逻辑、定好的规矩老老实实写成文档,放进代码仓库里。只有让 AI 随时"看着说明书干活",它才不会瞎猜。
用机器检查机器:
别自己去一行行看 AI 写的代码,眼睛会瞎的。把验收标准写成自动化测试。代码写得对不对,跑一遍测试就知道。跑不过就自动打回,这就叫不给它第二次犯错的机会。
泼盆冷水
这套理论被 OpenAI 这些大厂吹得神乎其神(人家确实用它生成过百万行级别的代码),但在咱们真实的日常开发里,还是得实事求是地看:
搞这套东西,有时连本都收不回来
对于咱们这种经常一个人单干,搞搞 iOS App、跑跑 SaaS 产品的独立开发者来说,时间就是命。搭一套包含严密测试和规范文档的 Harness 护栏,可能得花一整个星期。有这折腾的功夫,我早自己把代码敲完上线了。Harness 是重型武器,对于小步快跑的敏捷项目,硬套它可能会被拖死。
哪有完美的"需求文档"?
大厂的假设是:只要你给 AI 写出完美的文档,AI 就能写出完美的系统。但摸着良心说,写代码前谁能完全想清楚自己到底想要啥?很多逻辑不都是边敲键盘边理顺的吗?要是硬逼着自己先写死一份需求,最后搞不好就是 AI 完美且极速地实现了一个错误的想法。
按下葫芦浮起瓢
以前写代码,1+1 就是 2。但大模型是靠概率算出来的,是个玄学。你为了防止它犯 A 错误,给它加了条新规矩,结果它脑回路一转,明天给你搞出个 B 错误。指望 AI"永远不再犯同样的错",目前看还是过于乐观了。
总结一下
驾驭工程 (Harness Engineering) 绝对是未来的大方向,它提醒咱们别把 AI 当成有求必应的许愿池,而是要把当作流水线上的螺丝钉,用工程规范去死死约束它。
但在当下,咱们先有个概念就行,具体面对不同的项目,还得掂量掂量搭这套护栏的成本。至于怎么在手头的项目里低成本地把 Harness 跑起来,咱们后续的文章再接着扒!