模式
用 AI 编程有两种常见的思路,一种是 IDE 模式,一种是智能体?!不管具体叫什么了,反正大家能理解就行。
IDE 模式
传统写代码方式的增强。就是在传统的编辑器上,通过插件或者内置增强的方式加入 AI。
智能体模式
更接近于人机交互,而不是去观看代码,所以可能只有一个聊天界面。
区别
但如果只从界面上去认识两种模式,就太流于表面了。我的理解是,IDE 模式就是人去掌控代码,然后分配任务给 AI 去完成。而智能体模式则是将代码完全交给 AI 去操控,而仍只负责提出需求以及查看最终成果。
在接触 AI 的初期,人们很容易怀疑 AI 生成代码的质量,所以更喜欢使用 IDE 模式,比较稳健。
限于当前 AI 的能力并不能够绝对稳定的解决问题,所以智能体模式需要学习一定的操控方法和技巧。是一种看起来很简单(仿佛说话就能编程),但是有一定门槛的操作方法。不过,一旦掌握操作技巧,很多人就再也回不去了。
工作方式上的外在区别
IDE 模式更侧重于人去掌控整个流程,然后逐个任务分配给 AI。即人负责整个调度工作。而智能体模式则是先由 AI 和人共同规划工作路径,然后让 AI 去沿着工作路径逐步完成整个项目,当然也可能是部分项目,比如某个功能点。
不同模型之间的区别
我尝试的一些国内的编程模型,基本上都会在接收到一个任务之后分四步走:
- 分析需求,然后拆解为子任务,形成待办列表
- 按照待办列表的顺序,逐个任务进行完成
- 检查具体的完成效果是否符合预期
- 向用户汇报最终结果
这是一个非常稳健的任务完成流程,在一定程度上也可以理解为 token 换稳定性。毕竟如果生成质量可以保证百分百的准确,那么可能一两步就够了。比如复核之类的就不需要。
而我目前使用 Google 订阅里的 gemini 模型和 claude 模型(因为这两个模型肯定被他们特调了,所以我的感受并不代表这两个模型本身的真实效果),他们更倾向于接收任务,完成任务,不做任何多余操作。
模型与工具
曾经我说,Kimi 和 Cline 配合都很好,就是因为上面所讲到的他自带的这种工作流程。
所以这些模型放到 OpenCode 里,也能够比较好的去完成任务。但如果换做 Gemini 或者 Claude 就感觉他们像是没电的表,一步一停。
这时候就要说那个著名的插件了 oh-my -opencode,它所创建的智能体叫做西西弗斯,因为在它的设定下,一旦 OpenCode 右侧存在待办列表,那 AI 就必须将待办列表全部执行完才算结束,一旦模型自动停止,它会强行重启此任务。
在我使用国内模型时,一直觉得这个功能有点奇怪,因为国内模型自己就能够保证任务的完整执行,而它一旦中途停止,多数时候是有问题,确实需要向用户进行询问。这时候,如果让他强行停止,反倒起了反作用。
可是当使用另外两个国外模型的时候,我才知道这种强行的监督机制是多么重要。也才明白为什么这个插件有这么大的名声。
把重点放在规划上,然后执行交给 AI,这是一个不错的工作方式。我现在每天在规划部分投入的时间大概要占到 60%,而真正让 AI 去执行去写代码的时间可能只有 40%。这保证了我的项目一直处于向前推进的状态。虽然速度比较慢,但是没有出现过反复。
建了个群
用来一起探讨 AI 相关的内容,当然观察报告依旧会更新,因为我需要汇总成长文来记录自己的思想
