||
软件编程的时代变迁
知名计算机科学家Andrej Karpathy最近有个演讲,讲了software编程的三个时代:
software 1.0, 就是过去用C、C++,和Java、C#等,根据软件应用的需求,进行编程,比如工资管理系统等。
software 2.0,神经网络开始崛起,编程需要依赖引入神经网络,利用数据进行训练、调参,训练出的模型融合到应用中,比如,地库的车辆自动检测系统、人脸识别门禁等应用。
software 3.0, 随着LLM的诞生和agent软体智能体的出现和应用,此阶段的编程,显示出构件化、自动编程复用等特征。
个人认为,这些过程的变化与发展,就如盖房子,从自己用土和泥做坯、烧砖,到买砖用水泥和缝垒墙,再到直接购买预制的水泥梁柱、框架,再填充空心砖和缝成屋(应用)类似。
为什么,软件应用编程会出现如此的变化呢?
这也是计算机及信息处理的时代变迁:过去的编程,依赖局部的和少量的数据处理(数据库够用)。而随着发展,大数据处理逐步成功,得力的工具自然(目前)是多层神经网络的成功。
而最近的LLM,作为使用神经网络处理海量数据的一款成功的智能产品,配合软体的agentic system等,其智能性逐步在变革软件代码的产生、调试和使用。
其本质在于,这既是大数据处理的结果(产品的智能性替代部分人力的智能工作),也是目前应用依赖于对海量数据处理的需要。而这种依赖与过去不同在于,其应用需要处理的数据,不再是单单从局部数据考虑,而作为海量数据的一个部分,进行考虑。也就是说,如果想发挥某个具体应用数据的处理,必须依赖与这些数据相关联的数据的智能,而这些智能(从数据挖掘出的智能)已经以预制件的形式,如预训练的大模型LLM、VLM,可以在具体的应用中直接应用与融合。这样做的好处,正如直接购买预制的梁架盖房子,除了快,更加关键的在于,可以构架和实现更加符合能够充分抽取处理数据的应用潜力。
一句话:当下的编程,其实是进入了广义的大数据处理的编程时代。而以LLM、VLM、Agentic等 为代表的作为大数据智能处理的成功形式,正逐步变为可以直接利用的编程构件,会逐步被编程人员接受和使用,成为构建更加高效处理应用相关大数据的不可或缺的关键部件。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2025-6-24 11:40
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社