[转载] AI 时代的开源维护

举报
yd_266879620 发表于 2026/11/09 00:13:59 2026/11/09
【摘要】 AI 确实改变了软件开发的格局。 比以往任何时候都更多的人利用 AI 为他们使用的项目贡献补丁。 对我来说,这是一件好事,因为更多人会贡献补丁而不是分叉项目或不修复问题。 主要问题是,AI 使代码生成变得快速,但在维护代码库方面几乎没有改进。 在本文中,我们将重点介绍 Kubernetes 社区如何适应 AI 辅助编码的世界。 这一旅程的第一步是制定 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/)
最后修改 June 22, 2026 at 10:32 AM PST: [zh-cn]Add blog: open-source-maintainership-in-the-age-of-ai (5b5ca7b80b)(参考地址:https://github.com/kubernetes/website/commit/5b5ca7b80b6afc8e7c33852f053df4515cab04fc)
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。