aiXcoder编程机器人将开发程序员的新技能

机器人

524人已加入

描述

现在开发者所书写的代码,大多都已被重复使用多次。即便如此,他们依然要被复杂、繁复的代码逻辑占去大量时间,未能把更多的时间和精力真正的投入到富有创造性的劳动当中。近日,一款智能编程机器人aiXcoder——这是一款人工智能辅助软件,可以将人工智能与软件开发连接起来,利用人工智能技术辅助开发者自动进行程序编写。

在aiXcoder的辅助下,程序员将摆脱过去逐字逐句的编程模式。以代码自动补全功能为例,它能够自动预测程序员的编程意图,为开发者推荐出的代码补更长、更准确,从而程序员在编写过程中可以通过“一键选择”的方式,直接补全代码。不仅如此,经过训练的aiXcoder还能根据程序员使用习惯,对频繁使用的成员、方法进行智能排序,从而大大提高代码的编写效率。

而且,aiXcoder还能在程序编写的过程中,通过智能的搜索并推荐与当前功能代码相似的程序,开阔了程序员的思维,为程序员提供了有力的参考。采访过程中,郝逸洋亲自演示了aiXcoder的使用过程,当他在编写程序时,aiXcoder自动预测并迅速给出了提示,几乎整一句代码都能通过aiXcoder的自动补全技术实现正确编写,按照这种方式,一个程序在短时间内就能轻松完成。

正是这样一个aiXcoder智能编程机器人,能将编程开发人员的效率和质量提上去,同时能把人从那些复杂的、繁复的代码逻辑中解脱出来。aiXcoder就像一个时刻陪伴程序员工作的“伙伴”,与程序员一起编写代码,帮助程序员查缺补漏。

aiXcoder 采用了专门应用于程序分析与生成的特定深度神经网络模型,其原理是用深度神经网络构造起一个庞大的深度神经网络体系,然后基于GitHub和Stackoverflow等优质平台上的开源代码数据集加以训练,最后针对不同的任务、对引擎大脑进行特别训练,以插件的形式整合在常用的IDE中。

aiXcoder的原生技术来源于北京大学高可信软件技术教育部重点实验室,首席科学家李戈是北京大学信息科学技术学院软件研究所的副教授,2013年,他曾到斯坦福大学AI实验室中的吴恩达团队下,以访问学者的身份进行合作研究。在此期间,李戈提出了利用深度神经网络进行程序分析和生成的想法。对于这个想法,曾有Stanford教授提出自己的疑惑:“计算机知道程序的一切,它可以编译、可以run(运行),你为什么还要分析他?”

当前,aiXcoder采用“云服务”的运行模式,它的深度学习引擎部署在云服务器中,就如同一个云端的“编程大脑”,开发者只需要下载一个客户端插件,这其中涵盖了IntelliJ、Eclipse、VS-Code等主流集成开发环境,支持当下各种主流的开发语言,如Python、Java、C++等。郝逸洋表示,aiXcoder将于近期推出PHP和JavaScript语言等前端开发语言的支持。

在此基础上,开发者们只需选择相应的插件即可实现与“云端AI服务”的对接,随时随地使用自己的“编程大脑”,不需要更繁琐操作流程。aiXcoder主要面向企业用户提供智能编程服务,对于企业用户,aiXcoder提供了定制化的专属服务,以“企业私有云”的方式部署在企业中,利用企业自己的代码对深度学习引擎进行训练,使aiXcoder学习到企业代码中的隐含逻辑和知识,从而为企业中的开发者提供贴身的编程辅助。

同时,配合aiXcoder的企业开发者服务模式,推出了“aiXmanager开发质效提升”一体化解决方案,aiXmanager能够对程序员的“指尖行为”所形成的大数据进行分析,有效揭示出开发过程中存在的一系列效率和质量问题,帮助企业挖掘潜在的开发潜能。

在此之前,程序员的“指尖行为”是软件开发中典型的“暗数据”,价值大却难以捕获、难以分析。在aiXcoder的帮助下,这些暗数据被充分利用了起来。哪些技术难点最影响开发效率?哪些代码质量问题最为突出?哪些程序代码耗费时间最多?哪些代码被修改的次数最多?等等这些影响企业开发能力的潜在问题被明明白白揭示出来。

面向C端用户,aiXcoder主推两个版本,分别是Community版(社区版)和Professional版(专业版)。社区版可以免费下载使用,而Professional版则会更智能,它能够从用户编写的代码中不断学习个性化的编程模式和编程习惯,能为用户打造一个更加智能的私人编程“助理”。现阶段,aiXcoder团队已经为华为、百度、阿里巴巴、软通动力等公司提供了企业定制服务。

来自企业开发者的反馈信息表明:在aiXcoder的帮助下,编程开发人员能够在最短的时间内高效的编写代码,有效的节省了程序员的开发时间,同时也降低了程序员对API文档或相关信息的依赖。使得将开发者从繁复的代码逻辑中解脱出来,让他们有机会能投入到一些更有创新性的工作上去。当前在智能编程机器人领域内,还有来自美国的两款插件——kite、TabNine也和aiXcoder处于同一赛道。

用TabNine官方网站给出的示例代码进行对比,aiXcoder仅需132次按键即输入完毕,而TaNine需要228次按键才能完成输入,Kite也需要214次按键才能完成,在该示例中,aiXcoder的输入效率是TabNine的1.73倍,是kite的1.62倍,可见aiXcoder的优势非常明显。在未来,aiXcoder想要打造成一款能够自动帮助程序员完成程序编写的“智能编程机器人”,以低耗时、高效率、便捷式的方式切入到开发者的工作中。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分