OpenAI的GPT-2语言模型已经过调整 可以帮助您更快地编写代码

人工智能2020-08-28 12:44:19
导读谈论更聪明,更努力的工作。计算机科学专业学生通过构建一个有趣的代码完成工具,使用深度学习软件来完成源代码行,从而获得了正确的想法

谈论更聪明,更努力的工作。计算机科学专业学生通过构建一个有趣的代码完成工具,使用深度学习软件来完成源代码行,从而获得了正确的想法。

虽然,是的,已经有大量的源代码自动完成工具可用,这个被称为Deep TabNine,据说是基于OpenAI令人印象深刻的GPT-2文本喷射引擎,这使我们的书很有趣。GPT-2具有经过训练的神经网络,可以给出书写提示,例如新闻文章的开头句子,小说或一行代码,并预测下一步应该遵循的内容。它可以做出这些预测,因为它已经研究了数百万个网页,以了解人类如何将主题,想法和单词联系在一起。

Deep TabNine是由加拿大滑铁卢大学四年级本科生Jacob Jackson开发的,他之前曾制作过非AI代码完成插件TabNine。

深度TabNine,一旦安装在代码编辑器中,就会分析人类输入的每一行源,并建议完成每个语句的方法,有点像一对编程伙伴。然后,编码人员可以从建议列表中选择完成未完成的行而无需全部输入。从本质上讲,它就像使用Google的Smart Compose功能制作电子邮件,或者使用众多非AI自动完成工具之一。当然,如果Deep TabNine提出了一个愚蠢的建议,开发人员可以忽略它。

“自动完成是这种技术的一个很好的用例,”杰克逊告诉The Register。“所有程序员都花费大量时间编写可以使用AI加速的代码。与语言生成相比,代码中的自动完成在技术上是一个更容易解决的问题。“

虽然Deep TabNine是基于GPT-2的架构,但我们被告知它略有修改。自从他试图将该项目商业化以来,杰克逊对于透露太多细节犹豫不决。他没有说他用于开发Deep TabNine的GPT-2版本,但确实说使用具有更多参数的模型并不总是有益的。

“使用更多参数不一定更好,”他解释道。“它所提出的建议会变得更加智能,但是当你打字时它也会变得更慢,反应更慢。”

Deep TabNine应该知道源代码的上下文,因此比典型的代码完成工具包更聪明。例如,如果您在以数学为中心的函数中编写一些代码,例如,它可能会建议数学运算而不是处理文本字符串的方法。您可以在此处观看使用各种编程语言的Deep TabNine演示。

目前,杰克逊的工具在计算上非常密集,并且需要GPU通过多达100亿次浮点计算来加速执行任务,并在您输入时提出建议。因此,您的笔记本电脑可能不够强大,无法有效地运行神经网络,您可以通过测试级别的云服务申请使用DeepTab Nine,该服务可以完成后端的所有预测,并将建议提交给您的代码编辑器。互联网。

杰克逊希望创建一个可以向公司许可的版本,以便他们可以在自己的服务器上运行软件,以确保他们的代码保持私密,而不是穿梭于远程服务以进行分析和建议。

DeepTab Nine是用Rust编写的,支持Python,JavaScript,Java,C ++,C,PHP,Go,C#,Ruby,Objective-C,Rust,Swift,TypeScript,Haskell,OCaml,Scala,Kotlin,Perl,SQL,HTML ,CSS和Bash。

免责声明:本文由用户上传,如有侵权请联系删除!