- 公司地址
-
汕头市龙湖区长江路23号长平新一城商业写字楼2栋404-407
- 技术专线
-
13790889505
- 服务热线
-
0754-87123130
- 客服微信
2021-07-14 15:33:52
3 年前,自 微软收购 Github 后大动作不断啊,两年多之前就让 Github 私库免费了!,后面还推出了 Github for Mobile 移动版,这些我都已经在Java技术栈作过分享,没看过的可以回过头看下。
最近,Github 又搞大事了,推出了一款 AI 编程神器——Github Copilot,牛逼啊,下面栈长带大家来看看到底是什么鬼?
官网:
https://copilot.github.com/
Copilot 是由 Github 和 OpenAI 合作联合开发的,看到这个玩意,让我想到了之前分享的 AI 写代码工具:Codota,它能够自动进行代码分析并智能提示,极大的提高开发效率。
栈长大致看了下,Github Copilot 貌似要更牛逼,Github Copilot ——你的 AI 配对程序员,可以理解为你的影子程序员,它基于数十亿行开源代码进行训练,并在背后默默给你建议,不管是整行、还是是整个完整方法,它都能帮你完成。
牛逼,某些代码,比如说工具类,再也不用在网上找了,Github Copilot 就能完成整段方法的代码编写。
简单的讲,Copilot 可以根据你提供的注释、方法名、代码本身等上下文信息自动匹配以完成整个方法。
来看几个官网提供的示例,就知道有多牛逼!
自动完成整个方法:
根据注释完成整个方法:
自动填充相似代码:
自动生成相匹配的单元测试代码:
可切换多种不同的解决方案:
快速上手新语言、新框架:
很可惜,Copilot 目前还是预览版,还不支持 Java,只支持 Python、JavaScript、TypeScript、Ruby 和 Go 几种编程语言,不然栈长还真想上手体验一下。
另外,Copilot 目前也只支持在 Visual Studio Code 中使用,如果你想基于上述几种语言进行体验,可以申请试用预览版,申请地址:
https://github.com/features/copilot/signup
这里栈长就不演示了,有兴趣的可以研究下,等后面如果支持 Java 了,栈长一定体验下,不要走开,关注Java技术栈,第一时间推送哦。
Copilot 这么牛逼?是什么工作原理呢?
来看下官网提供的交互图:
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 工具,你们有什么想说的?欢迎留言分享~