Wine Project的愚人节玩笑:利用AI加速代码审查
本周早些时候,Wine开发者Gabriel ivncescu与CodeWeavers提出了一个很棒的建议:利用AI来协助代码审查过程,以便更准时地审查和将补丁上流到Wine代码库中,从而允许Windows游戏和应用程序在Linux和其他平台上运行。虽然理论上很棒,但在这个阶段,Wine只是一个愚人节玩笑。
Gabriel的建议是利用一个大型语言模型来帮助及时审查代码。这在理论上和技术上都是可行的,有各种各样的人工智能代码助手,GitLab的结构化过程可以自动化。已经有许多初创公司在开发人工智能代码审查工具,尽管在开源世界中没有引人注目的牵引力,也没有看到开源项目的广泛采用。在这个阶段,最接近开源项目世界的是各种邮件列表机器人检查补丁是否符合内核编码标准、构建测试和一些英特尔CI测试。
4月1日的提案让LLM拥有“对整个审查过程的完全权力,这样我们就可以专注于编写代码”和“它的目标是成为项目的最终和唯一维护者”。我们还没有完全做到这一点,但是代码审查的不足和其他困扰开源项目的因素是毫无争议的……这条消息是在《XZ》安全惨败后几天发出的,AI可能已经抓住了总是失败的沙箱代码检查,这是故意添加的,但不一定是AI机器人故意对抗流氓开发人员或项目维护者。
邮件列表提案接着添加了其他充满活力的评论,比如:
由于训练数据的原因,它显示了著名评论者(如Linus Torvalds(来自Linux内核))的评论风格的偏见,因此期待大量富有成效的咆哮。我还赋予它在代码无法使用时关闭MRs的功能,尽管显然只有在获得授权时才会这样做。在我的测试中,我发送给它的98.657%的代码被归类为“垃圾”和“不可挽救”,证明了它的有效性。
...
等待数周甚至收到MR回复的日子将一去不复返;现在你几乎马上就会被抨击,甚至很可能你的MR会被立即关闭,因为“失败的原因”,如果它对无所不知的法学硕士来说如此糟糕的话。
While an April Fools' gag this year, leveraging AI/LLMs in the future could help out code review for short-staffed and under-funded open-source projects and help in a multitude of other related areas for enhancing the productivity of open-source projects especially. It will be interesting to see how AI impacts open-source projects in the years to come.