Rust核心仓库发布AI使用政策:偏向禁止多于允许
Rust官方仓库 rust-lang/rust 发布了首个AI使用政策。起因是仓库正被大量低质量AI生成的PR淹没,审核负担越来越重。政策由社区在Zulip上经过3000多条消息的讨论后形成。
政策故意偏向严格。起草者说“宁肯禁止过多,也不能过少”,目的是让规则清晰、容易执行。即便某些AI辅助方式看起来合理,只要难以判断,政策就倾向不允许。
覆盖范围很窄——只适用于 rust-lang/rust 这一个仓库。子树、子模块、crates.io 的依赖,以及 rust-lang 组织下的其他仓库(比如 clippy)不在范围内。原因是子树没有同样的审核问题,没必要赶时间定政策。至于统一的项目范围政策,社区讨论了一个多月也没有达成共识,这次只针对问题最突出的主仓库。
政策放在 Forge 上,是活文档,不是封死的RFC。它会在 CONTRIBUTING.md 以及 rustc 和 std 开发指南里加链接。贡献者需要定期查看最新版本,因为规则可能随实践调整。
讨论时也划了边界:对政策提意见,不能争论AI的长期社会/经济影响、环境影响、版权状态,也不能对使用AI的人进行道德评判。这些话题在Zulip上已经讨论了很久,没达成共识,继续争论只会拖慢政策落地。政策本身也不试图解决这些问题,只聚焦审核负担。
政策制定时参考了其他开源项目的先例。一些项目选择完全禁止AI生成的提交,比如 postmarketOS、Zig、Servo、QEMU。另一些项目允许AI辅助但要求监督,比如 SciPy、LLVM、Blender、Linux 内核、Firefox、Ghostty、Fedora、curl、Linux 基金会。Rust 核心仓库走了中间路线——不禁止AI工具本身,但要求使用的人对代码负责。
政策没有说明“原创性门槛”具体怎么界定——比如AI辅助调试或探索API时,AI没有直接生成代码,是否算违规。也没有说明如何验证贡献者是否真理解自己提交的代码。目前来看,审核者的判断空间很大。政策未来是否会扩展到其他 rust-lang 仓库,取决于主仓库的实施效果。