杀手级AI补代码工具问世,支持23种语言及5种主流编辑器,程序员沸腾了










(给机器学习算法与Python学习加星标,提升AI技能)

本文经AI新媒体量子位(公众号 ID: QbitAI)授权转载

GPT-2,一个来自OpenAI的逆天语言模型,现在能用来补全代码了。一位来自加拿大的大四学霸,开发了一款”Deep TabNine“代码补全工具,实现了这一大胆的想法。它支持23种编程语言、5种编辑器,使用简单,效果惊艳。
不少使用过的网友说:TabNine是他们用过的最好的代码补全工具,这是属于程序员的杀手级应用在VS Code的扩展商店里,TabNine已经被下载1.3万次,获得全5星好评。

支持23种编程语言

Deep TabNine支持Java
Python
C++
不同于各种其他代码补全插件,Deep TabNine是根据程序员过去的习惯自动补全,并在后面给出几种选项的概率。
如果有类似代码出现在之前的项目里,TabNine还会在补全候选框中直接给出地址,方便用户点击进去查阅。
除以上几种语言之外,Deep TabNine还支持JavaScriptCPHPGoC#RubyObjective-CRustSwiftTypeScriptOCamlScalaKotlinPerlSQLHTMLCSSBash
主流编程语言几乎都囊括在内。

支持5种编辑器

TabNine支持VS CodeSublime TextAtomEmacsVim五种代码编辑器。
对于使用VS Code和Sublime来说,安装TabNine非常方便,用自带的扩展包管理工具即可。

VS Code

VS Code用户按下Ctrl+P(Mac用户按下+P),粘贴以下命令,然后按回车键完成安装。
ext install TabNine.tabnine-vscode

Sublime

Sublime用户安装分为两步:
1、按下Ctrl+Shift+P(Mac用户:+Shift+P),选择Install Package Control;
2、再次按下Ctrl+Shift+P(Mac用户:+Shift+P),选择Package Control:Install Package,然后选择TabNine来安装。

Vim

Vim使用Vundle插件管理器进行安装:
1、添加Plugin ‘zxqfl/tabnine-vim’.vimrc
2、输入:PluginInstall,按下回车完成安装。
其他编辑器的安装方法就不一一赘述了,有需要的用户可以参照文末的链接进行安装。
由于Deep TabNine用到机器学习补全代码,因此需要大量的算力(超过100亿次浮点运算),在笔记本上运行模型,无法获得低延迟的体验。
因此,软件开发者推出了TabNine Cloud云服务器,用云端GPU加速。付费用户不需要再加钱即可使用。
所以听起来很划算吧?

怎么做到的?

TabNine是在GPT-2的基础上构建的,这是一种Transformer架构,原产自OpenAI,是个“逆天”语言模型。
GPT-2的参数高达15亿个,数据量比一代扩大了10倍,使用了包含800万个网页的数据集,共有40GB
逆天之处就在于,GPT-2写起文章来毫无违和感,无需针对性训练就能横扫各种特定领域的语言建模任务,还具备阅读理解、问答、生成文章摘要、翻译等等能力。
就GPT-2而言,它的训练目标很简单:根据所有给定文本中前面的单词,预测下一个单词。虽然本来是解决NLP问题,看似与写代码没什么关联,但建模代码也算是用一种独有的方式在理解英文
项目主页显示,在大约经过GitHub中200万个文件训练后,TabNine具备了自动补全代码的能力。
在训练这个模型期间,模型学习了例如动态类型语言中的类型推断等复杂行为,用这样的训练方式预测token。
Deep TabNine加入了之前用户强烈要求加入的功能:用预先存在的知识,解决在创建新项目时的代码补全问题。

传送门

TabNine网站:
https://tabnine.com/blog/deep
Jackson GitHub主页:
https://github.com/zxqfl
推荐阅读
看小姐姐用动图展示10大Git命令
教你5种高级的可视化方法,动态可交互!
微软,致力于做最好的Linux发行版,Windows支持直接访问Linux子系统
华科博士入职华为年薪201万,博三才发文章,打破学校零记录

喜欢就点「在看」吧 !