Copilot 数据政策变更后,AI 时代下的开源项目该怎么应对
近日,GitHub 宣布更新 Copilot 隐私政策:从 2026 年 4 月 24 日起,将默认使用 Copilot Free、Pro 和 Pro+ 用户的交互数据(包括输入提示、输出建议、代码片段及相关上下文)来训练和改进 AI 模型。
除非用户主动在设置中 opt-out——关闭“允许 GitHub 使用我的数据进行 AI 模型训练”选项——否则数据将被用于模型训练。Copilot Business 和 Enterprise 企业用户则不受此次变更影响。
这一政策调整迅速引发开发者社区讨论。争议的核心不只是“我的数据被用了”,而是三个纠缠在一起的问题:开源许可证在 AI 训练场景下还算不算数、开发者对自己的交互数据有没有话语权、免费用户被默认拿走数据之后得到了什么回报。这篇文章分别说说我的看法。
宽松许可证:AI 训练几乎没有门槛
在当前法律和许可证框架下,AI 模型在训练时可以较为自由地爬取和学习 MIT、BSD 等宽松许可证的项目,因为这些协议对使用、修改和衍生几乎无额外限制,仅需保留基本版权声明即可。
这里有个常被混淆的点:“用代码训练模型”和“把代码直接复制进自己的项目”在传统许可证里没有被区分开。宽松许可证允许“使用”,而训练在字面上可以被解释成一种使用方式。至于训练出来的模型权重算不算“衍生作品”,目前没有定论,也缺少有约束力的判例。
对于 Apache 2.0 许可证的项目,AI 应至少在生成的代码注释中保留原始署名和来源提及,以尊重其“保留 NOTICE 文件和修改说明”的要求。比如,你用了一段来自 Apache 项目的代码,AI 生成的新代码里应该加一行注释说明原始来源。要求不高,但多数现有模型默认并不这么做。
GPL 的困境:条款还在,但适用边界模糊
对于 GPL 系列(强 Copyleft 协议),情况更复杂——如果训练导致生成实质性衍生代码,可能需要考虑开源义务。
但这里有个实际操作中的困境:GPL 的“传染性”条款要求衍生作品必须以相同许可证开源,这在传统软件开发中容易界定——能看到源代码,能对比出衍生关系。但 AI 模型的训练过程本身不产生“可见代码”,权重文件算不算衍生作品、一段补全在多大程度上“实质相似”才算触发条款,这些都没有清晰答案。所以 GPL 条款的适用存在争议,这更多依赖 AI 提供商的合规自律。
现实中,大多数开发者在复用开源代码时往往忽略完整标注,何况是 AI 模型?指望模型在没有机制约束的情况下自觉遵守许可证,并不现实。但正因为 AI 是规模化“学习”工具,影响面比任何个人复用都大,我们更有理由从训练源头强化版权尊重机制。例如,通过提示工程或后处理,让 AI 在输出时自动添加来源注释。这不仅能减少潜在纠纷,还能培养整个生态的版权意识。
我自己项目的态度
我自己的大部分项目采用 BSD-2-Clause 许可证(而非 BSD-3-Clause),其高度包容性让我欢迎 AI 爬取和学习——BSD 协议的海纳百川精神,本就鼓励广泛使用与创新。既然我选择了宽松许可证,就接受它在 AI 场景下同样宽松这个事实,不能对人类大方、对机器小气。
对于我使用 Apache 2.0 的项目,我的态度则更谨慎:AI 至少应在注释中浅浅提及原始来源和许可证,这既是基本尊重,也能避免后期合规风险。署名要求是 Apache 协议白纸黑字写明的,AI 没有理由成为例外。
许可证本身需要一次更新
目前看来,现有的开源许可证对 AI 训练这一新场景准备不足。MIT/BSD 等宽松协议在 AI 时代显得“过于友好”,而 Apache 和 GPL 则缺乏针对机器学习的明确条款。它们诞生时面对的是“人读代码、复制代码、分发软件”的世界,没人预料到代码会被整体吞进模型权重里。
我认为,在不久的未来,各大开源基金会和社区很可能针对 AI 训练进行一次系统性更新,方向可能包括:
- 新增“AI 训练授权”子条款,明确允许或禁止将代码用于模型训练;
- 要求模型输出时强制保留归属信息;
- 引入“训练时脱敏 + 溯源”机制,让一段生成代码可以回溯到来源项目。
这些机制能不能落地、法律效力如何,现在都还是问号,但把训练行为从灰色地带拉到明文条款里,本身就是进步。
更大的问题:免费用户的“免费劳工”处境
比许可证更让我不满的,是这次政策背后的商业模式。
微软一方面使用(包括免费用户在内的)大量开发者交互数据来训练 Copilot,提升模型能力;另一方面,Copilot 免费额度和功能限制依然较为吝啬。Copilot Free 每月仅 2000 次代码补全请求,而 Copilot Pro 定价为每月 10 美元。
这相当于让普通开发者在不知情或默认同意下成为“免费劳工”——提示词、补全结果、接受和拒绝的选择,这些都是高质量的人类反馈数据,对模型迭代价值很高——却未获得对等的回报。贡献了数据的人拿到的仍然是一个额度受限的免费账号,而数据训练出的能力被打包进订阅产品出售。这样的商业模式是否公平,值得开发者深思。
微软历史上确实多次“毁掉”过优秀产品——从诺基亚、Windows Phone,到如今的 GitHub 生态。但历史也告诉我们,技术变革往往伴随阵痛,平台在新功能初期政策粗糙、后期被社区推着修正的例子并不少见。未来尚未定型,我们不必一味悲观否定,但也不该因为“以后可能会变好”就接受当下的不对等。
开发者能做什么
抱怨之外,有几件事现在就可以做:
- 立即检查并 opt-out Copilot 数据训练设置。在 VS Code 中打开 Settings,搜索 Copilot,找到“Allow GitHub to use my data for AI model training”并取消勾选。网页端的账号设置里也有对应开关,两边都确认一遍。
- 在开源项目中明确添加“禁止用于 AI 训练”的声明。比如在 README 或 LICENSE 中补充单独说明。尽管法律效力待验证——现有许可证框架下这种单方声明的强度存疑——但至少表达了作者立场,也给合规的 AI 厂商提供了尊重作者意愿的依据。
- 支持更注重隐私和版权的替代 AI 编码工具。付费产品不代表一定更好,但“数据不被默认用于训练”应当成为选型时和性能、价格并列的考量项。
- 参与开源许可证的更新讨论。新的 AI 相关许可证条款需要使用者反馈,社区声音是推动条款成熟的唯一途径。
开源精神的本质是共享与互惠,而非单向索取。开发者愿意把代码公开、愿意把使用数据用于改进工具,前提是这是一条双向的路。希望 GitHub 和微软在追求 AI 进步的同时,能更多倾听开发者声音,让生态真正实现共赢——而不是让“开源”变成单方面喂养商业模型的免费饲料。
