桃子桃子快讯
返回首页
行业动态

Rust 五团队通过 LLM 编程准则:设熔断机制限制 AI 代写

Rust 编译器等五大团队正式通过 LLM 使用准则,要求披露辅助贡献并设合并比例熔断机制。

2026.08.10 · 周一5 分钟阅读

Rust 编程语言的五个核心团队本周正式通过了一项关于大语言模型(LLM)使用的新政策,为贡献者向 rust-lang/rust 主仓库提交内容时如何借助 AI 工具划定了边界。该准则由 Jynn Nelson 起草,并于 8 月 5 日通过 Inside Rust 博客发布。其核心原则可概括为一句话:可以用 LLM 来回答问题、分析、提炼、检查、提出建议和审查,但不能让它替你「创造」。

目前已批准这项准则的团队包括编译器、标准库、类型系统、rustdoc 和 bootstrap。准则用一套公开、成文的规则,取代了 Nelson 所形容的过去那种没有明文规定、近似「蛮荒西部」的管理方式。需要注意的是,准则目前仅适用于 rust-lang/rust 仓库本身,且只约束上述五个团队。

三类用途:允许、有条件允许、明确禁止

新政策把 LLM 在贡献流程中的角色分成三层。

  • 完全允许:仅供贡献者本人查看的私人用途,包括向 LLM 询问代码库相关问题、总结讨论串、私下让它审查自己的代码,只要这些输出不发布到需要他人阅读或审查的位置即可,也无需披露。
  • 允许但必须披露:包括机器翻译、修复拼写错误等「微小修改」、借助 LLM 发现 Bug,以及使用 LLM 代码审查机器人。后者还必须以独立且明确标记的 GitHub 账号运行,方便不愿看到的用户直接屏蔽。
  • 明确禁止:包括由 LLM 直接生成评论、文档和编译器诊断信息;任何必须依赖 LLM 才能运行的流程;以及仅凭 LLM 的审查结论就决定合并或拒绝某个改动。

任何人都有权拒绝阅读 LLM 生成的内容;任何政策都必须先写给人看,再整理成机器可读版本;LLM 审查不能替代人工审查,更不能替代作者本人的检查。

AI 写多了会触发「熔断」

对于真正由 LLM 创建的代码改动,准则划出了更严格的实验性边界:必须提前与一名明确指定的审阅者沟通;不得涉及编译器健全性等关键部分;必须有充分测试和人类审查;必须披露 LLM 参与。针对新贡献者的限制更紧——此前未参与过项目者不能直接提交由 LLM 创建的 PR,必须先找到愿意负责审查的审阅者;若所修改代码原本没有现成测试套件,必须自己补上,否则只能关闭 PR。

最具创新性的是内置的「熔断机制」:在任意一个六周窗口内,若已合并的 PR 中超过一半由 LLM 创建,所有 LLM 创建的 PR 将暂停合并,直到占比回落到 50% 以下并冷却至少 10 天。该周期与 Rust 的六周发布节奏对齐。所有此类 PR 将打上新的 ai-assisted 标签,并同步到私有 Zulip 频道用于数据收集,评估 LLM 辅助贡献者是否真的在学习、是否持续产出有价值的工作。

违规处理方面,故意隐瞒或虚假陈述 LLM 参与情况,将被视为违反 Rust 行为准则,与骚扰行为同级,首次可能警告,屡犯可被封禁。

三个推动力

Nelson 在公告中指出,促使团队从非正式管理转向成文规则的压力主要来自三方面:

  • 「漂亮 PR 已不代表投入」:过去审阅者默认结构完整、测试充分的 PR 背后站着一位真正理解代码的贡献者,而 LLM 时代这一信号正在失效。
  • 审阅资源进一步紧张:当前 rust-lang/rust 仍有 1281 个未关闭 PR,LLM 提高了代码产出速度,却没有同步增加有判断力的审阅者。
  • 「复制回贴」浪费审查时间:部分贡献者把审阅者意见复制进 LLM,再把回答粘贴回 GitHub,破坏了审查基于真实交流的基本假设。

与 Zig 的对比和后续走向

Rust 并非唯一开始为 LLM 划界的项目。Zig 采取更彻底的禁用立场:不仅禁止生成代码和文字,也禁止改写、转述、翻译、头脑风暴甚至找 Bug。Zig 方案执行成本低,但贡献者遵守成本高;Rust 则要求审阅者做更多判断,但也允许贡献者继续使用他们已有的 LLM 工具。

Nelson 同时强调,Rust 内部对 AI 工具的使用方式和时机的态度存在明显分歧,「很可能永远也不会形成共识」,因此准则被设计为可修订——重大修订需每个批准团队重新签字同意,各团队也可选择彻底废除。Rust 领导委员会还在考虑成立项目级 LLM 委员会,若成立,其规则将高于当前准则,并可能从 rust-lang/rust 扩展到整个项目。

准则正式生效前已提交的 PR、rust-lang 组织下属其他仓库、未批准准则的团队,以及语言团队的 Issue 跟踪与稳定性报告均不在覆盖范围内。此外,即使有人违反 LLM 使用准则,其他人也不能因此对其进行骚扰——这同样违反 Rust 的行为准则。

首个六周周期结束后,Rust 将依据 Zulip 频道收集的数据,决定是否调整允许 LLM 代码贡献的边界。Nelson 在文中写道,目前的准则只是第一步,并不是关于 Rust 如何面对 LLM 的最终答案。

信源