Py学习  »  Git

AI X 知识产权 | Codex的阶段性胜利:Doe v.GitHub案四年拉锯,DMCA核心诉请被驳回

M姐 数据合规评论 • 1 月前 • 150 次点击  

AI研发节奏与竞争监管的编辑水彩意象

2026年9月16日,就美国备受关注的程序员起诉GitHub、微软、OpenAI案,美国联邦第九巡回上诉法院(下称“第九巡回法院”)作出了二审判决,维持地区法院驳回原告《数字千年版权法》(DMCA)请求的裁定。[1]

该判决主要涉及当AI生成的输出被主张与既有开源代码高度相似、但没有附带原代码的CMI时,是否可以直接依据DMCA§1202(b)认定为“移除”或“篡改”CMI。本文将先回溯案件因何而起,再解析两级法院的裁判逻辑,并讨论判决落定的当下开源生态所面临的问题。

一、案件溯源:先于诉讼的开源争议

开源代码与生成式工具的关系

(一)Copilot技术机制与开源许可的结构性冲突

GitHub是全球最大的开源软件托管平台,微软于2018年收购GitHub后,进一步成为OpenAI的主要投资方。2021年6月,GitHub推出Copilot技术预览版[2];2022年6月,Copilot正式商业运营,按月订阅收费。该产品基于OpenAI的Codex模型,其工作原理是:在大语言模型训练阶段,从GitHub公开仓库的数十亿行代码中识别代码结构的统计模式,进而在用户输入提示时,预测基于训练样例的最可能的补全结果。

这一技术机制就注定了与开源许可之间的结构性冲突:Copilot的训练语料来自所有可用的公开GitHub仓库,其中大量代码以MIT、GPL、Apache等开源许可发布,而这些许可的共通条件之一,正是署名:任何副本或演绎作品的再分发,必须随附作者姓名与版权声明,而其输出却不包含这些署名信息。据Wired报道,人们对GitHub Copilot的反应褒贬不一,一些开发者认为它不公平地将开源软件货币化,而另一些人群则认为这能构成对受版权保护代码的合理使用[3]。

(二)从社区行动到法律行动的矛盾升级

这之后,软件自由保护协会(Software Freedom Conservancy,下称“SFC”)率先发难,要求微软与GitHub就Copilot相关问题作出法律分析,核心三问包括:为何仅用自由开源软件代码训练模型、为何未提供训练语料清单、以及输出代码的权利归属和法律依据。在未获实质性回应后,SFC于6月30日宣布:停止使用GitHub,启动“Give Up GitHub”行动,并不再接纳没有迁移计划的新成员项目。该组织明确表示,Copilot是其作出此决定的原因之一,并批评微软拒绝解释Copilot在训练中如何处理许可条款。[4]

而当社区活动协商无果,矛盾进一步激化为法律行动。2022年11月3日,一群以匿名方式(J. Doe)起诉的程序员,在加利福尼亚北区联邦地区法院提起集体诉讼,被告涵盖GitHub、微软及OpenAI等实体。原告的起诉状囊括了DMCA、开源许可违约、不正当竞争等多项请求[5]。

考虑到传统版权侵权在AI输出场景下难以认定,原告便试图以DMCA的CMI保护条款为突破口提出:只要Copilot输出了与训练代码相同或近似的代码而未随附署名信息,即构成对CMI的“移除”或“篡改”。这一策略选择之间影响了此后三年的诉讼走向。

二、Doe v.GitHub案的历程与判决要点

案件裁判逻辑的层次结构

(一)一审部分驳回DMCA请求

原告最初提起的诉讼包含十余项诉因。法院先后两次要求原告修改诉状:早期诉状中的一些请求例如隐私、不正当竞争、欺诈等被驳回,原告随后提交修订诉状,将主张逐步集中到Copilot/Codex生成代码涉及的CMI以及开源许可证合同责任上。2024年6月24日,Tigar法官对修订后的诉状作出裁定,最终驳回DMCA §1202(b)项下的请求,且此次为有偏见驳回(with prejudice)[6]。

一审法院对DMCA §1202(b)的核心判断,是认为原告没有充分证明Copilot输出的是其受保护代码的“identical copy”。法院认为,原告虽然提供了Copilot的“duplication-detection feature”以及Nicholas Carlini等人关于模型记忆和逐字输出的研究[7],但仍没有提出一个具体、可信的例子证明Copilot在正常运行中实际生成了原告作品的完整相同副本。法院特别指出,重复检测功能本身只能说明Copilot具有识别代码匹配的机制,并不能据此推断其会输出原告代码的identical copy;Carlini的研究也并非专门针对Copilot或原告作品,而且研究显示Copilot在一般情形下很少输出被记忆的代码,只有在较长且高度相似的代码提示下才更可能出现逐字输出。

但法院没有因此认定Copilot对开源代码的使用当然合法。对于开源许可证违约,法院认为原告已经充分提出了可诉的合同理论:原告主张相关许可证要求使用者保留署名、版权声明和许可证条款,而Copilot输出代码时没有履行这些要求。同时,法院区分了许可证条件与合同责任,认为即使某项许可条件的违反可能产生版权侵权责任,版权诉讼并不是唯一救济途径,当事人仍可以主张合同违约。因此,法院并未驳回原告针对全部被告提出的开源许可证违约请求。

随后,原告针对DMCA部分申请中间上诉,地区法院于2024年9月27日依28 U.S.C. §1292(b)批准认证并中止一审程序,案件进入第九巡回法院。

(二)二审认可原告诉讼资格:存在未来损害的实质性风险

第九巡回法院首先处理了一个地区法院未充分讨论的问题:原告是否具有Article III下的诉讼资格。

被告主张,即使Copilot会生成不带CMI的代码,也不能证明它会复制的是原告的代码,而非其他GitHub用户的代码,因此原告面临的损害风险只是一种推测。而法院认为,在起诉阶段原告只需证明未来损害具有“实质风险”(substantial risk)即可满足标准。

在此,法院列举了三组事实以论证原告的主张达到了“实质风险”标准:其一,诉状援引的学术研究证明理论上大语言模型有时会逐字输出记忆化的训练数据,且这种情况“随着模型规模扩大可能愈发严重”;其二,GitHub自行部署的重复检测功能(可拦截与公开代码相同的150字符以上片段)反而证明Copilot能够且确实会输出逐字相同的副本;其三,诉状提供了Copilot已经逐字再现具名原告代码的具体实例。综上,依据Susan B. Anthony List v. Driehaus案确立的标准,足以达到“未来损害存在实质风险”,法院认定原告诉讼资格成立。

(三)二审的实体驳回:“输出理论”的三层驳回

在实体问题上,第九巡回法院则维持了地区法院的判决结果。法院将原告起诉的依据总结为“输入理论”(input theory)与“输出理论”(output theory)。“输入理论”涉及训练阶段,认为被告在将假定集体成员的代码作为训练数据输入Copilot之前,移除了其中的CMI。而“输出理论”则主张被告会将训练数据作为输出返回给用户,并且没有包含源代码中的CMI。

判决书对“输出理论”的驳回,可以拆解为三个递进的层面。

第一步从文义出发。第1202条(b)款禁止“故意移除或篡改任何版权管理信息”以及“明知CMI已被无权移除或篡改而分发作品或其副本”等行为。[8]法院指出,移除意为去除(to get rid of),篡改意为使某一特定特征变得不同,两个动词在语境中均隐含针对既有作品副本上已附着之CMI的积极行为。判例与权威注释所举的范式性违法情形——涂毁书籍扉页删除随附计算机文件的电子信息——均是对既有副本中CMI的删除或改变。依据Falkner v. General Motors等案,仅是未包含CMI不构成移除或篡改。

第二步从定义印证。CMI的法定定义是“与作品副本相关联而传递的信息(information conveyed in connection with copies of a work)”,而副本(copy)指作品固定于其中的物质载体。这意味着CMI是依附于既存物质对象的信息。但原告主张输出相似代码但未署名的作品是一种从未附着CMI的新作品,此时CMI既无从移除,也无从篡改。值得注意的是,法院同时澄清,所谓“identical copy”并不需要两作品逐字相同,只要实质相同而仅缺CMI,即可推定移除,但本案连“存在被复制的副本”这一前提都未能满足。

第三步落脚于体系与目的解释。法院明确表达了对制度错位的警惕:若满足“输出与在先作品相似但未署名”即构成第1202条(b)款之诉,等于用DMCA架空传统版权侵权制度,并将被告暴露于灾难性的加重法定赔偿之下——第1203条(c)(3)款允许每项违法行为最高25,000美元赔偿,而传统版权法定赔偿上限为每部作品30,000美元。

此外,法院在此将Copilot与搜索引擎进行区分:搜索引擎响应查询时检索并展示已存储的信息,即既有作品的副本;而Copilot是学习既有作品后创作新作品。法院坦言,若Copilot的功能类似搜索引擎、输出与原告代码完全相同却不含CMI,原告的主张或许更有力。但本案所描述的算法内部过程并非调整既有作品上附着的CMI,而是生成一项新作品。

(四)判决留白:被悬置的输入理论与版权侵权问题

判决书有两个问题未回答。

其一,“输入理论”因程序原因未被审理。原告曾主张,被告在训练阶段即剥离代码CMI后再投入模型训练,构成第1202条(b)(1)款的“预分发移除”。但地区法院在第一次驳回听证中即明确表示本案不涉及训练,原告当时未予纠正;第九巡回法院据此认定原告放弃(forfeited)该理论,不予受理。所以对于该案的训练阶段剥离CMI是否可诉,在法律上仍未作出判断。

其二,输出是否构成版权侵权,法院明确不表态。鉴于原告主张局限于依据DMCA §1202(b),判决书申明,“Copilot输出与在先代码的相似性是否足以令法院支持版权侵权请求”这一问题将留给传统的版权侵权框架进行判断,第九巡回法院不表达意见。同时,两项违约之诉亦未受影响,仍在地区法院待审。

三、开源生态的未竟之问

开源生态中的许可与溯源路径

判决落定,回看2022年的“Give Up GitHub”运动,其收效相当有限。GitHub至今仍是事实上的全球主要开源协作基础设施,开发者若要迁出,需要放弃多年积累的stars、issues、持续集成(CI)流程以及依赖这些设施形成的协作关系,迁移成本过高。本案判决也并未对“平台兼营模型”的商业模式作出合法性评价,但其客观效果是,微软同时掌握代码托管层与模型服务层的结构未受司法挑战;而开源作者在这两个环节上都缺乏有效的谈判筹码。

目前开源生态当前的重点正从抗议转向推动许可条文的修订:在许可文本中明确界定“用于AI训练”与“由AI输出”两种情形下的授权范围,并继续探索面向AI场景的其它专门许可安排。例如,正在接受开源许可证审查的ModelGo Attribution License针对机器学习模型专门设置了“衍生材料”和“输出”等定义,并对衍生材料的分发设置许可证及署名等保留义务,体现了通过许可文本适配模型开发、输出场景的尝试[9]。

同时在另一边,已有产品直接将许可证审查嵌入产品设计中。亚马逊的Code Whisperer(现并入Amazon Q Developer)内置了一个Reference Tracker(参考追踪器),在开发者接受建议之前,自动标记与训练数据片段相似的输出,并附上来源仓库URL、文件路径和许可证信息。组织可以配置策略,自动过滤掉匹配特定许可证(如GPL或AGPL等copyleft许可)的建议。[10]

此外,本案在地区法院仍有两项违约之诉待审。开源许可中的署名条款能否作为合同义务被强制执行,或将在此得到首次实质检验,其审理结果值得开发者与开源使用者密切关注。

结语

开源生态未来的规则路径

Doe v. GitHub案用四年时间回答了一个细分问题:AI生成代码与在先代码相似,并不等于“移除”了后者的CMI,因而不构成DMCA第1202条(b)款意义上的违法行为。传统开源署名、溯源、授权规则,诞生于人工开发的时代,随着AI重构开源生产模式,旧有的权利平衡体系正在失效。未来开源生态的秩序重塑,还需依托许可条款迭代、社区共识更新、AI溯源机制完善三重路径。法律给出底线答案,而行业将书写最终规则。

注

[1] United States Court of Appeals for the Ninth Circuit, Doe v. GitHub, Inc., et al., Sept. 16, 2026, https://cdn.ca9.uscourts.gov/datastore/opinions/2026/09/16/24-7700.pdf。

[2] 参见关于 GitHub Copilot发布的公开报道,https://github.blog/news-insights/product-news/introducing-github-copilot-ai-pair-programmer/

[3]https://www.wired.com/story/github-commercial-ai-tool-built-open-source-code/

[4] Software Freedom Conservancy, Give Up GitHub: The Time Has Come!, https://sfconservancy.org/blog/2022/jun/30/give-up-github-launch/

[5] U.S. District Court for the Northern District of California, Doe 1 v. GitHub, Inc., et al., Nov. 3, 2022, https://storage.courtlistener.com/recap/gov.uscourts.cand.403220/gov.uscourts.cand.403220.1.0.pdf

[6] U.S. District Court for the Northern District of California, Doe 1 v. GitHub, Inc., et al., June 24, 2024, https://storage.courtlistener.com/recap/gov.uscourts.cand.403220/gov.uscourts.cand.403220.253.0_1.pdf

[7] Nicholas Carlini, et al., Quantifying Memorization Across Neural Language Models, arXiv, https://arxiv.org/pdf/2202.07646.pdf,该研究认为当增加模型的容量、一个例子被重复的次数,以及用于提示模型的上下文的标记数量时,模型的记忆能力会显著增长。

[8]https://www.govinfo.gov/content/pkg/USCODE-2016-title17/html/USCODE-2016-title17-chap12-sec1202.htm

[9]https://ids.nus.edu.sg/modelgo-mg-by.html

[10]https://aws.amazon.com/cn/documentation-overview/codewhisperer/


往期精选

↗AI X 数据保护 | 《国务院关于保障未成年人健康安全使用网络的规定(征求意见稿)》发布:未成年人网络服务监管进一步细化

↗一周热点|AI X 各领域法律资讯汇总

↗AI X 出口管制|一文讲清欧盟新修订的两用物项清单

免责声明:上述内容不代表我们对有关问题的法律意见,任何仅依照本文件的全部或部分内容而作出的作为或者不作为决定及因此造成的后果由行为人自行负责,如需专业法律意见,请联系M姐律师团队。

扫码关注M姐 数据合规评论

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/201427