GitHub Copilot最新升级!61%的Java开发者用来摸鱼,工作效率提升55%
来源:新智元
2月14日,GitHub发布了个人版和企业版Copilot的重大更新。
简单来说就是,升级之后的GitHub Copilot将会具有更高的代码质量,以及更快的响应速度。
更强大的AI模型,更好的代码建议
自发布以来,GitHub Copilot已经为超过一百万人开发者提供了更强生产力,帮助他们提高了55%的编码速度。
但早在2022年6月首次推出时,只有27%的开发者会选择使用GitHub Copilot生成的代码。
如今,这一数字已经上升到了46%。甚至在Java中,达到了61%。
官方研究显示,在使用GitHub Copilot的开发者中,有90%表示可以更快地完成任务,其中73%的人能够更好地保持顺畅并节省精力。
与此同时,高达75%的开发者在使用Copilot时感到更有成就感,并且能够专注于工作。
为了实现这一目标,GitHub做了如下关键技术改进:
- 升级后的AI Codex模型
将Copilot升级为新的OpenAI Codex模型,为代码合成提供了更好的结果。
- 更好的上下文理解
通过一种称为Fill-In-the-Middle(FIM)的新范式,改进了GitHub Copilot给出的代码建议。这种方法不仅会考虑代码的前缀,还会利用已知的代码后缀,并在中间留出空白让GitHub Copilot来填补。如此一来,Copilot就有了更多关于预期代码的上下文信息,以及自己应该如何去和程序的其他部分保持一致。
- 轻量级的客户端模型
使用轻量级客户端模型更新了VS Code的GitHub Copilot扩展,从而提高了建议代码的整体接受率。现在,GitHub Copilot通过使用关于用户上下文的基本信息(例如,上一个建议是否被接受),将不必要的建议减少了4.5%。
用新的AI系统过滤安全漏洞
此外,GitHub还推出了一个基于AI的漏洞过滤系统,可以实时阻止不安全的编码模式,使GitHub Copilot建议更加安全。
新系统所采用的方法是,通过LLM来近似静态分析工具的操作。目前,最常见的几种易受攻击的编码模式,包括硬编码凭证、SQL注入和路径注入,都可以得到有效的处理。
凭借着强大的的计算资源和先进的AI模型,GitHub Copilot甚至可以在不完整的代码片段中,检测到易受攻击的模式。
传统上,安全漏洞检测工具是在构建或发布时使用静态代码分析工具对整个存储库进行检测。原因如下:
- 代码是完整的,因此扫描工具对代码库有完整的上下文,并且可以跟踪可以确定代码是否易受攻击的依赖项。
- 静态分析工具可以安全地假定代码在语法上是正确的,并且可以利用语言编译器来获得更高的准确性。
- 这些阶段并没有明确时间限制,因此有更多时间来检测漏洞的静态分析工具,并不是为快速检测而设计。
而人工智能的这种应用正在从根本上改变我们解决漏洞的方式,并提供比具有局限性的传统漏洞检测工具更大的价值。
企业版Copilot正式发布
目前,有超过400家企业都在使用GitHub Copilot。
现在,随着GitHub Copilot for Business的推出,Copilot的能力将向每个开发者、团队、组织和企业开放。此外,GitHub还将引入更先进的OpenAI模型和新功能,为企业带来更大的利益。
新功能一览:
- 更强大的AI模型
新的建模算法提高了代码建议的质量。
- 基于AI的安全漏洞过滤
GitHub Copilot通过针对硬编码凭证、SQL注入和路径注入等问题,自动阻止常见的不安全代码建议。
- VPN代理支持
GitHub Copilot可以与VPN协同工作,包括使用自签证书,因此开发者可以在任何工作环境中对其进行访问。
- 注册简单
任何公司都可以快速在线购买Copilot for Business许可证,并轻松分配席位——即使他们不使用GitHub平台的源代码。
参考资料:
https://github.blog/2023-02-14-github-copilot-now-has-a-better-ai-model-and-new-capabilities/
https://github.blog/2023-02-14-github-copilot-for-business-is-now-available/
------
我们创建了一个高质量的技术交流群,与优秀的人在一起,自己也会优秀起来,赶紧点击加群,享受一起成长的快乐。另外,如果你最近想跳槽的话,年前我花了2周时间收集了一波大厂面经,节后准备跳槽的可以点击这里领取!
推荐阅读
··································
你好,我是程序猿DD,10年开发老司机、阿里云MVP、腾讯云TVP、出过书创过业、国企4年互联网6年。从普通开发到架构师、再到合伙人。一路过来,给我最深的感受就是一定要不断学习并关注前沿。只要你能坚持下来,多思考、少抱怨、勤动手,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你看好一个事情,一定是坚持了才能看到希望,而不是看到希望才去坚持。相信我,只要坚持下来,你一定比现在更好!如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯,帮你积累弯道超车的资本。
相关文章
- java helloworld源代码_Java Hello World源代码notepad++版
- 做了三年Java,java注释的三种形式
- java常量有哪些_JAVA常量介绍「建议收藏」
- java找不着符号_找不到符号:Java
- MySQL字段类型如何转为java_Java JDBC中,MySQL字段类型到JAVA类型的转换
- 【100天自学JAVA从入门到进阶-第七天】谈谈对象
- 【说站】java怎么从键盘输入一个数
- Java应用之性能测试瓶颈调优
- JAVA中interface接口的使用[通俗易懂]
- 很黄色的JAVA游戏_《yellow》很黄!很暴力?居然有这么黄的游戏!
- java clone()_java throwable
- springboot jasypt加密_java打包加密
- java的封装
- 【愚公系列】2023年04月 Java教学课程 137-Spring MVC框架的Response响应详解
- ORA-29511: could not resolve Java class ORACLE 报错 故障修复 远程处理
- java 发起http post请求详解编程语言
- java中有几种类型的流详解编程语言
- 实现使用Java代码实现MySQL数据库连接(java连接mysql数据库代码)
- Java Map.values()方法:获取Map集合中的所有键值对象
- 服务器实现Java远程访问Linux服务器(java远程linux)
- 解决Redis下Java环境下键值过期处理技术(redisjava过期)
- 使用Java实现Redis数据存储(redis集成java)
- 缓存利用Java操作Redis实现过期缓存(redisjava过期)
- 深入浅出 使用 Java 连接 Neo4j(java连接neo4j)
- MySQL与Java的数据交互之旅(mysql对应java)
- Exploring the Power of Java with MongoDB for Enhanced Data Management(java与mongodb)
- Java实现Linux:跨平台解决方案(java 实现linux)
- Java和Redis的配合安装方法(java redis安装)
- Java编程在Linux上的应用(java编程 linux)
- Java程序员的MySQL数据库之旅(java操作mysql数据库)