AI有个地方非常强,读代码。AI读代码的能力,人类望尘莫及。
比如,有个问题,我跟ai搞两天都没解决,我跟ai说,你去读opencode的源代码,看它是怎么实现的。然后我下载了opencode的源代码,然后ai几分钟就读到了opencode如何实现的,然后把它用到我们的项目了。
就是说,有了AI,一切源代码里的算法都不再是需要高强度读代码之后才能搞懂的了。甚至,我怀疑,以后ai连二进制代码都能直接读懂。
然后,AI架构能力不行,或许正是因为它缺少数据。
AI会背软件工程的原理,能跟你聊得头头是道,但它自己一动手就废。它是嘴强王者。
因为它是背答案,它不是来源于它自身的经验。就像大学毕业生,也会说自顶向下,瀑布,迭代,重构,但真让他动手也一样废。AI就是学过软件工程课,知道几个名词的大学生。
之前说过,动态数据优于静态数据,交互数据优于动态数据。每个级别之间,对于大模型训练的效率,都是指数级的差距。
AI读过大量源代码,但它读到的不是软件形成的过程,不是软件的生命周期,而是软件的化石。它只读到了最后的结果,它只知道最终答案是这个样子,不知道为何会是这个样子,知其然不知其所以然。
如果将来代码助手大量使用之后,形成了大量的交互数据,也许AI的能力会大幅度提升。不过,收集这类数据,对大模型公司可能有些苦难。因为,AI需要的数据,不仅仅是会话历史,还有项目的git提交记录。这些数据,一般是不容易拿到的。