AI 帮代码找 Bug,英特尔开源机器编程工具 ControlFlag

2023-02-24 16:16:40 来源:IT之家
        【每日科技网】
AI 帮代码找 Bug,英特尔开源机器编程工具 ControlFlag

  10 月 21 日消息,英特尔近日开源了机器编程工具 ControlFlag,这是一种使用机器学习来检测计算机代码问题的工具。理想情况下,ControlFlag 的应用可以减少调试应用程序和软件所需的时间。

  在测试中,英特尔的机器编程研究团队表示,ControlFlag 在专有的“生产质量(production-quality)”软件中发现了数百个缺陷,证明了它的实用性。

  机器编程工具 ControlFlag 可通过 https://github.com/IntelLabs/control-flag 下载。

  英特尔机器编程研究团队(MPR)的历史可以追溯到 2017 年。从那时起,英特尔就已经开始着手,构建新颖的机器编程(MP)系统,如 ControlFlag,这些系统有助于改进代码调试或自动提取性能。

  英特尔实验室的首席人工智能科学家兼机器编程研究总监和创始人 Justin Gottschlich 表示,研究小组的第一个目标是将开发软件所需的总时间减少 1,000 倍。例如,今天可能需要三年才能完成的事情,在未来内就可以用机器编程系统完成。除了提高软件开发生产力之外,第二个目标是确保机器编程系统在合成新软件时保持特定的质量特征,如准确率、性能、安全性和可维护性等特征。

  目前,几乎所有大型软件在准确性、性能或安全方面都存在漏洞。一些留存时间久,无法被专家程序员检测到的错误可以通过机器编程自动检测,并实现零人工干预。此外,随着软件在不断增加新功能,软件更新会使得引入错误的可能性增加并出现问题。

  值得注意的是,某些错误会存在潜在的安全漏洞,造成损失数百万美元的灾难性后果。

  “机器编程的三大支柱”是英特尔机器编程研究的关键:

  第一个支柱是意图,旨在发现编程的意图,从软件中提升意义,确定人类向机器表达想法的新方式。

  第二个支柱是发明,创建新的算法和数据结构来实现意图,涉及创建或改进算法核心硬件和软件构建块,使用各种机器编程技术实现一些已知的意图。

  第三个支柱是适应,在不断变化的硬件、软件世界中发展软件,自主地演变软件特定生态系统,协助计算后端进展。自适应系统主要用于帮助识别和改进软件质量特性,例如性能、安全性和可维护性。

  从三大支柱的角度来看,ControlFlag 集中落在了适应支柱,它试图找到软件编码异常。虽然 ControlFlag 还不能自动减轻它发现的缺陷,但它会为用户提供潜在更正的建议。

  正式开源前,ControlFlag 已在生产级软件和广泛使用的开源软件系统上进行了测试。

  例如去年,ControlFlag 发现了客户端 URL(Client URL,cURL)中的代码异常。客户端 URL 是一个计算机软件项目,每天使用各种网络协议传输数据超过 10 亿次。在向客户端 URL 团队报告异常后,他们认可了 ControlFlag 的发现并随后修补了代码。

  ControlFlag 于 2020 年 12 月推出,但在开源之前仅在英特尔内部使用。

  Gottschlich 在 LinkedIn 上的一篇博文中提到:“最近,ControlFlag 通过在专有生产级软件中识别数百个与内存和潜在系统崩溃错误相关的缺陷,取得了进的进展。此外,ControlFlag 在几个高质量的开源软件存储库中也发现了数十个新的异常。”

  ControlFlag 可与任何包含控制结构的编程语言一起使用,并利用无监督学习来减少调试工作,从未标记的源代码中学习。随着新数据的引入,它会不断发展以使其实现自我发展。ControlFlag 将自学对数据进行分类,从其固有结构中学习处理未标记的数据。

  ControlFlag 不断从未标记的源代码中学习,随着新数据的引入,不断“进化”使自己变得更好。虽然 ControlFlag 还不能自动减轻它发现的编程缺陷,但该工具为开发人员提供了潜在的更正建议,Gottschlich 表示。

  这些惊人的结果显示了 ControlFlag 能够显著提高软件开发的成本和效率。此外,对高质量代码的需求增多,吸引了越来越多的有抱负的程序员加入这个行业。

  最近的一项研究发现,2020 年 IT 行业在与调试代码相关的软件开发成本上花费了约 2 万亿美元,其中约 50% 的 IT 预算用于调试代码。

  “英特尔致力于使软件更加完善,维护起来更轻松,同时保持卓越的性能,而不会引入安全漏洞。我们希望像 ControlFlag 这样的项目可以大大减少在全球范围内开发软件所需的时间。”Gottschlich 表示,“在调试上花费的大量时间被节省,从而使我们能够加速技术进步。”

  ControlFlag 等 AI 驱动的编码工具以及代码补全工具 Tabnine、代码测试工具 Ponicode、代码安全审核工具 Snyk 和代码审查软件 DeepCode 等平台会减少开发人员之间代价高昂的交互,例如问答环节和重复的代码审查反馈。国际商业机器公司(IBM)和人工智能公司 OpenAI 致力于研究机器学习在软件开发领域的应用,是潜力十足的众多公司之二。但研究显示,实现零人工干预有很长的路要走,才可以代替许多需要程序员定期执行的任务。

  ControlFlag 测试过程中发现的错误被开发人员认可,展示了机器编程工具在软件开发领域的广阔前景。

  英特尔机器编程研究团队专注于提高软件质量和开发人员生产力。开源 ControlFlag 后,将进一步致力于实现零人工干预。针对提高软件开发领域的成本、效率问题,众多代码测试、补全、审核工具上线,多个头部玩家在机器编程研究领域共同努力,将进一步提高软件开发领域的准确率、安全性。

免责声明:本文仅代表作者个人观点,与每日科技网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们联系,本网站将在规定时间内给予删除等相关处理.

猜你喜欢

英伟达Vera Rubin全面量产,正式进军AI PC市场

近日,英伟达CEO黄仁勋在GTCTaipei2026主题演讲中宣布,新一代AI计算平台VeraRubin已全面投入生产,标志着继Hopper、Blackwell之后的第三代旗舰架构正式进入交付阶段,产

2个月前

Apple Intelligence正式入华 适配多终端开启智能新体验

近日,苹果公司宣布升级Siri后的AppleIntelligence正式落地中国市场,该功能优先向iPhone16Pro及M4芯片Mac用户推送,带来屏幕理解、跨App操作等全新智能体验。此次入华的A

4个月前

Google Gemini推“切换工具”,打响AI聊天机器人用户争夺战

当前,AI聊天机器人市场正上演一场激烈的用户争夺战。为吸引其他平台的用户“跳槽”,Google于3月27日宣布推出一项名为“切换工具”的新功能,允许用户将其他聊天机器人的“记忆”和完整聊天记录直接导入

4个月前

NVIDIA发布全新大模型,这5个功能直接封神

在GTC2026大会上,NVIDIA创始人兼CEO黄仁勋正式发布了Nemotron3系列大模型。这一全新模型家族被定位为“扩展多模态智慧以提供专业化的代理式AI”,在本地部署、隐私保护和多模态理解等维

4个月前

Air Street Capital募资2.32亿美元 成欧洲最大单一人GP AI风投基金

伦敦风投AirStreetCapital宣布完成第三期基金募资,规模达2.32亿美元,成为欧洲最大的单一管理人风险投资基金之一。据该公司3月24日发布的消息,新基金将聚焦于欧洲及北美地区的人工智能早期

4个月前

苹果地图将引入广告 搜索功能或迎商业化

据报道,苹果公司正计划在iOS系统的地图应用中增加广告功能。知情人士透露,这一变化最快可能在本月正式公布,并于今年夏季开始逐步在应用中展示广告。根据目前的方案,商家将通过竞价方式,使其在用户进行相关关

4个月前