当前位置: 首页 > 科技观察

GitHub召开全球开发者大会!20,000项产品改进,Copilot重磅更新

时间:2023-03-13 14:42:14 科技观察

GitHub在其全球开发者大会上宣布,Copilot将增加对包括Neovim和JetBrainsIDE在内的编辑器的支持,重点是JetBrains的IntelliJIDEA和PyCharm。GitHub还宣布,Copilot支持Java、C、C++和C#等语言的多行代码补全,以及自上次GitHubUniverse以来的20,000多项产品改进。想写出漂亮的代码,但就是憋不住怎么办?紧迫的!其实大可不必如此着急。因为写出优秀的代码和遇到对的人一样重要,不能勉强。你不会真的相信吧?咳咳,开玩笑的,钓鱼是不对的,工作还是要认真。毕竟,如果你自己搞不定,你也可以去GitHub上“学习”一下。但是在GitHub上找东西还是挺麻烦的。这。..当然没关系。还记得6月GitHub和OpenAI联合推出的全新AI代码补全工具Copilot的预览版吗?在刚刚结束的GitHub开发者大会上,Copilot的超进化版来了!“Copilot”的本意是Copilot这个词,副驾驶的意思。例如,在简单的情况下,副驾驶(Copilot)可以从机长手中接管飞机的控制权,驾驶飞机(如直线和平飞巡航)。但是,当情况不稳定且难以控制时(比如在恶劣天气下降落时),机长仍然要控制飞机的飞行。OpenAI联合创始人兼首席技术官GregBrockman曾表示,编程其实应该分为两部分。一种是认真思考一个问题并尝试去理解它。第二个是将这些小片段映射到现有代码中,无论是库、函数还是API。程序员应该在第一个问题上花更多的时间,而不是在第二部分上花很多时间。毕竟很多代码都是在重复别人之前做过的事情。因此,GitHub和OpenAI的Copilot的目的是将人类程序员从“不断重复前人的工作”的境地中解放出来,将更简单、更基础的代码编写任务交给AI。Copilot就是为此而生,你可以自己写代码。学府五车的“副驾驶”OpenAI在2020年推出了拥有1750亿个参数的GPT-3,参数规模接近人类神经元数量。GPT-3使用了2019年之前互联网上几乎所有的公开书面文本进行训练,因此具有一定的自然语言理解能力,可以作诗、聊天、生成文本等。今年夏天,OpenAI发布了Codex。Codex在GPT-3上进行了训练,在从GitHub提取的TB级公共代码以及英语示例上进行了训练。只要你给Codex命令,它就会把英文翻译成代码。然后,当你的手离开键盘时,Codex会自动编程,火箭会自行移动。而Copilot建立在OpenAI强大的Codex算法之上,获得了“普惠”的代码积累和前所未有的代码生产能力。Copilot不仅可以模仿它看到的代码,还可以分析函数名、方法名、类名和注释的上下文来生成和综合代码,并在编辑器中为开发者提供整行代码或函数的建议。它减少了工程师在API文档上花费的时间,还有助于编写测试代码。“副驾驶”超进化!这次,编程小助手Copilot增加了对更多代码编辑器和更多语言的支持!Copilot将增加对包括Neovim和JetBrainsIDE在内的编辑器的支持,重点是JetBrains的IntelliJIDEA和PyCharm。对VisualStudioCode集成开发环境的支持也仍在开发中。GitHub还宣布Copilot将支持Java、C、C++、C#等语言的多行代码补全,这意味着Copilot可以自行生成多行代码,功能更加强大。此外,Copilot仍将支持其擅长的Python、JavaScript、TypeScript、Ruby和Go等语言,并在未来几个月支持更多语言。尽管Copilot因代码侵犯版权而引起广泛争议,但GitHub产品副总裁RyanSalva表示,Copilot提供的是全面的代码建议,而不是逐字逐句的评论。GitHub坚称,用于训练Copilot的公共数据仍在合理使用权范围内。目前,GitHub仍在邀请更多开发者试用Copilot技术预览版。有兴趣的小伙伴可以申请哦!GitHub开发者大会的其他亮点GitHubIssues的新官方公开测试版新功能包括项目板和动态表,以便可以对问题和拉取请求进行过滤、排序和分组。迭代支持:可以在项目表中创建“迭代”字段类型,以按冲刺和周期对问题进行分类和分组;自定义字段:使用对团队重要的信息计划和跟踪工作;在公开或私人之间切换。GitHub讨论区升级集成GitHubActions:在Discussion和DiscussionCommentwebhook事件上触发操作工作流;讨论标签:使用自定义标签对讨论进行分类和过滤;GitHubMobile:随时随地使用GitHubMobile应用进行讨论。Codespaces云开发环境更新GitHubCodespaces可以直接通过浏览器或VisualStudioCode启动新的开发环境。将创建新开发环境的时间从45分钟缩短到10秒。开发环境创建更简单:一键创建和更新devcontainer.json开发环境的代码定义;CLI加入Codespaces:支持喜欢命令行的开发者,直接SSH访问开发环境;全新的RESTAPI:以编程方式管理代码空间将变得更加容易;转发端口的访问控制:将转发端口共享到Codespaces,并将其标记为公共、私有或与团队成员共享;无缝访问GitHub容器注册表:自动验证存储在GHCR开发容器中,无需提供个人访问令牌(PAT)。GitHubActions:CI/CD改进和自动化可重复使用的工作流:工作流可以在单个存储库中维护并与整个团队共享。标准化部署工作流程使团队能够执行最佳实践并取得更快、更稳健的进展;自动扩展自托管运行器的API:通过扩大或缩小车队来管理自托管基础设施的成本,以应对特定的工作负载;基于OpenIDConnect(OIDC)的身份验证支持:可以使用任何支持OIDC的云提供商(包括AWS、Azure、GCP)。命令面板更新新的命令面板将通过一系列新命令优化工作流程,这些命令可以在GitHub上的任何位置使用快捷键访问-在macOS上为命令k,在Windows和Linux上为控制k。您可以在那里快速导航到任何项目、回购、拉取请求或问题,并运行命令。支持Ruby代码扫描Ruby是开源社区中第10大最流行的编程语言。为了帮助更多开源维护者和组织发现其代码中的潜在漏洞,GitHub在其支持代码扫描的CodeQL引擎中添加了对Ruby的支持。CodeQL可以识别代码中的安全问题,以及流向漏洞位置的数据。其中包括SQL注入、正则表达式拒绝服务(ReDoS)、命令行注入等。GitHub代码扫描、CodeQLCLI和VisualStudioCode的CodeQL扩展默认支持Ruby。除了Ruby,CodeQL支持的语言还有C/C++、C#、Java、JavaScript/TypeScript、Python、Go。GitHubEnterpriseCloud更新GitHubEnterpriseCloud为企业用户提供了完整的云计算DevOps平台。企业管理用户(EMU)企业管理员可以拥有和管理身份的整个生命周期,同时提高供应和取消供应能力;自定义存储库角色:GitHub管理员现在可以为团队、组织成员和外部协作者级别创建自定义权限。