[转载] AI 时代的开源维护
本文为授权转载,非本账号原创。
原文:AI 时代的开源维护(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/)
原作者及译者:借由 Kevin Hannon (Red Hat) | 译者 Xin Li (DaoCloud) | 2026.06.26
来源:Kubernetes 官方中文博客;许可:CC BY 4.0(参考地址:https://creativecommons.org/licenses/by/4.0/)。保留原作者和译者署名,正文仅做适配博客编辑器的排版与链接格式转换,未改写技术内容。
内容不代表原作者或 Kubernetes 项目对本账号的认可或背书。
AI 确实改变了软件开发的格局。 比以往任何时候都更多的人利用 AI 为他们使用的项目贡献补丁。 对我来说,这是一件好事,因为更多人会贡献补丁而不是分叉项目或不修复问题。 主要问题是,AI 使代码生成变得快速,但在维护代码库方面几乎没有改进。 在本文中,我们将重点介绍 Kubernetes 社区如何适应 AI 辅助编码的世界。
这一旅程的第一步是制定 AI 政策。这看似平凡且官僚,但有许多 PR 陷入了关于 AI 使用的讨论。 AI 政策有助于引导围绕项目对 AI 立场的讨论,并为贡献者提供明确的信号,指导他们如何负责任地使用这些工具。
Kubernetes AI 政策(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#kubernetes-ai-%e6%94%bf%e7%ad%96)
Kubernetes 项目已制定 AI 辅助贡献的明确指南(参考地址:https://www.kubernetes.dev/docs/guide/pull-requests/#ai-guidance), 在创新与问责之间取得平衡。 这些政策旨在保持代码质量并确保人工监督,同时承认 AI 工具可以成为开发过程中有价值的辅助手段。
透明为先(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e9%80%8f%e6%98%8e%e4%b8%ba%e5%85%88)
贡献者必须披露何时使用 AI 工具协助创建 Pull Request。 在 PR 描述中简单声明如 "This PR was written in part with the assistance of generative AI" 即足够。 这种透明度有助于审查者理解上下文并进行适当的审查。
人工问责(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e4%ba%ba%e5%b7%a5%e9%97%ae%e8%b4%a3)
虽然 AI 工具可以提供帮助,但人类贡献者仍然对每一项更改负全部责任。该政策明确禁止:
- 将 AI 列为提交的共同作者
- 在提交中使用 AI 共同签名
- 添加 "assisted-by" 或 "co-developed" 等尾部信息将工作归功于 AI
这不是为了削弱 AI 作为工具的作用——而是为了保持明确的问责制。 如果出现问题,需要有一个人理解原因并能够修复它。
共同作者的 CLA 强制执行(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e5%85%b1%e5%90%8c%e4%bd%9c%e8%80%85%e7%9a%84-cla-%e5%bc%ba%e5%88%b6%e6%89%a7%e8%a1%8c)
CNCF 提供了一个工具(参考地址:https://github.com/cncf/cla) 来验证每个 Pull Request 上的贡献者许可协议。 AI 代理无法签署这些贡献者许可协议,因此项目采取的一项强制执行措施是为共同作者启用 CLA 检查。 这向审查者提供了一个标志,表明该 PR 尚未准备好合并。
必须有人工参与(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e5%bf%85%e9%a1%bb%e6%9c%89%e4%ba%ba%e5%b7%a5%e5%8f%82%e4%b8%8e)
这可能是该政策最关键的方面:审查者期望与人类互动,而不是与 AI。 贡献者不能依赖 AI 来回复审查评论。 如果你无法亲自解释 AI 帮助生成的更改,你的 PR 将被关闭。 这一要求确保知识转移发生,并确保贡献者真正理解他们提交的代码。
验证义务(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e9%aa%8c%e8%af%81%e4%b9%89%e5%8a%a1)
贡献者必须通过代码审查、测试和个人理解来验证 AI 生成的更改。 代码能够运行还不够——你需要知道它为什么能运行并能够维护它。
这些政策反映了对 AI 的成熟态度:将其作为工具拥抱,但永远不要让它取代人类的判断、理解或责任。
自动化 AI 审查(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e8%87%aa%e5%8a%a8%e5%8c%96-ai-%e5%ae%a1%e6%9f%a5)
有许多工具可以帮助审查代码。AI Pull Request 工具引入了治理挑战, 因此社区承担的首要任务之一是记录流程(参考地址:https://github.com/kubernetes/community/blob/main/github-management/ai-code-review-tools.md), 说明引入新 AI 工具需要什么。 这些工具的主要评估标准之一是找到愿意在 kubernetes-sigs 仓库中试用它们的维护者。 Kueue、JobSet 和 Agent-Sandbox 一直在试验这些工具,以为维护者提供更多支持。
Copilot(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#copilot)
许多维护者开始使用的一个工具是 GitHub Copilot。 CNCF 为维护者提供访问权限(参考地址:https://contribute.cncf.io/blog/2025/12/16/github-copilot-enterprise-for-maintainers/), 因此这最终成为许多人开始使用的第一个工具。 它在调整审查方面提供了一些良好体验,但该工具也存在一些成长的烦恼。 社区采用的最大障碍是依赖贡献者拥有 Copilot 许可证。 只有维护者能够请求 Copilot 审查,社区无法实现 Pull Request 的自动化审查。 AI 审查工具的目标之一是提供一种维护者无需请求的自动化审查工具。 这表明需要组织控制,而不是依赖贡献者拥有访问权限。
CodeRabbit(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#coderabbit)
在 2026 年年中,Kubernetes 社区已向几个项目推出了 CodeRabbit。 与 Copilot 一样,需要进行一些调整以提供更好的审查,但总体反馈是积极的。 该工具有很多配置可用,其中最有趣的用途之一来自 agent-sandbox。
AI Pull Request 工具可以作为质量门控。贡献者至少可以获得快速抽查审查,而无需等待维护者。 agent-sandbox 已在 PR 上添加标签,以反映仍需要解决 AI 工具的一些评论。
下一步(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai/#%e4%b8%8b%e4%b8%80%e6%ad%a5)
现实情况是,在开源项目中利用 AI 是一个积极探索的领域。 社区可以使用你的帮助来调整审查工具、评估工具或评估 AI 领域的新兴技术。
我们正在更多探索的一些领域:
- 使用 AI 技能减少维护者倦怠。
- AI 辅助对失败测试进行分类。
- 有助于 Kubernetes 运营方面的技能。
This is a mirror of the original article(参考地址:https://www.kubernetes.dev/blog/2026/06/26/open-source-maintainership-in-the-age-of-ai).
- ←上一页(参考地址:https://kubernetes.io/zh-cn/blog/2026/06/25/visual-context-volcano-headlamp-plugin/)
- 下一页→(参考地址:https://kubernetes.io/zh-cn/blog/2026/07/08/announcing-etcd-3.7/)
- 点赞
- 收藏
- 关注作者
评论(0)