用ai做项目的一些感受

最近在用codex做项目,有一些体会。


context的限制

最近解决一个问题和ai花了一周都没结果,过程中一个很明显的感受是:

要解决的问题如果是那种给 AI 一两句话就能出结果的,coding agent用起来非常爽;反之,问题比较复杂的就会:

  • 对话轮数不断增加

  • 上下文越来越长

  • 问题反而变得越来越难解决

我还有种感觉:一个问题聊的越久越没希望,context太长的时候ai就会变的脑雾,变蠢,现在已经相比于半年前、一年前好多了,但一定还是有边界的,到这个context边界就只能gg,开下一把,靠上次聊的时候写的开发文档来同步进度。

以及,这个过程中自己也会丢掉很多细节。一开始contexxt不长的时候,自己是很清晰解决问题的路径的。但context开始多起来时,且你又放给了coding agent很高的权限,放手去让他做了很长时间,这时候自己也开始不清晰开发的思路了,ai在做的就成了一个黑盒,自己不知道里面是什么。

我觉得这里就是考验一个人水平的时候了,自己能不能知道ai在干什么,有没有很强的纠偏能力、判断力、反思能力,把ai栓在正确的道路上。

不然就是context越来越长,问题一直解决不了,基本失控,这时候还会有一个问题:

ai给的解决思路看起来是很正确的,如果自己没判断力的话很容易被带偏,最近顺着他的思路走,但就是不work,我经常会怀疑:

  • 是不是一开始某些东西就错了

  • 或者这个问题本身包含了一些 AI 没法理解的东西,我们之间有些信息没用语言同步到位


反馈机制

实际开发的一个基本常识是:每次改动之后都需要通过测试来验证效果。

最近也了解到一些方法,单元测试,AB测试,TDD,敏捷开发之类的。

但这里存在一个很明显的分界:

  • 纯代码逻辑
    测试结果清晰、可量化,容易反馈给 AI

  • 依赖视觉或主观判断的场景(例如 UE)
    输出往往需要肉眼观察,很难转化成精确、结构化的反馈

这就会导致两个问题:

  1. AI 无法获得高质量反馈 → 难以收敛

  2. 人本身也很难设计出合理的观测指标 → 给不到ai好的反馈,接下来的路径就不清晰

最终结果就是:问题还是一直work不了,又找不到明确的改进方向。


开发文档

我之前其实尝试优化过自己的工作流:一边开发,一边写文档。

但最近又发现一个事儿是:

如果一开始走在一条错误的路径上,那么文档也会同步记录错误的理解:

  • 文档逐渐偏离真实情况

  • 错误被不断放大

  • 后续新开的线程也会被这些“错误前提”污染

所以最近的一个小调整是:把文档拆分为成事实层和逻辑层

  • 事实层:记录客观发生了什么

  • 逻辑层:记录自己的推断与解释

但这里其实我思考的还是比较模糊,感觉效果并不是很好。一般是直接让ai去文档,我其实很难知道他理解的逻辑层的可信度到底是多少,完全不看好像也不行,完全看更不行。


总结

总的来说,用ai的最重要的几个体会就是

  • 清晰的上下文控制

  • 高质量的反馈机制

  • 对过程的记录

以及最重要的其实还是自己的工程能力。

Licensed under CC BY-NC-SA 4.0