谷歌的 DeepMind 部门展示了一种新的人工智能代理,旨在使编码更加安全。
据称,CodeMender 能够在软件漏洞被黑客利用之前自动检测并修复它们。
人工智能研究部门表示,该代理既是被动的,提供即时补丁,又是主动的,因为它重写和保护现有代码,目的是消除过程中的整类漏洞。
根据 DeepMind 研究人员 Raluca Ada Popa 和 John “Four” Flynn 的说法 ,它已经证明了它的价值。他们在一篇博客文章中写道:“在过去六个月里,我们一直在构建 CodeMender,我们已经为开源项目上游了 72 个安全修复程序,其中一些代码长达 450 万行。
CodeMender 利用 Google 的 Gemini Deep Think 模型来调试、标记和修复漏洞。强大的工具允许代理在提交更改之前对代码进行推理,然后自动验证更改以确保它们不会导致回归。
只有在确保 CodeMender 的补丁修复问题、功能正确并遵循风格指南的验证过程之后,它们才会被发送进行人工审查。
研究人员详细解释了在开发过程中建立的新技术,这些技术让他们对 CodeMender 有效推理和验证的能力充满信心。
其中包括基于高级程序分析的新工具,包括静态分析、动态分析、差分测试、模糊测试和 SMT 求解器,它们会仔细检查代码模式、控制流和数据流,以更好地识别安全漏洞的原因。
还开发了特殊用途的代理,例如基于大型语言模型的工具,可以突出显示原始代码和修改后的代码之间的差异,以验证计划的更改不会引入回归。
尽管对 CodeMender 的潜力持乐观态度,但研究人员表示,他们致力于“谨慎行事,注重可靠性”。
在解释他们未来的计划路线时,他们说:“我们已经开始向各种关键的开源库提交补丁,其中许多已经被接受并上游。我们正在逐步加强这一过程,以确保质量并系统地处理来自开源社区的反馈。
“我们还将逐步使用 CodeMender 生成的补丁联系关键开源项目的感兴趣维护者。通过迭代这个过程的反馈,我们希望将 CodeMender 作为所有软件开发人员都可以使用的工具来确保他们的代码库安全。