VS Code能自己编程了,GitHub推出“AI程序员”插件,根据注释自动补全代码
来源丨本文经AI新媒体量子位(ID:QbitAI)授权转载,转载请联系出处
作者丨明敏 发自 凹非寺
描述出你想要执行的命令,就能生成相应的代码。
现在,GitHub官方和openAI联合为程序员们送上编程神器——GitHub Copilot。
AI来给你打工当秘书,从此写代码不用再去Stack Overflow上疯狂搜索了,效率立刻翻倍!
这个系统可以像有高手指点一样,配合程序员写代码。
甚至程序员只要写下一段注释,Github Copilot就可以补全剩下的代码、提出改进的建议,为程序员省去大量查找的时间,而且可以保持更高的专注力。
官网介绍,它已经接受了数十亿行公共代码的训练,并且还在不断学习中。
在一次根据函数头补全代码的测试中,Copilot首次测试的正确率可达43%;
重复10次测试后,正确率就能提升至57%。
有网友就表示,GitHub Copilot能达到的效果令他大吃一惊!
使用了两周,Copilot给出的代码和我想写的代码大约有十分之一的重合。
这真的很像结对编程,而且可以优化我的代码。Copilot使我成为了更好的程序员!
那就话不多说,让我们来看看如何使用GitHub Copilot~
AI变成好搭档
目前,Github Copilot作为Visual Studio Code插件,支持在本地或GitHub Codespaces上使用。
它适用于多种框架和语言,在Python、JavaScript、TypeScript、Rudy、Go几种语言上的表现格外突出。
GitHub Copilot的强大之处就是能充当你的“小秘书”。
它能够把注释转化成代码,只需描述出你想要执行的命令,GitHub Copilot就能自动为你组装代码。
重复的代码打起来太费事了?
GitHub Copilot也能帮你做。它能根据你给出的例子,快速生成模板和重复的代码。
对于让程序员头疼的测试,它也能提供贴心的服务。
只需导入单元测试包,GitHub Copilot就能给出与代码匹配的测试。
“能不能多给几种方案?”
这话现在也能对Copilot说了,它可以罗列出不同方案任君挑选。
甚至,它还能辅导你写代码。
遇到不熟悉的语言或者还在学习编程,GitHub Copilot也可以帮助你找出错误、学习新框架,省去了大量查资料的时间。
数十亿行代码训练
所以,GitHub Copilot是如何做到这样强大的呢?
GitHub Copilot由OpenAI Codex提供支持,可以理解为GPT-3的改进版。
它由公开源代码和自然语言的训练,因此它可以很好理解编程语言以及人类语言,从而能够把人类语言转化成代码。
具体情况中,GitHub Copilot会把程序员给出的命令或代码发送到服务器,然后服务器使用OpenAI Codex来给出代码或建议。
据官网介绍,它是用数十亿行的代码训练后,才达到了现在的效果。
主要利用了上传到GitHub以及其他网站的源代码,依靠许多编程语言的大量代码和庞大的Azure云计算能力。
而且它还会根据程序员在使用过程中的反馈,进一步学习。
目前,已经有部分人在测试使用GitHub Copilot;之后,它可能将作为付费产品正式上线。
网友:会取代人类吗?
u1s1(有一说一),GitHub Copilot能达到的效果还是十分可观的,许多用过的程序员都说好。
Copilot在处理React组件时效果格外好,它能做出非常精准的判断。GitHub Copilot会成为程序员不可缺少的一部分,就像很多人用IDE一样。
AI写代码如此强悍?那程序员岂不是要危了。
有人就调侃道:
程序员们写了一个项目来取代程序员。
难道有一天,AI写代码真的会超越人类吗?
有人就举了一个生动的例子,表达了自己不认同的观点:
当电子鼓问世时,音乐界认为鼓手的末日到了。但鼓手才是能在电子鼓上编写绝妙节拍的人啊!
也就是说,与人们担心的相反,GitHub Copilot会提高程序员的生产力,可能帮助他们得到更多的报酬。
毕竟,程序员总是要把大量时间花在编程以外的事情上……
一本书中提到,程序员花费了50%的时间在非编程任务上。
所以,GitHub Copilot的效果还是非常值得期待的~
现在,它已经可以免费安装了,只需注册账号通过审核,就能体验“AI编程助手”,你要不要来试一下呢?
安装地址:
https://marketplace.visualstudio.com/items?itemName=GitHub.copilot
参考链接:
[1]https://copilot.github.com/
[2]https://visualstudiomagazine.com/articles/2021/06/29/github-copilot.aspx
[3]https://news.ycombinator.com/item?id=27676266
[4]https://twitter.com/hashtag/GitHubCopilot
— 完 —
本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。
3、为什么 Python 没有函数重载?如何用装饰器实现函数重载?
点分享
点点赞
点在看