HeadlinesBriefing favicon HeadlinesBriefing.com

停止用 AI 贡献淹没开源项目

Hacker News •
×

对开源项目的成功贡献是一种货币。Git Hub 尤其通过多种方式鼓励这一点:在仓库页面展示贡献者的头像,通过活动信息流向你的关注者展示你的贡献,以及在个人资料的活动图上按天显示贡献信号。潜在的招聘经理经常会注意到这一点。招聘人员也经常通过这种方式寻找和筛选候选人。如果你是一名正在寻找工作的软件开发人员(无论是现有的还是有意从事的),调整这些信号通常会对你有利。作为一个开源维护者,过去一年外部贡献模式的变化是非常明显的。我们更有可能收到拉取请求而不是问题。如果我们确实收到问题,它们通常附带 AI 生成的分析。我们收到的安全漏洞报告比以往任何时候都多,而且通常甚至附带 AI 生成的修复提案。我不怀疑其中一些贡献来自真正对我们所做的事情感兴趣的人,但我内心的愤世嫉俗部分认为,其中很大一部分是因为人们正在意识到 AI 可以被用来为自己谋利地操纵 Git Hub。现在很容易让 Claude 生成一份有趣的开源项目列表,然后让 Claude 在其中找到一些问题,再让 Claude 提交一些拉取请求来修复它们。你甚至不需要使用这些项目或关心它们,但你可以轻易地给外人制造一种你关心、发现了问题或花了时间去修复的假象。在互联网上,没有人知道你是条狗,但在 LLM 的帮助下,你可以毫不费力地在你的 Git Hub 个人资料上夸大你的人的能力。最近,一位贡献者从 2018 年末到几周前几乎没有在 Git Hub 上做出过任何贡献,据我们所知与我们项目之前也没有任何互动,却提交了三个独立的拉取请求来更正注释中的拼写和语法错误。Claude 进行了修复,大概还撰写了拉取请求描述,甚至代表用户签署了提交,并贴心地将其共同作者身份插入到提交消息尾部。也许它甚至自己打开了拉取请求,谁知道呢。我很想知道提示是"去找问题"还是出于某种原因特别关注拼写和语法问题。这些更改是无害且正确的,但这并没有让我对接受或合并它们感觉更好。相反,我不禁问自己:为什么是这个,为什么是现在?为什么,在我们代码库的所有问题、TODO 和 FIXME 中,他们提交的是这个?然后我突然意识到,这些贡献根本不是关于我们项目的。我关闭了这三个拉取请求,没有留下任何评论。也许这是不合理的,但说实话,我根本不想鼓励人们用这种琐事来占用我们的时间。我不想开创一个接受实质性毫无改善的拉取请求的先例,也不想让我们的贡献者名单变成询问机器人修复错别字的奖励。安全漏洞报告也出现了同样的模式。CVE 传统上是向报告者致谢的,但我们最近收到的所有报告显然都是 AI 生成的。安全修复当然总是很重要,但我再次怀疑这种情况发生是因为人们关心这些修复,还是因为他们正在寻找一种简单的信用。我们最近在评估这些报告的严重性时变得更加挑剔,在某些情况下,对低严重性的项目拒绝发布 CVE 通知。我对私下披露正在消亡这一事实有一些感受,我可能会另写一篇文章来讨论,但协调私下修复、披露通知和发布所涉及的工作量非常大,足以要求我们必须有所选择。最终,开源是建立在信任之上的。