作为开发者,也许你不介意GitHubCopilot不问就使用你的开源代码。但是,如果Copilot逐渐消灭了整个开源社区,你会作何感想?最近,程序员MatthewButterick(同时也是一名作家和律师)在他的个人博客中起诉了Copilot,并宣布了一项诉讼调查:2022年6月,我写了一篇关于GitHubCopilot的法律问题的文章,特别是它对开源许可证的不当处理。最近,我采取了下一步行动:我重新启动了我在加州的律师事务所,与JosephSaveriLLP的优秀集体诉讼律师JosephSaveri、CadioZirpoli和TravisManfredi一起开展一个新项目——我们正在调查针对Copilot的潜在诉讼,原因是违反了它对开源作者和最终用户的法律义务。GitHubCopilot是微软经过一年的技术预览,将于2022年6月正式发布的产品。Copilot是VisualStudio和其他IDE的插件,可根据您在编辑器中键入的内容生成所谓的“建议”。那么,Copilot与传统的自动补全有何不同?Copilot由Codex提供支持,这是一个由OpenAI开发并授权给Microsoft的人工智能系统。(虽然微软也号称“OpenAI的非官方拥有者”。)Copilot根据用户输入的文字提示提供建议,一般可以用来做小建议,但微软强调Copilot可以建议更大的代码块,比如功能。整个主题。但它的底层人工智能系统Codex是如何训练的呢?根据OpenAI的说法,Codex接受了“数千万个公共存储库”的培训,包括GitHub上的代码。微软自己含糊地将其描述为“数十亿行公共代码”。但Copilot研究员EddieAftandilian在最近的播客中证实,Copilot是“在GitHub上的公共存储库上接受培训的”。副驾驶怎么了?本文作者MatthewButterick认为Copilot无论是训练还是使用都存在法律问题。培训中的法律问题绝大多数开源软件包都是在授予用户某些权利和施加某些义务(例如保留源代码的精确属性)的许可下发布的。这些资助的法律实施是为了让作者在他们的代码中声明他们的版权。因此,那些希望使用开源软件的人必须做出选择,要么遵守许可规定的义务,要么使用受“许可例外”(例如版权法规定的“合理使用”)约束的代码。微软和OpenAI已经承认,Copilot和Codex在GitHub上的一个公共仓库中接受过开源软件方面的培训。那么,他们选择了哪条路呢?如果微软和OpenAI选择在每个repo的开源许可下使用这些repo,那么他们将需要发布大量的属性,因为这几乎是每个开源许可的最低要求。但是,我们现在看不到任何归因。因此,微软和OpenAI必须为“合理使用”找一个理由。GitHub前CEONatFriedman曾在Copilot的技术预览会上表示,“在公共数据上训练(机器学习)系统是一种合理的使用。”是真的吗?这是一个法律问题,不是任何人说的。当然,微软、OpenAI和其他研究小组一直支持“合理使用”的说法。NatFriedman进一步断言,存在“机器学习社区广泛依赖的”“合理使用”的“法理学”。但软件自由保护协会(SFC)不同意他的看法,并要求微软提供证据来支持其立场。证监会负责人曾透露:我们在2021年6月私下询问了弗里德曼等微软和GitHub的代表,要求他们为GitHub的公开法律地位提供可靠的法律参考……但他们什么也没提供。为什么微软不能为他们的立场提供一些法律依据?因为证监会是对的:他们根本没有依据。尽管一些法院已经考虑过这个问题,但没有美国判例直接解决人工智能训练的“合理使用”问题。此外,那些涉及“合理使用”的案件也权衡了多种因素。即使法院最终裁定某些类型的AI培训属于“合理使用”,这似乎很有可能,但也可能排除其他类型。到今天为止,我们不知道Copilot或Codex在这个范围内的位置。微软和OpenAI也没有。使用中的法律问题我们还不能说“合理使用”最终将如何适用于人工智能培训。但我们知道,这一发现根本不会影响Copilot用户。为什么?因为他们只是使用Copilot来提供代码。那么,这部分代码的版权和许可情况如何呢?2021年,NatFredman声称Copilot的输出属于操作员,就像他们在使用编译器一样。但是Copilot为粗心的人设置了新的陷阱。微软将Copilot的输出描述为一系列代码“建议”。Microsoft在这些建议中“不主张任何权利”。但同时,微软也不对这种方式生成的代码的正确性、安全性或扩展的知识产权提供任何保证。一旦你接受了Copilot的建议,所有这些都将成为你的问题。您对代码的安全性和质量负责。我们建议您在使用GitHubCopilot生成的代码时采取与任何其他非您编写的代码相同的预防措施,包括严格测试、IP扫描和安全漏洞跟踪。这些建议的代码可能有什么问题?Copilot用户指出,Copilot可能会被诱导从可识别的repo中逐字复制代码。前段时间,德州农工大学教授TimDavis举了很多例子说明Copilot确实是逐字抄袭他的代码。使用此代码显然会产生遵守其许可的义务。但按照Copilot的设计,用户根本看不到代码的来源、作者、许可证等信息,又怎么能遵守呢?本文作者MatthewButterick认为,Copilot的快速代码检索方法是一枚烟雾弹,旨在隐藏一个肮脏的事实:Copilot只是连接大量开源代码的一个方便的替代接口。因此,Copilot用户可能需要遵守代码原作者强加给他们的许可义务。在这种情况下,Natfredman声称Copilot的运行“像……编译器”是站不住脚的,因为编译器会改变代码的形式,但不会注入新的知识产权。公平地说,微软对此没有异议。他们只是把它埋在细则中。Copilot对开源社区意味着什么?MatthewButterick指出,通过提供Copilot作为大量开源代码的替代接口,微软所做的不仅仅是切断开源作者和用户之间的法律关系。可以说,微软正在创建一个新的“围墙花园”,它将阻止程序员发现传统的开源社区,或者至少消除这样做的任何动机。随着时间的推移,这个过程将使这些社区变得贫困。用户的注意力和参与逐渐转移到Copilot的围墙花园,远离开源项目本身——远离他们的源代码库、他们的问题跟踪器、他们的邮件列表、他们的讨论板。这种能量转变对于开源来说将是痛苦的、永久的损失。微软云计算执行官ScottGuthrie最近承认,尽管CEOSatyaNadella在收购GitHub时乐观地承诺“GitHub仍将是一个开放平台”,但微软一直在将包括Copilot在内的更多GitHub服务推入其产品组合。蔚蓝云平台。MatthewButterick表示,他们没有无缘无故对GitHub提起诉讼。他认为发布开源软件的最大好处之一是“人”:围绕我们工作的用户、测试人员和贡献者社区。“我们的社区帮助我们以不必自己动手的方式改进软件,这让工作变得有趣。”Copilot为开源软件引入了一个更“自私”的界面:只要给我我想要的!有了Copilot,开源用户永远不必知道谁制作了他们的软件,永远不必与社区互动,也永远不必做出贡献。同时,MatthewButterick提醒开源作者必须意识到我们的工作隐藏在一个名为Copilot的大型代码库中。就像农场里的奶牛一样,Copilot只想把我们变成待开采资源的生产者。“连牛都能从交易中获得食物和住所,Copilot对我们的个人项目没有任何贡献。”MatthewButterick认为Copilot的围墙花园与开源是对立的,而且是有害的。因此,这也是对GitHub在被微软收购之前所代表的一切的背叛。如果您出生在2005年之前,您会记得GitHub的声誉建立在为开源开发人员提供好东西和培育开源社区的基础上。相比之下,副驾驶是这个想法的多重疯狂反转。换句话说,也许您是Copilot的粉丝并且认为AI是未来。首先,这里反对的不是泛泛而谈的AI辅助编程工具,而是微软对Copilot的特定选择。我们可以很容易地想象一个对开源开发人员更友好的Copilot版本——例如,参与是自愿的,或者支付给编码人员为培训语料库做出贡献的版本。到目前为止,尽管微软自称热爱开源,但似乎已选择退出这些选项。其次,如果您发现Copilot有价值,那很大程度上是因为底层开源训练数据的质量。Copilot从开源项目中汲取生命,最直接的影响将是让Copilot变得更糟。MatthewButterick说:“当我第一次编写Copilot时,我说:‘我不担心它对开源的影响。’短期内,我还不担心。但是当我回顾我将近25年的开源之旅时,我意识到我错过了更大的前景。毕竟,开源不是一个固定的人群。它是一种不断成长、不断变化的集体智慧,不断被新的想法所刷新。我们为彼此和挑战设定了新的标准,从而提高了我们对实现目标的期望。在这个伟大的炼金术中,Copilot介入了。它的目标就是要为自己宣称开源的力量。我们不需要深究微软在开源上的曲折。没有历史,你可以理解Copilot是什么——寄生虫。我们必须在Copilot的合法性之前检验它的合法性。对开源的损害变得无法弥补。这就是我要申明的原因。”
