GitHub Copilot建议结果包含受保护程序代码,训练数据源合法性争议再起

德州农工大学计算机科学教授Tim Davis在推特上发文,提到GitHub Copilot在他禁用公开程序代码设置下,写出一大区块他应受版权保护的程序代码,使用的过程没有标注归属(Attribution),也没有LGPL授权,他贴出自己与GitHub Copilot在稀疏矩阵转置、稀疏矩阵加法的程序代码,认为两者几乎一模一样,GitHub Copilo还有其他稀疏矩阵的程序代码,也同样与Tim Davis的程序代码有高度雷同。

其他开发者按照Tim Davis的设置,重现了这段有争议的程序代码,System76技术总监转推了Tim Davis的推文,评论这个事件是GitHub Copilot非法洗程序代码的例子,这串推文引来了GitHub Copilot创造者Alex Graveley回推,他认为Tim Davis所编写的程序代码和GitHub Copilot产生的程序代码不同,虽然很像但是不同,并提到如果有人可以发明一种算法,自动识别程序代码是由其中一方衍生出来的,那就可以申请专利了。

Alex Graveley在自己的推特时间轴发文,写道GitHub Copilot累计到现在,被指控的问题共有9个,包括剽窃程序代码、在程序代码中引入漏洞,甚至让人变笨。Alex Graveley嘲讽这些指控,认为是来自恐惧新技术保守人士的莫须有指控。

另一篇在HackerNews引起热议的文章〈Maybe you don’t mind if GitHub Copi­lot used your open-source code with­out ask­ing.But how will you feel if Copi­lot erases your open-source com­mu­nity?〉是一位名叫Matthew Butterick的律师,要带头对GitHub Copilot发起诉讼。

Matthew Butterick及其事务所,正在调查GitHub Copilot违反对开源作者和终端用户法律义务的潜在诉讼案,文中提到,绝大多数的开源软件都是根据授权发布,这些授权授给用户部分权利,但同时用户必须负起某些义务,像是保留精确的程序代码归属,这些授权将会是软件开发者能够宣称合法拥有该程序代码的依据。

Matthew Butterick表示,既然微软和OpenAI都坦承Copilot和Codex,皆使用GitHub公共存储库的开源软件训练,那就必须遵守授权的义务,或是以授权例外在版权法下合理使用这些程序代码。如果微软和OpenAI都是根据各自的开源授权使用程序代码存储库,则必须发布大量的程序代码归属,但Copilot并没有提供明显的归属。

因此微软和OpenAI势必需要宣称GitHub Copilot为合理使用这些程序代码,GitHub首席执行官Nat Friedman也在Copilot技术预览阶段,称Copilot在公共资料上训练机器学习系统是合理使用。不过这个论点软件自由保护协会(Soft­ware Free­dom Con­ser­vancy)并不买单,而且微软和OpenAI也没有提供GitHub合理使用这些程序代码的法律地位。

这件事情很重要的原因,Matthew Butterick认为,Copilot切断开源软件作者与开发者中间的法律关系,也就是微软创建起了新的围墙,使开发者无法探索开源传统开源社群,开源作者被隐藏在Copilot的大型程序代码库中,进而严重伤害开源社群发展,因此在损害变得难以弥补之前,他必须测试Copi­lot的合法性,所以才发起诉讼。

他也强调,他并非反对人工智能辅助工具,但微软可以选择对开源社群更为友善的路径,像是号召志愿者,或是征求有偿贡献训练语料库。