苹果的人工智能研究人员悄悄发表了三项新研究,揭开了一个重大新雄心的帷幕:自动化软件开发中最乏味和最关键的部分。这些论文发表在苹果机器学习研究博客上,详细介绍了新的人工智能系统,这些系统可以预测可能出现错误的位置,自动编写整个测试计划,甚至自行修复损坏的代码。这很重要,因为它不仅仅是另一个“人工智能编写代码”演示。苹果正在建立一套专业的人工智能质量工程师,以在缺陷到达你的手机或电脑之前发现并修复它们,这可能会导致生产力的巨大提高和(希望)更稳定的软件。
论文 1:AI 错误预测器
第一项研究“使用自动编码器变压器模型进行软件缺陷预测,”来自研究人员 Seshu Barma、Mohanakrishnan Hariharan 和 Satish Arvapalli,解决了“错误”代码的问题。他们没有让人工智能读取数百万行代码(这是一个容易产生人工智能“幻觉”的过程),而是构建了一种不同类型的工具。他们的模特, ADE-QVAET,其行为不太像代码审查员,而更像数据分析师。它本身不读取代码。相反,它分析 有关代码的指标,例如其复杂性、大小和结构。它经过训练可以找到这些指标中的隐藏模式,从而可靠地预测错误最有可能隐藏的位置。结果非常有效。在错误预测的标准数据集上,该模型实现了 98.08% 准确率。它还在精确度和召回率方面得分很高,从技术角度来说,它非常擅长发现真正的错误,同时避免浪费开发人员时间的“误报”。
论文 2:自动化质量工程师
发现错误固然很棒,但是软件测试带来的堆积如山的文书工作又如何呢?第二项研究“用于软件测试的代理 RAG,”正面解决了这个问题。研究人员指出,质量工程师花费 30-40% 的时间 只是创建“基础测试工件”——测试计划、案例和脚本的公司术语。他们的解决方案是一个人工智能代理,可以自动完成这项工作。系统读取项目的需求和业务逻辑,然后自动生成整套测试文档。该系统保持完全的“可追溯性”,这意味着它准确记录哪个测试用例对应哪个业务需求。这里的影响是用时间和金钱来衡量的。该系统表现出了非凡的 94.8% 准确率 在其生成的测试中。在验证项目中,它导致了 测试时间缩短 85% 和一个 测试套件效率提高 85%。对于一个项目来说,这意味着将上线日期提前了整整两个月。
论文 3:教授代码修复的人工智能“健身房”
第三个也是最雄心勃勃的研究是“使用 SWE-Gym 培训软件工程代理和验证员本文提出了下一个合乎逻辑的问题:当你可以修复错误时,为什么还要去寻找错误呢?为了做到这一点,团队为人工智能代理建立了一个“健身房”。这个训练环境, SWE-健身房,是一个沙箱,由 2,438 个现实世界的 Python 任务 从 11 个开源项目中提取。每个任务都有自己的可执行环境和测试套件。这使得人工智能代理能够练习完整的开发人员工作流程:阅读错误报告,编写代码来修复它,然后运行测试以查看修复是否确实有效(并且没有破坏其他任何内容)。培训得到了回报。人工智能代理在这个“健身房”接受训练 正确解决了 72.5% 的错误任务,这一结果比之前的基准高出 20 个百分点以上。这些是专用工具,而不是通用人工智能编码器。自动化测试的研究人员(论文 2)指出,他们的工作仅专注于特定的“员工系统、财务和 SAP 环境”,这意味着它还不是一种万能的解决方案。同样,错误修复“健身房”也专注于 Python 任务。这三项研究表明了一个明确的、多管齐下的策略。苹果不仅仅试图打造一种“全能”人工智能。相反,他们正在建立一支人工智能专家团队:一名错误预测分析师、一名测试编写“论文推手”和一名错误修复“技工”。这种方法可以从根本上改变软件开发的经济性,从而缩短时间、降低成本和提供更可靠的产品。




