官网: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
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 工具,你们有什么想说的?欢迎留言分享~
版权申明:本文系公众号 "Java技术栈" 原创,原创实属不易,转载、引用本文内容请注明出处,禁止抄袭、洗稿,请自重,尊重大家的劳动成果和知识产权,抄袭必究。