我是如何对 AI 许愿的
发布于
Vibe Coding,或者说是许愿式编程的诞生使编程界迎来大变。任何人都可以通过自然语言让 AI 编写出对应的程序,但是不同的人有不同的提示词和工作流,那我也来斗胆分享一下我自己的许愿方式吧,虽然可能过两个月就过时了
注意!本文所述方式均基于我的日常使用,不同的模型与上下文的协作方式通常是不同的
在正式开始之前
虽说 Vibe Coding 很爽,但是为了避免不必要的麻烦,进行一些前期调研还是相当有价值的,在很大程度上能节约时间与金钱
了解现有模型的能力边界
在许愿之前,必须要明白的是:AI 不是上帝,至少现在还不是。它有自己的能力范围,能力范围外的任务基本不用太指望它能完成。
随着模型的不断进步,这个能力边界会不断地向外扩张,我们就需要不断了解新模型的能力边界,对模型进行一些工程能力测试。不建议只看跑分,因为总所周知跑分是可以刷的,还是得看模型在实际任务中的实际能力。
对于纯新手而言,他们可能不知道如何测试模型的能力边界,这在下边会提到一些
描述好自己的需求
在合适的实践中,AI 更应该像是你的一个同事,你给出需求然后它去完成,这应该是很自然的
但是实践中有人发现,用的都是同一个模型,为什么有的人做的效果就是更好,有的人把 AI 当陀螺一般抽也跑不出个完整的项目(或者是漏洞百出的)。一般来说,一句话许愿的结果很容易让程序偏离原有的设想,当理解出现偏差时,就会需要返工,如果返工还是一句话的话,结果则容易矫枉过正。
对自己的需求并不清晰?那可以让 AI 帮你弄清楚。你可以使用grill me和grill with docs这些 skill,让 AI 对你进行不断拷问直至双方认知对齐,你可以在这个仓库找到对应的 skill
先试着做一个玩具
上面讲到,在开始之前应该先对 AI 的能力边界有一个了解。怎么了解最快呢?当然是开个技术栈相同的玩具项目先试试水最快啦。
玩具项目最大的好处是你搞砸了也不用负责或者背锅,因此可以尽情地对 AI 许愿,用各种方式尝试,就能明白它的边界在哪了
有一说一,用 AI 来造屎玩具还挺好玩的
在项目推进时
始终对项目拥有掌控权
这点可能说得会比较笼统,简单来说,作为项目的主导者(毕竟愿望是自己的),对项目的前进方向当然是要能决定的。你可以让 AI 这改改,那修修,但不能在自己完全不知情的情况下让它写一个神秘架构出来,不然出了问题就只能继续许愿,于是屎山越堆越高,最终任何人看了都会望而却步。
我之前见过一个判断是否对项目保持掌控的方法,就是看能不能在两分钟内找到某个功能的对应代码,如果能找到,说明对项目还是有掌控力的
唉提到这点我就会想到之前的某次经历了……有人连自己程序功能的运行链路都说不清楚,实在很难相信对项目有掌控权啊
Code Review 和测试都不能少
如果你是纯 vibe coding,那当然要一个 Agent 来一波 review 的。我喜欢专门在一个对话中进行 review,这样分工比较明确。如果开发的程序有多个模块,比如前端、后端……也可以给每个部分专门开个对话,然后让它们在不同的 Git 分支中修改代码
人工测试更是必不可少的环节,每个用 AI 写过代码的人都会明白这点,千万不要不经测试就把代码给提交了,会很难搞的(尤其是智力相对较低的模型更需要注意
务必使用 Git 等版本控制工具保护代码
像 Git 这样的版本控制工具,除了能让多个人类/ AI 在同一个项目中协作外,更重要的是能避免把代码改烂之后救不回来。要是没有版本控制,你改完代码之后遇到了一个 bug,然后你又忘了怎么才能改回去,那就完蛋了
写到这里的时候我又想起了一个用 QQ 传压缩包来同步代码的故事……
在项目完工后
如果没有问题的话,就尽情地享受吧,当然,我不认为一个纯粹的 vibe coding 项目能和各种已经商业化落地的项目一样稳定