文 | 闲欢
来源:Python 技术「ID: pythonall」
新时代的程序员可真难,各种语言层出不穷,各种框架满天飞,令人应接不暇,眼花缭乱。很难静下心来去深入钻研某一个框架技术,更别谈熟练使用框架的 API 了,大多数情况下是现学现卖,所以在写代码时大多数人都是 CV专家
。
如果有一款神器,你敲几个字母,它马上可能帮你生成一堆代码,或者给你提供几种代码供选择,或者直接以代码搜代码,听起来是不是很 cool ?
2021 年 6 月,微软与 OpenAI 宣布共同推出一款 AI 编程工具—— GitHub Copilot,这让不少程序员朋友欢呼雀跃,奔走相告称有了代码补全神器,终于可以减负还能早些下班了。
神器的几大功能
代码自动补全
GitHub Copilot 支持代码自动补全,一方面是自动补全单词,这对于母语不是英语的人来说太有用了。另一方面,它可以根据你敲的内容补充代码,这个可以大大提高我们码代码的效率。
代码选择
GitHub Copilot 可以根据你的代码,自动推荐接下来的代码,你可以从它的推荐中选择合适的代码片段。
多语言支持
GitHub Copilot 支持大多数编程语言,同一个实现方法可以用多种语言给你展现,这对于要将一种编程语言中的算法搬到另一种编程语言中的场景真的是太赞了。以前经常干这种破事,最频繁的是将后端的算法搬到前端中。
多编辑器支持
GitHub Copilot 支持主流编辑器,包括 Visual Studio、NeoVim、VS Code、JetBrains IDEs 。在他们的插件市场中都可以搜到,直接安装插件即可使用。
除此之外,GitHub Copilot 还有好多其他小功能,包括测试代码、自动生成正则表达式、发送推文、浏览代码块等等,有待大家去发现。
神器是怎么练成的?
这么好用的插件,到底是怎样开发出来的呢?
其实原理也很简单,这是 GitHub 和 OpenAI 的合作成果。Copilot 是一种基于人类程序员编写的数十亿行代码训练的语言模型。这其中就包含咱们经常打交道的 GitHub,自动生成的代码很多都来自于 GitHub 上面的开源代码。
翻车?
这个AI正在实施规模空前的软件侵权盗版行为!”
正式发布不到5个月,GitHub的敲代码神器Copilot已惹怒一众程序员,甚至摊上了官司:
被集体诉讼、按每条违法行为的最低法定赔偿额计算,需赔偿90亿美元 (约合人民币647亿元)。
诉讼的发起者,一位干了20多年的老程序员Matthew Butterrick(马修)愤然对其给出上述评价。
简单来说,Copilot的主要问题可以概括为“侵权”二字:
包括侵犯众多代码原创者的版权,以及侵犯众多用户的隐私等。
有好多开发者发现自己开源的代码出现在 Copilot 的推荐代码中,而且是原样照搬的。
这起诉讼主要包括两个方面:
一方面是 Copilot 的训练过程。尽管微软含糊其辞,表示其训练源是数亿行公共代码;但 Copilot 的研究员后来还是道出了实情,都是出自于 GitHub 上的公共仓库。
马修表示,微软和OpenAI要想用GitHub上的开源仓库进行训练,要么遵守它们的开源许可证协议,要么合理使用。
但马修和其他几位律师认为微软等既没有发布大量的 attribution 来获得许可,也没真正地“合理使用”。
另一方面是关于 Copilot 的使用。马修指出,Copilot 目前定价10美元/月,但微软一边收着钱一边还对自己进行了免责申明:微软 将Copilot 给的代码称为“建议”,称自己不从中主张任何权力,也不对它生成的代码作任何关于正确性、安全性和产权相关的保证。
一旦用户接受了Copilot 给出的“建议”,如果出了问题都由用户自己负责。
而且这些“建议”在很多时候对使用者来说并不太适用:Copilot 可能会一字不差地把原作者的代码直接丢给用户,连注释都一并奉送的那种。
这要是直接采纳可就要涉及版权和许可等问题了,可 Copilot 压根儿没有注明这些代码的来源,所以用户也难以遵守协议。
总结
对于这款神器的使用和侵权问题,大家怎么看?欢迎评论区交流!
PS:Python技术交流群(技术交流、摸鱼、白嫖课程为主)又不定时开放了,感兴趣的朋友,可以在下方公号内回复:666,即可进入,一起 100 天计划!
老规矩,酱友们还记得么,右下角的 “在看” 点一下,如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!
【代码获取方式】
识别文末二维码,回复:python