这款人工智能驱动的自动完成器帮助开发人员编写的代码减少25%

2020-05-15 06:08:39

你可能在互联网上看到过有人说“这就像是我的自动补全让我抓狂了。”事实上,键盘保护AI已经有了很长的路要走,以至于它几乎可以完成你的句子。那么,为什么开发人员不应该也享受自动完成的好处呢?

多年来,IDE(集成开发环境)一直试图通过预测开发人员代码的下一部分来加快开发速度。现在,像Codota这样的初创公司正在使用人工智能来帮助开发人员在任何代码编辑器上完成代码。

这家总部位于以色列的初创公司于2015年由Dror Weiss和首席执行官Eran Yahav创立。Codota的免费使用的Java AutoComplete插件跨Eclipse和Android Studio等主要IDE支持Java、Python、Javascript、PHP和Rust等主要语言。

雅哈夫告诉我,Codota与其他代码完成人工智能的不同之处在于,它能够依靠基于人工智能的代码“字典”来预测下一个令牌完成。他补充说,该模型根据您的需求和开发环境进行了调整:

对于每个开发人员,Codota的模型可以是不同的,适合他们的需求和开发环境。它能够为您预测极有可能出现在您的应用程序中的长时间完成。

这与代码完成工具预测完成那段代码的常见方法不同。例如,如果您正在为学生构建一个类,Codota的AI将建议类的名称和ID变量以及构造函数。

去年,Codota收购了Tabine,这是全球最受欢迎的基于AI的软件代码完成工具之一。Tabine的算法是基于OpenAI的GPT-2自然语言处理模型,相比之下,Codota的模型则是在数以吨计的开源代码上进行训练,以理解语义。目前,有100多万开发人员在使用这些产品。

该公司目前正在合并这两种自动编译工具的底层人工智能。如果你安装Codota for Java或Javascript,你将获得这两种人工智能模式的好处。

在下一步,该公司希望允许开发人员将他们的知识传授给人工智能,用于专门的案例。例如,如果您正在使用API,AI会建议您正确使用它。

Codota并不是唯一一个受到程序员好评的人工智能自动完成工具。Kite是一个主要基于Python的自动完成工具,拥有超过25万用户。该公司最近引入了对Javascript的支持,并计划很快增加对更多语言的支持。

Kite的联合创始人亚当·史密斯(Adam Smith)对人工智能在编程中的作用感到乐观。他说,他可以想象未来每个开发环境都会使用机器学习来完成代码,并为程序员提供帮助,这样他们就可以更多地专注于解决问题。

阅读我们关于科技行业如何应对冠状病毒的每日报道,并订阅我们的每周时事通讯“冠状病毒”(CoronaVirus)。

有关远程工作的提示和诀窍,请在此处查看我们的增长季度文章或在Twitter上关注我们。