维护者快“破防”了!Godot 遭遇“赛博洪水”,AI 垃圾代码正让开源精神变味

温故智新AIGC实验室

TL;DR:

开源游戏引擎 Godot 正在经历一场由 AI 制造的“生存危机”。由于海量低质量 AI 代码(AI Slop)涌入仓库,核心维护者直呼压力山大、信心受挫。这已经不是简单的技术问题,而是一场关于“信任”的赛博保卫战。

在这个“万物皆可大模型”的时代,只要你会敲回车,似乎就能在几秒钟内成为一名“高产”的开发者。但对于知名开源游戏引擎 Godot 的维护者来说,这种“效率”简直是一场噩梦。

最近,Godot 的核心维护团队在社交平台上公开“吐槽”:他们正被铺天盖地的 AI 生成代码所淹没。这些代码看起来西装革履、礼仪满分,实则逻辑拉胯、漏洞百出。用维护者的话说,他们甚至不知道自己还能坚持多久。

看起来像那么回事,实则“赛博废料”

事情的起因是 Godot 的主要维护者 Rémi Verschelde 在 Bluesky 上发了一段心碎告白。他表示,所谓的“AI slop”(AI 垃圾内容)正像洪水一样涌入项目仓库。1

对不明真相的群众来说,Pull Request(简称 PR,即提交代码申请)数量暴增似乎意味着社区活跃。但在专业维护者眼里,每一个 PR 背后都是沉重的审核成本。

“如果你提交的代码是自己写的,哪怕有 Bug,我们沟通一下也能解决;但如果你直接扔过来一段 AI 生成的‘看起来很美’的废料,那我可能得花上几个小时去猜这段代码到底想干嘛,以及它到底有没有偷偷埋雷。” —— 这大概是所有开源维护者的内心独白。

如今的 AI 已经学会了“伪装”。这些提交上来的代码通常带着整齐的缩进、完美的注释,甚至连 PR 描述都写得感天动地、逻辑自洽。但当你仔细推敲其中的技术逻辑,就会发现它们往往只是对既有模式的拙劣模仿,甚至连开发者本人都不一定看懂了自己交的是什么。2

当“信任”成了开源世界的稀缺品

开源协作的基石是什么?是代码吗?不,是信任

过去,维护者和贡献者之间有一种默契:我默认你是经过思考和测试才提交的。但现在,AI 彻底打破了这个平衡。Verschelde 坦言,他们现在不得不面对一系列让人头大的灵魂拷问:

  • 这段代码真的是人类写的吗?
  • 提交者真的测试过,还是连测试报告都是 AI 编的?
  • 如果我问他为什么要这么改,他会不会反手把我的问题再喂给 ChatGPT?

更尴尬的是,有些贡献者会狡辩说:“我只是用 AI 帮我写了英文描述,代码是我自己写的。” 这种“半真半假”的灰色地带,让维护者就像在玩一场永无止境的“狼人杀”,极大地消耗了原本就极其有限的精力。

用 AI 打 AI?这剧本太黑色幽默了

为了对抗这场“赛博洪水”,Godot 团队甚至在讨论要不要也搞一套 AI 系统,专门用来检测提交的代码是不是 AI 写的。

这种“用魔法打败魔法”的方案听起来就很讽刺:为了不给 AI 喂数据,我们不得不运行另一套 AI。Verschelde 本人对这种循环感到非常厌倦。他甚至考虑过把项目从 GitHub 搬走,去一个更小众的地方。2

为什么?因为 GitHub 的母公司微软正是这波 AI 浪潮的弄潮儿。在某些开发者眼里,GitHub 的各种成就勋章已经成了简历上的“金字招牌”,于是他们利用 AI 批量刷 PR,只为在履历上写一句“曾向 Godot 贡献代码”。

现实很骨感:AI 提高了产能,却没生产“审核力”

说到底,Godot 的困境揭示了一个极其残酷的现实:生成代码的门槛降到了地板上,但审核代码的门槛依然在天花板上。

AI 可以在一秒钟内写出一百行代码,但人类维护者依然需要花一个小时去验证它的安全性。这种效率的不对称,正在压垮像 Godot 这样主要靠理想主义支撑的开源项目。

Verschelde 给出的最终解法其实非常“俗气”,但也非常务实:。如果有更多的资金支持,就能雇佣更多的全职维护者,来分担这些被 AI 放大后的工作量。

否则,当这群最后的热血少年被“赛博洪水”冲走,开源社区剩下的可能就只有一堆互相拷贝、无人维护的 AI 废料了。

引用


  1. Godot 维护者痛批开源项目中愈演愈烈的“AI代码垃圾” · 网易 · (2025/2/19) · 检索日期2025/3/5 ↩︎

  2. Godot 团队痛斥 AI 垃圾代码:让其精疲力竭、士气低落 · IT之家 · (2025/2/19) · 检索日期2025/3/5 ↩︎ ↩︎