Oracle 近日更新了 OpenJDK 的贡献者指南,明确禁止提交由 AI 模型生成的代码。这一决定在开发者社区引发广泛讨论,其影响远超 OpenJDK 本身。

发生了什么

根据 Hacker News 上的讨论,Oracle 在 OpenJDK 的贡献政策中新增了条款,规定贡献者不得提交由 AI 生成或辅助生成的代码。这意味着,无论是完全由 AI 编写的代码,还是基于 AI 建议修改的代码,都可能被拒绝。该政策旨在确保代码的原创性和版权清晰性,但具体执行标准和例外情况尚未完全明确。

为什么重要

OpenJDK 是 Java 语言的核心实现,其贡献政策历来严格,强调代码质量和法律合规。Oracle 此举并非孤立事件,而是开源社区对 AI 辅助开发态度的一个缩影。随着 GitHub Copilot、ChatGPT 等工具的普及,AI 生成代码的版权归属和许可合规问题日益凸显。许多开源项目开始重新审视贡献者协议,以应对 AI 带来的新挑战。

Oracle 的立场可能源于法律风险考量:AI 训练数据可能包含受版权保护的代码,导致生成代码存在侵权隐患。此外,OpenJDK 作为企业级基础软件,任何法律纠纷都可能带来严重后果。因此,这一政策可以视为一种风险规避措施。

影响与看点

对于开发者而言,这一政策意味着在贡献 OpenJDK 时必须更加谨慎,避免使用 AI 辅助工具,或至少确保最终提交的代码经过充分的人工审查和重写。这也可能影响其他大型开源项目,如 Linux 内核或 Apache 基金会,它们可能效仿或制定类似规则。

然而,完全禁止 AI 生成代码可能不切实际,因为 AI 辅助开发已成为趋势。未来,更可能的路径是制定明确的披露和审查机制,而非一刀切。值得关注的是,OpenJDK 是否会提供更详细的指引,以及社区如何反馈这一政策。

独立判断:Oracle 的禁令是开源治理在 AI 时代的一次保守试探,其效果取决于执行力度和社区接受度,但长远来看,开源项目需要更精细的规则来平衡创新与合规。