专家为您带来最新的 AI 趋势
获取有关最重要且最有趣的 AI 新闻的精选洞察分析。订阅我们的每周 Think 时事通讯。请参阅 IBM 隐私声明。
我们已进入与机器共同编写代码的时代。
当 OpenAI 的 ChatGPT首次出现在技术领域时,它开启了生成式 AI 时代,而代码生成则是最早的使用案例之一。随后,人工智能 (AI) 编程助手接踵而至,从开创性的 GitHub Copilot 到 Amazon Q Developer、Anthropic 的 Claude Code、Google 的 Gemini Code Assist、IBM Bob 和 Mistral Code。
各类编码工具的底层依托一项核心技术:代码专用大语言模型 (LLM)。这类模型正在重塑软件研发模式。
我们采访了多位 IBM 专家,以深入了解代码 LLM 如何重新定义软件开发人员的角色,并了解他们对这些模型未来发展的预测。分享自己洞察分析的包括:
Kaoutar El Maghraoui,首席研究科学家
Bridget McGinn,面向代码的 AI 研究软件工程师
Rameswar Panda,杰出工程师
Fumiko Satoh,面向代码和安全的 AI 资深技术职员兼高级经理
获取有关最重要且最有趣的 AI 新闻的精选洞察分析。订阅我们的每周 Think 时事通讯。请参阅 IBM 隐私声明。
代码大语言模型是基于源代码专项训练的专用模型。它们可以从零训练搭建,也可基于预训练模型,使用代码数据集微调优化得到。这些训练数据必须具备高质量与多样性,保障代码大语言模型能够适配各类编程语言下的多样编码场景。
由于面向代码的 LLM 通常源自为自然语言处理 (NLP) 设计的 AI 模型,因此它们通常采用自然语言描述作为提示。它们能够完成以下现实世界的编程任务:
辅助代码调试
代码补全(也称为自动补全)
代码摘要
生成文档(作为代码片段的内联注释)
提出代码优化建议
现有代码跨语言转换(例如将 Python 代码转为 JavaScript)
一些常见的代码 LLM 示例包括 Google 的 CodeGemma、Meta 的 Code Llama 以及 Mistral 的 Codestral 和 Devstral。与此同时,开源代码模型包括 DeepSeek Coder、IBM Granite Code 和 Qwen3 Coder。
其他非编程专用、但经过代码数据训练优化的 LLM 包含 Anthropic Claude Sonnet、Opus 与 Google Gemini Pro。
代码 LLM 使软件创建的渠道大众化,支持公民程序员、领域专家和其他没有接受过正规计算机科学教育或培训的非传统开发人员。它们可以实现快速原型设计、更快的迭代周期以及新软件工程师更快的上手速度。
除了重塑软件开发之外,代码 LLM 还在重新定义软件开发人员的角色。
El Maghraoui 认为,软件工程师正在从代码生产者演变为代码管理者。“虽然编程依然至关重要,但重点正转向提示工程。我们如何在这些 LLM 的背景下构建正确的查询?开发人员不再亲自编写每一行代码,而是越来越多地编排 AI 生成的代码,将各个部分拼接在一起。
然而,这一演变只是冰山一角。El Maghraoui 认为,开发人员角色将发展到她所说的“意图驱动工程”。其理念是远离语法,专注于结构,放下细节,扩展视野,从“什么”切换到“为什么”,突出目标、结果和影响。
McGinn 认为,代码 LLM 可类比为程序导入的代码库。“问题解决效率会大幅提升,就像代码库帮助开发人员复用成熟功能,无需重复从零开发。”
该观点与生成式计算理念相契合。在这套框架中,代码模型以模块化软件组件形式接入系统,可像可编程接口一样调用管理。借此封装底层基础工作,让开发人员将更多精力投入复杂核心问题的解决。
Satoh说:“他们需要考虑设计思维,而不是写代码。我们需要能够创建系统架构的高级工程师”。
这一角色正变得越来越多学科化,不仅包括设计和建筑,还包括伦理和安全等其他方面。El Maghraoui 说:“它不需要那么多手动工作,自动化程度更高,但更具战略性。”“你正在将软件工程与系统级思维、产品思维和道德推理融为一体。现在我们不仅具备编程能力,而且正在成为具备 AI 素养和以人工智能为先的工程师。”
这提供了通过高级别的任务提高技能的途径,对于初级开发人员来说尤其如此。“很多基准测试的目标是达到初级开发人员的功能水平。因此,如果这是我们想要的指标,那么关键在于不需要那么多的指标。”McGinn 说。“我们需要比初级开发人员有更深厚经验的人,或者说,他们可能无需再经历初级开发人员的阶段,就能理解高级开发人员的工作内容。”
Panda 指出,和所有大语言模型一样,代码 LLM 存在固有短板。他建议组织重点关注版权、数据偏差与安全风险,金融、医疗等关键行业的核心应用程序开发更需谨慎。
“你不能盲目依赖它们,”Panda 说,“你必须始终对它们生成的代码持保留态度。”
这种怀疑态度还必须与性能优化机制和校验措施相结合,以验证其合理性和准确性。“你仍然要确保自己在编写测试用例,并且像手动编写代码一样仔细检查代码。”McGinnis 说。
El Maghraoui 则强调对代码 LLM 的支持而非依赖。“如果我们把它们当作教学辅助工具、结对编程器或创意生成器,它们可以促进我们的学习、创造力和生产力。但是,如果我们把它们当作拐杖,不加反省,不加验证,它们就会削弱我们的判断力和负责能力。”
只有开发人员掌握了底层计算原理,才有可能进行验证。毕竟,如果不了解编程的基础知识,如何确认这些模型生成代码的有效性呢?
“虽然编程速度很快,但它并不总是稳健、正确或安全的。”El Maghraoui 说。她补充说,按原样使用生成的代码可能存在危险。“这可能会导致代码库出现漏洞。如果过度依赖这些模型或过度信任其输出,可能会传播细微的错误或低效问题,尤其是在关键系统中。这就是为什么了解正在发生的事情很重要。”
这正是深厚专业知识的用武之地,而基础软件开发理念使之成为可能。
“在学校里,我们仍然教人们手动进行长除法运算,但如果他们要使用计算器,这样做有什么用呢?这与编程类似。要理解正在发生的事情,我们认为哪些基础要素至关重要?”McGinn 说。
相关底层技术体系包含编译器、计算机架构、数据库、内存管理、操作系统等。El Maghraoui 表示:“代码 LLM 封装了底层逻辑,开发人员可能会不再深入学习这类基础原理。”但她补充,掌握软件开发底层原理至关重要,底层逻辑会直接影响源代码功能与运行性能。
虽然代码 LLM 可通过自动执行重复性任务来减少认知开销,但它们也有可能会加剧 El Maghraoui 所谓的“认知萎缩”。她将其比作全球定位系统 (GPS) 的更多使用逐渐侵蚀我们天生的方向感。“如果开发人员严重依赖代码建议,他们的调试就会不那么流畅。如果我们不平衡代码 LLM 与基础实践或基础知识的关系,它们可能会削弱我们依照算法进行思考的能力。
随着代码 LLM 的进步,它们将推出新功能甚至新用例,正如氛围编程趋势所证明的那样。那么,这些模型的未来发展方向是什么?我们的专家做出了他们的预测。
关于 AI 智能体将改变几乎所有行业(包括软件开发行业)未来工作方式的说法,在世界范围内沸反盈天。
El Maghraoui 说:“我看到了向这些具有自我修复代码库的多智能体编程系统的转变。”这些智能体式 AI 系统已经开始成形。例如,IBM 的软件工程 (SWE) 智能体可以通过先“定位”到代码库中漏洞的位置,然后编辑这些代码行来自动解决 GitHub 的问题。
McGinn 期待出现更节能的技术方案:“无需全部依靠超大模型完成运算,可采用轻量化智能体架构降低能耗”,由不同智能体单独承接特定编码任务。
同样,Panda 也很高兴能在笔记本电脑和边缘设备等资源有限的设备上使用 Granite Code 等小语言模型 (SLM)。“与此同时,有些事情对 SLM 来说具有挑战性,因此更大的 Granite 模型就会介入。这是多种模型之间的平衡,而不是只用一个模型解决所有问题。”
当今的集成开发环境 (IDE) 将代码模型和编程助手作为服务或插件纳入。但未来的 IDE 可能会朝着 AI 原生开发环境的方向发展。El Maghraoui 表示:“我们将看到这些 IDE 结合代码 LLM 进行彻底重新设计,不再仅仅作为插件,而是成为其核心的一部分。”
她同时认为,代码 LLM 私有化基础设施部署会成为持续增长的行业趋势。例如,基于 Codestral、Devstral 驱动的 Mistral Code AI 助手,支持本地私有化部署。
“出于性能、成本、数据隐私多重考量,代码 LLM 私有化部署的落地进程正在加快,”El Maghraoui 表示。“企业不愿将自有专有代码传输至第三方 API。私有化部署能够保障源代码、内部代码库、堆栈日志全程不流出企业内网。同时还存在行业监管合规要求,金融、医疗领域尤为严格;大规模承载高吞吐量用例时,内部部署的综合成本更低。”
代码编写与测试用例生成是软件开发流程中相互独立的环节。Satoh 认为代码 LLM 能够打通两大环节,同时辅助代码生成与测试脚本编写。
“我们应当采用同一套模型打通各模块,打造体验连贯统一的产品,” 她表示。Satoh 的设想更为长远,他预判代码模型能够“支撑完整软件开发生命周期”,覆盖需求规范、架构设计等前期环节。
但无论人机协同编写代码的时代会走向何方,El Maghraoui 始终保持审慎乐观的态度。“这就好比一把双刃剑。它既可能给开发人员带来阻碍,也能够成为得力帮手。因此,掌握代码 LLM 的正确使用方式十分关键,既能保留自身核心竞争力,还能进一步激发创新思维。”她认为,能够脱颖而出的“开发人员与企业,会主动接纳这套工作流,不只是将 AI 视作工具,而是视作协作伙伴。”
借助您的 AI 合作伙伴 Bob,加速软件交付,实现安全的意图感知型开发。
利用可信的 AI 驱动型工具优化软件开发工作,最大限度地减少编写代码、调试、代码重构或代码补全的时间,从而拓展创新空间。
通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策能力和商业价值。