arXiv上一篇被归类为计算机科学下软件工程(cs.SE)与人工智能(cs.AI)方向的论文,刚推翻了“AI淘汰软件工程师”的流行观点。
你可能听过类似的讨论:AI写代码越来越快,软件工程师会不会失业?这篇论文的结论刚好相反——AI编码工具兴起,软件工程师反而更不可缺少,甚至是AI辅助开发的核心基础,没有它,AI产出的代码只会是“看似合理却不可信”的垃圾。
先说说AI的天生缺陷。论文里明确,大语言模型有三个结构属性,是无论怎么训练都改不掉的:概率生成、领域无关性、语义无状态。概率生成很好理解,它生成代码的每一行,都是按训练数据里的概率选出来的,不是基于严谨的逻辑推导——比如它能写出“计算用户年龄”的函数,却可能忘了把出生日期的格式做校验,只是因为训练数据里这类代码的概率更高。领域无关性呢?它是通用模型,没有深度的特定领域知识,比如你要它写符合医疗数据隐私规范的模块,它根本不知道那些规范的具体要求,只能按通用逻辑凑。语义无状态更关键:它不跟踪对话里的深层上下文,比如你先让它写“用户登录功能”,再让它“加个短信验证”,它可能忘了之前提过的“密码加密规则”,直接生成一个新的、不符合要求的登录逻辑。这三个缺陷,不是靠堆训练数据或算力能解决的,是模型本身的特性。
那谁来填这个坑?论文说,需要四个“知识杠杆”,而且每一个都必须由软件工程师来做,变成可落地的持久产物。这四个杠杆是:方法学知识、领域知识、设计选择、过程选择。方法学知识就是怎么搭架构、怎么组织代码的逻辑,不是瞎堆代码;领域知识是某个行业的特定规则,比如金融的支付校验、医疗的数据隐私;设计选择是选微服务还是单体架构、用哪种数据库这类决策;过程选择是怎么写测试用例、怎么做代码审查这些流程。每个环节,软件工程师都要扮演三个角色:方法学家定规则、中介协调需求和AI输出、保管者维护这些知识,让AI能在正确的框架里工作。
换个说法,AI像个会查字典但不会写作文的学生,能快速拼出句子,但要写出符合要求的作文,必须有老师(软件工程师)定好大纲、选好素材、检查逻辑。原来软件工程师要写作文,现在要当老师,核心能力变了,但不可或缺。
对行业来说,这不是挑战,是角色的重新定义:原来的软件工程师要精通代码实现,现在要精通“让AI为我所用”的规则,把零散的知识变成可复用的框架,让AI的产出能落地、可信。
当AI能生成大部分代码,软件工程师的核心竞争力,会不会从“写代码”变成“定义AI的代码规则”?
素材来源:arXiv (LLM/多模态新论文) · AI情报、AI智能体、科研前沿
查看报道原文

发表第一条评论吧