重磅!GitHub 推出 AI 自动写代码神器,再也不用到处找代码了

2021-07-14 15:33:52

     3 年前,自 微软收购 Github 后大动作不断啊,两年多之前就让 Github 私库免费了!,后面还推出了 Github for Mobile 移动版,这些我都已经在Java技术栈作过分享,没看过的可以回过头看下。

最近,Github 又搞大事了,推出了一款 AI 编程神器——Github Copilot,牛逼啊,下面栈长带大家来看看到底是什么鬼?

1.png


简介


2.png


官网:
https://copilot.github.com/

Copilot 是由 Github 和 OpenAI 合作联合开发的,看到这个玩意,让我想到了之前分享的 AI 写代码工具:Codota,它能够自动进行代码分析并智能提示,极大的提高开发效率。

栈长大致看了下,Github Copilot 貌似要更牛逼,Github Copilot ——你的 AI 配对程序员,可以理解为你的影子程序员,它基于数十亿行开源代码进行训练,并在背后默默给你建议,不管是整行、还是是整个完整方法,它都能帮你完成。

牛逼,某些代码,比如说工具类,再也不用在网上找了,Github Copilot 就能完成整段方法的代码编写。

官网示例

简单的讲,Copilot 可以根据你提供的注释、方法名、代码本身等上下文信息自动匹配以完成整个方法。

来看几个官网提供的示例,就知道有多牛逼!

自动完成整个方法:

3.png


4.png


5.png


6.png


根据注释完成整个方法:

7.png


8.png


自动填充相似代码:

9.png


10.png


自动生成相匹配的单元测试代码:

11.png


可切换多种不同的解决方案:

12.png


快速上手新语言、新框架:

13.png


申请试用

很可惜,Copilot 目前还是预览版,还不支持 Java,只支持 Python、JavaScript、TypeScript、Ruby 和 Go 几种编程语言,不然栈长还真想上手体验一下。

另外,Copilot 目前也只支持在 Visual Studio Code 中使用,如果你想基于上述几种语言进行体验,可以申请试用预览版,申请地址:

https://github.com/features/copilot/signup


14.png


15.png


这里栈长就不演示了,有兴趣的可以研究下,等后面如果支持 Java 了,栈长一定体验下,不要走开,关注Java技术栈,第一时间推送哦。

工作原理

Copilot 这么牛逼?是什么工作原理呢?

来看下官网提供的交互图:

16.png


1)GitHub Copilot 编程器向 GitHub Copilot 服务发送上下文信息,包括注释、代码等信息;

2)GitHub Copilot 服务使用 OpenAI Codex 模型,它基于数亿公开源代码及自然语言进行训练,然后向 GitHub Copilot 编程器提供建议,最后返回匹配的单个代码行或者整个方法;

3)GitHub Copilot 编程器不断向 GitHub Copilot 服务提供改善建议;

总结

感受 Github Copilot 工具自动完成代码的便利,确实能够解轻程序员到处找示例代码的痛楚,也能帮助我们尽可能的避免复制代码出现的 bug 或者潜在漏洞的风险。

Github Copilot 虽好,其实还有两点需要我们注意!!

1、安全性

从上面的工作原理图,我们知道,获取代码建议,就必须先将编辑器中的注释、代码等相信信息发送到 GitHub Copilot 服务器中,这就导致代码外泄的风险。

目前安全性不得而知,只是预览版,但对于金融、支付类的敏感业务场景恐怕是要好好思量。

2、版权问题

Github Copilot 工具基于数亿开放源代码进行训练,但如果被其他商业公司免费拿去商用,那不是被 "白嫖" 了?

版权问题目前还是争议很大,如果真是这样,你是否也有同样的担忧?你的开源项目还会放在 Github 托管吗?

好了,今天就分享到这里了,后续栈长还会一直分享最硬核的 Java 技术,小伙伴们可以持续关注Java技术栈,第一时间推送哦。

最后,对于 Github 推出的 Copilot 工具,你们有什么想说的?欢迎留言分享~


公司地址
汕头市龙湖区长江路23号长平新一城商业写字楼2栋404-407
技术专线

13790889505

服务热线

0754-87123130

客服微信

互联网项目高端定制

高端网站建设

移动应用开发

微信应用开发

电商与平台开发

联系服务顾问,为您提供专业的策略与建议~