哥本哈根大学教授:编程的终结尚遥不可及
时间:2025-01-14 07:30
小编:小世评选
在当今人工智能技术飞速发展的时代,大语言模型(LLM)的出现引发了许多关于编程未来的讨论。是否会有一天,AI完全取代程序员的角色?哥本哈根大学计算机教授汉斯·赫特尔(Hans Hüttel)却对此持否定态度。他通过深入分析计算理论中的基本定理,得出编程的时代距离终结尚远。
近期,计算机科学界出现了一些观点,认为编程将会被AI所取代。2023年1月,著名计算机科学家马特·威尔士(Matt Welsh)在《通讯》中提出,“编程正在走向灭绝,大多数普通软件将会被AI系统所生成,几乎不需要手动编码。”这一观点被一些人认为是对未来技术趋势的精准预见,而另一些人则感到不安。
威尔士的观点包含了两个核心假设:第一,未来大多数不“简单”的软件将会依赖于AI;第二,任何非简单软件的开发都会通过AI自动生成。这样的看法被赫特尔教授认为过于简化了复杂的编程领域。
赫特尔指出,简单软件的定义并不明确,当前的操作系统、游戏引擎和软件即服务(SaaS)等都不应该被简单化处理。尽管大语言模型在生成文本上展现了令人惊叹的能力,但将这些模型应用于编程的复杂性远比表面看起来要深得多。
回顾历史,在1954年,FORTRAN语言的创建者曾宣称,FORTRAN将会几乎消除编码和调试的麻烦。现实并非如此。尽管初衷美好,程序员们依旧面临着大量的编码、调试和优化工作。在07年初次提出“以英语编程”的理念后,依然有不少人认为自然语言可以取代编程语言,但赫特尔却认为这一观点存在诸多误解。
以自然语言与AI进行交互,实际上也需要一定的编程思维。虽然我们可以通过简单明了的指令与AI交流,其实在背后仍然需要开发者对编程逻辑有深刻理解。这种互动中的“调试”,往往吸引了开发者的注意力,他们必须考虑语言的精确性和上下文,这意味着只使用自然语言并不足以全面消灭编程工作。
程序生成的核心挑战在于准确性和复杂性。赫特尔教授提醒我们,程序合成是计算机科学中的一个重要而复杂的问题。赫特尔通过引用Gulwani的研究指出,程序合成通常需要基于输入输出示例、自然语言或部分程序的生成,这一过程并没有我们想象中简单。即使是对“简单”程序的生成,其计算需求也可能以指数级增长。对于中等复杂度程序的合成,其算法的资源需求也可能变得极其不切实际。
编程的“终结”显然并没有来临。尽管AI技术的进步可以辅助开发工作,例如代码自动补全、 bug 排查等,但它们并不能完全替代程序员的思维和创造力。赫特尔教授强调,AI可能在某些方面缩短开发时间,但在和应用已有经验教训方面,开发者仍然至关重要。
赫特尔判断,对于软件开发AI与人类程序员的合作,才是未来的关键。AI将促进开发者与最终用户之间的对话和理解,这种互动将提高软件开发的质量与效率。而在许多复杂的应用环境中,人类的判断力、创造力和灵活性仍然是不容替代的。
尽管LLM的崛起使编程看似变得更加简单,但它并未意味着编程的消亡。赫特尔教授的洞察为我们展现了一个清晰的前景:编程的未来依然辉煌,技术虽然在不断进步,但对于人类思维和创造力的需求仍将永存,编程的曙光将在新的合作模式下继续闪耀。