← 返回文章归档

AI 深度解读 2026.03.10

【深度解读】2026-03-10|当 AI 重新实现开源库:一场关于“合法即正当”的大辩论

上周,Python 生态圈发生了一件看似不起眼但意义深远的事:chardet 库发布了 7.0 版本。这个被全球约 130 万个项目每月调用的编码检测库,在新版本中实现了 48 倍性能提升、多核支持,并完成了从 LGPL 到 MIT 许可证的变更。

但真正引发震荡的,不是性能数字,而是这个新版本是如何诞生的。

从零开始的“干净屋”

项目维护者 Dan Blanchard 讲述了一个听起来像是“干净屋”(clean room)再实现的故事:他从未直接查看原有源代码,而是将 API 文档和测试用例输入给 Claude,让 AI 从零重构整个库。JPlag 代码相似度检测显示,新代码与历史版本的相似度不足 1.3%。

这意味着什么?按照传统的版权法解释,如果真的是“独立创作”,那么新作品不受原许可证约束,切换到 MIT 是完全合法的。Blanchard 的逻辑是:代码相似度足够低,就是一个新的独立作品,因此没有义务延续 LGPL。

但原始作者 Mark Pilgrim 不这么看。他在一封公开信中指出,仅通过 API 和测试用例重构,本质上仍然是在已有设计的框架下工作。“暴露于原始设计”和“真正的独立创作”之间存在本质区别。

两位开源教父的“对台戏”

这场争论迅速升级,吸引了开源世界两位标志性人物的回应。

Armin Ronacher(Flask 作者)公开支持重新许可。他的核心论点是:GPL“违背了分享精神”,因为它限制了衍生作品的自由度。他甚至透露自己早就想用 AI 重写 GNU Readline,只是碍于 GPL 约束未能动手。

这个立场的讽刺之处在于:Vercel 刚刚用 AI 重新实现了 GNU Bash 并开源,当 Cloudflare 以同样方式重新实现 Next.js 时,Vercel 却公开表达了不满。Ronacher 本人注意到了这个矛盾,但选择“继续前进”。他在文中承认自己“有利益关联”——因为他也想让 chardet 变成 MIT 许可。

Salvatore Sanfilippo(Redis 作者)则从版权法历史出发,将 AI 再实现类比当年 GNU 重新实现 Unix 用户空间——两者在法律上都是允许的,因此都是正当的。

但这个类比忽略了一个关键事实:当年 GNU 是把专有软件变成自由软件(从封闭走向开放),而 chardet 7.0 是把 copyleft 软件变成 permissive 软件(从开放走向更开放,但削弱了回馈义务)。方向的逆转,改变了一切。

法律与道德的鸿沟

争论的核心问题被一位匿名评论者准确概括:合法是否等于正当?

法律设定的是底线。越过底线会被处罚,但不越过底线不等于行为正确。税务优化可能是完全合法的,但公众依然可能认为它“不够正当”。同样的逻辑适用于 AI 再实现。

FSF 执行董事 Zoë Kooyman 的表态简短而有力:“拒绝授予他人你作为用户所获得的权利,无论使用什么方法,都是反社会行为。”

被忽视的“社会契约”

chardet 不是一个人的作品。它是十二年来数十位贡献者共同心血的结晶。 LGPL 许可证本质上是一份“社会契约”:如果你使用这个库并修改它,你必须以同样的许可证分享你的改进。这不是一个法律强制,而是一个信任框架——让贡献者相信自己的劳动不会被人“摘桃子”的保障。

当 Blanchard 用 AI 绕过这个契约时,他并没有违法。但他打破了这个信任。

Bruce Perens(Open Source Definition 原作者)对 The Register 说的那句话值得全文引述:“整个软件开发的 economics 已经死亡、终结、结束、彻底破产!” 他的意思是:当再实现成本从五年降到五天,任何许可证保护都变得形同虚设。

新的方向:规范级 copyleft

文章作者提出了一个值得思考的方向:既然源代码可以被 AI“从规范生成”,那么真正需要保护的或许不是源代码本身,而是规范层(specification)——API 设计、测试用例、接口定义。

Blanchard 自己声称他“只用了测试用例和 API,没有看源代码”——这反而证明了测试用例和 API 规范才是这个项目的真正核心知识产权。如果未来有一种许可证同时保护“规范”和“实现”,可能会成为 AI 时代的新契约。

这场争论意味着什么

这场辩论不会因为一篇文章或一个裁决而结束。它标志着一个时代的终结:

过去三十年,开源社区建立在“法律是最低共识”的假设上。GPL 的存在不是为了威胁谁,而是为了让“相信开放的人”有一个共同的承诺框架。

但当 AI 使得重新实现变得极其便宜时,法律工具所能提供的保护正在消解。社区需要重新回答一个问题:在法律之外,开源究竟意味着什么?

这个问题的答案,将决定未来十年开源生态的走向。


本解读参考来源:Hacker News 讨论链、minhee.org、FSF 声明、The Register 报道