数十亿行代码训练,GitHub原生AI代码生成工具上线

2023-06-05 0 586

电脑之心报导

电脑之心杂志社

AI 程式设计辅助基本上操作 Copilot:谷歌、OpenAI、GitHub 四家联手打造出。

GitHub Copilot 是两个 AI 标识符电吉他,并并非浏览器:它明确提出的大多数代码提议都是新聚合的,在此之前未曾再次出现过。

具体来说,这是今后。

数十亿行代码训练,GitHub原生AI代码生成工具上线

在工程项目合作开发中,杰出的标识符手动Bazelle基本上操作能提高管理效率。不过,现代的 IDE 基本上都采用搜寻方式展开Bazelle,在许多情景下效用欠佳。

本周一,GitHub 和 OpenAI 联手正式发布了捷伊 AI 标识符Bazelle基本上操作 GitHub Copilot,并展现了控制技术测试版。该基本上操作能在 VS Code GUI中手动顺利完成标识符短片,这也是 OpenAI 拒绝接受谷歌 10 万美元股权投资年来的第两个重大突破。

数十亿行代码训练,GitHub原生AI代码生成工具上线

目前,GitHub Copilot 工程项目还只是严格的控制技术测试版,用户能在主页注册报名,将有机会访问试用。

数十亿行代码训练,GitHub原生AI代码生成工具上线

GitHub Copilot 注册地址:https://github.com/features/copilot/signup

对于 GitHub 和 OpenAI 推出的这款全新 AI 标识符Bazelle基本上操作,网友们给出了极高的评价。下面这位用户大致能代表大多数试用者的心声。ta 表示:「我采用 Alpha 版两周了,Copilot 似乎能够准确地知道我接下来要输入的内容,这令我大受震撼。有时它甚至提议我要查找的内容,例如选择随机十六进制随机码的短片或者采用所有常见图像 mime-types 顺利完成数组。此外,Copilot 在处理 React 组件时也特别有用,能做出非常准确的预测。最后,Copilot 改变了程序员记录自己标识符的方式。如果你在实现标识符之前编写了非常好的描述性注释,它能够更好地给出正确标识符提议,有时甚至能为你编写整函数。」

数十亿行代码训练,GitHub原生AI代码生成工具上线

MSFTResearch 高级研究员 Alex Polozov 更是表示:不夸张的讲,Copilot 将成为本世纪 20 年代排名前三的控制技术进展!

数十亿行代码训练,GitHub原生AI代码生成工具上线

甚至有网友表示:这是要终结程式设计?

数十亿行代码训练,GitHub原生AI代码生成工具上线

不过,虽然采用者对 Copilot 提供的生产力提高赞不绝口,GitHub 也表示:并并非所有采用的标识符都经过了漏洞、不安全实践或个人数据的审查。因此,他们也设置了许多过滤器来防止 Copilot 聚合攻击性的语言,并可能效用并不完美,需要后续完善。

Copilot 背后的控制技术

首先,体能训练数据上,GitHub Copilot 是在数千万行公共代码上体能训练的。

数十亿行代码训练,GitHub原生AI代码生成工具上线

从控制技术角度来看,GitHub Copilot 基本上操作由 OpenAI 合作开发的全新 AI 系统 OpenAI Codex 提供支持。OpenAI 的联手创始人兼首席控制技术官 Greg Brockman 说:Codex 是 GPT-3 的后代。

数十亿行代码训练,GitHub原生AI代码生成工具上线

OpenAI Codex 在人们如何采用标识符方面拥有广泛的知识,并且在标识符聚合领域显著优于 GPT-3 了,部分原因在于该系统是在包含大量公开源标识符的数据集上体能训练的。更具体地,Codex 的体能训练集中包含了提取自 GitHub 的 TB(terabyte)级公开可用标识符以及英语语言示例。

由于是在公开可用源标识符和自然语言上体能训练,Codex 能同时理解编程语言和人类语言。因此,在整个实现过程中,Copilot GUI扩展将合作开发者的注释和标识符发送至 Copilot 服务端,然后采用 Codex 聚合和提议单行标识符和整个函数。

数十亿行代码训练,GitHub原生AI代码生成工具上线

此外,据 OpenAI 的一位代表透露:OpenAI 计划今年夏季推出基于其 API 的 Codex 版本,这样合作开发者们就能利用该控制技术创建自己的 app 了。

在具体实现中,GitHub Copilot 从编写的标识符中提取上下文,并给出整行标识符或整函数的提议。该基本上操作能帮助合作开发者快速发现解决问题、编写测试和搜寻全新 API 的替代方式,而不需要在网上繁琐地定向搜寻答案。

另外,采用 GitHub Copilot,合作开发者始终能掌控一切,既能循环查看 Copilot 给出的标识符提议,选择接收或者拒绝,并能够手动地编辑这些标识符。Copilot 会适应合作开发者所做的编辑,并适配编码风格。

GitHub Copilot 适用于多种框架和语言,但本次展现的控制技术测试版尤其适用于 Python、JavaScript、TypeScript、Ruby 和 Go 语言。GitHub 认为该基本上操作是结对程式设计(pair programming)的重大进展,程序员在编写标识符时有了两个「虚拟的帮手」,它能捕捉到程序员的错误,加速合作开发过程。

那么,Copilot 效用如何?

最近,Github 针对一组在开源存储库中具有良好测试覆盖率的 Python 函数展开了基准测试,测试团队清除了函数体并要求 GitHub Copilot 填充它们。模型在第一次尝试正确率是 43% ,经过 10 次尝试后,正确率达到了 57%。之后 GitHub Copilot 还将展开多次体能训练和测试,准确率会进一步提高。

下面,我们就看一下 GitHub 给出的具体 demo 展现。

Copilot 的Bazelle效用

相比于市面上许多程式设计辅助基本上操作,Copilot 的上下文理解能力要强大得多。无论是在文档字符串、注释、函数名还是标识符主体中,Copilot 都能根据程式设计者已写出的上下文聚合匹配的标识符。

先来看一下 Copilot 的主要功能——标识符Bazelle的效用,以 TypeScript 语言为例,给出函数名和参数,Copilot 就能手动Bazelle标识符。

数十亿行代码训练,GitHub原生AI代码生成工具上线

除了Bazelle函数,Copilot 还能根据注释写出标识符。程式设计者给出一条描述标识符逻辑的注释,GitHub Copilot 就能手动聚合标识符:

数十亿行代码训练,GitHub原生AI代码生成工具上线

在程式设计过程中,有些标识符的格式和内容非常相似,重复编写耗时且无聊。现在 GitHub Copilot 能够帮程式设计者解决这个问题,将简单重复的标识符编写部分手动化:

数十亿行代码训练,GitHub原生AI代码生成工具上线

在软件合作开发的过程中,除了编写标识符,软件测试也是非常重要的,对两个标识符工程项目起到支撑的作用。导入两个测试包,其余的测试标识符 GitHub Copilot 就能够帮合作开发者顺利完成。

数十亿行代码训练,GitHub原生AI代码生成工具上线

在程式设计中,同两个函数常有多种实现方式,程式设计者通常会根据标识符的实现效用和运行性能选择最合适的方式。编写多种实现需要花费时间和精力,现在采用 GitHub Copilot 一键就能搞定,如下图所示,点击 Next 和 Previous 就能查看多种实现方式,点击 Accept 选中其中一种。

数十亿行代码训练,GitHub原生AI代码生成工具上线

今天 GitHub 推出的 Copilot 控制技术测试版本,还仅限于 Python、JavaScript、TypeScript、Ruby 和 Go 语言。此外,合作开发团队表示,在努力使其变得更好的同时,GitHub Copilot Bazelle的标识符应该像其他任何标识符一样经过仔细审查和测试。这些仍需要人类程式设计者的监督和优化,但 AI 手动程式设计的愿景已指日可待。

举报/反馈

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务