《智能化软件开发:程序员与 AI 机器人一起结对编程》阅读笔记

版权声明:如需转载或引用,请注明出处。 https://blog.csdn.net/weixin_39278265/article/details/83583897

前言

今日阅读文章:《智能化软件开发:程序员与 AI 机器人一起结对编程》

原链接见:[1]

阅读笔记

简介

伴随着 AI 技术的发展和应用,人们对「人工智能」的认知也不断被刷新和拓展,在大众眼中,AI 正变得越来越强大,不仅可以下棋博弈战胜人类的顶尖选手,还可以进行语音识别、自动翻译、人脸识别,甚至可以自动驾驶汽车。最近,北京大学与硅心科技团队联合推出了一项新的 AI 成果——aiXcoder,它利用 AI 技术辅助开发者自动进行程序编写,引燃了人们关于「AI+软件」的巨大发展潜力以及「软件开发自动化」发展前景的讨论与思考。

这么强大的吗,北大和硅心科技团队开发出“aiXcoder”来辅助开发者进行程序编写。

在这里插入图片描述

这个方向很新啊,看来。而且都是大公司在做,比如:谷歌,Facebook,微软。

与上述研究思路不同,来自北京大学的研究团队,正致力于「辅助人类程序员自动编写程序代码」。「虽然在完全不依赖人类程序员的场景中自动生成程序仍需进一步研究,但我们可以利用人工智能技术来辅助人类编写程序。」北京大学高可信软件技术教育部重点实验室副教授李戈表示,「我们已经在『利用 AI 辅助程序员编程,以提高程序编写的效率和质量』方面取得了重要的研究进展。」

这个确实是一个很好的思路,既然不能完全自动生成代码,我们可以采用半自动,即semi-automatically 的方式来做突破,循序渐进才是稳健之选。

李戈所在的研究团队是国际上最早从事基于深度神经网络的计算机程序分析与生成研究的团队之一,在代码功能语义分析、代码自动生成与补全等方面的研究成果受到国内外同行的高度关注。
近年来,该团队取得了一系列重要研究成果,形成了一批重要的行业专利及学术论文。基于所取得的科研成果,李戈所在实验室正转向产业化应用,致力于将「智能化软件开发技术」转化为能够支持工业界生产的商业产品——aiXcoder。

划重点。厉害。
而且该团队是将近年来的一系列研究成果综合起来,才做出来的aiXcoder,我觉得真酷!
自己的研究成果能够真正推动工业的进步,实在美哉。

aiXcoder 智能编程机器人

aiXcoder 是一款全新的智能编程机器人产品,它采用与程序员一起「结对编程」的方式为程序员提供服务,从而提高程序员的编程效率。在 aiXcoder 的辅助下,程序将彻底摆脱传统的编程模式,不再需要「逐字逐句」编写程序。

这么厉害的吗,结对编程,我之前上课才学过的概念,似乎是:两个程序员互帮互助一起完成软件项目开发。
现在竟然变成了AI+程序员结对编程,好有想法。

aiXcoder 能够自动预测程序员的编程意图,连续向程序员推荐「即将书写的下一段代码」,程序员可以通过「一键补全」的方式,直接确认接下来输入的代码,从而大大提升代码的编写效率。同时,aiXcoder 还能够在程序编程的过程中,不断智能地搜索并推荐与当前程序功能相似的规范程序代码,为程序员提供有力的编程参考。目前,aiXcoder 编程机器人已经推出了 Android、JFinal、Tensorflow 等多个版本,为不同领域的编程者提供辅助。

疑问:aiXcoder搜索的速度快不快,占用的系统资源大不大呢

在这里插入图片描述

当前,aiXcoder 采用「云服务」的运行模式,其深度学习模型如同部署在云端的「编程大脑」,其客户端以插件的形式集成在 IDE 中,实现了与 IntelliJ、Eclipse、VS-Code 等主流集成开发平台的无缝对接,程序员可以通过 aiXcoder 插件实现与「云端 AI 服务」的对接,随时随地使用自己的「编程大脑」。


同时,aiXcoder 还可以为软件企业提供专业领域的定制化专属服务,以企业内部云的方式为软件企业提供专属服务。使用过该服务的某软件外包公司反馈:aiXcoder 不仅能够有效节省程序员的开发时间,还能够有效降低程序员对 API 文档或相关信息的依赖,「原本需要上网搜索相似代码和搜索 API 使用模式的时间,被节省了下来,可以更加集中精力编写特定系统所需要的代码。」站在程序员的角度,在 aiXcoder 的帮助下,开发者可以把更多时间用于「全新」代码的编写,提高个人价值。

原来是云服务的方式,那就是说不需要占用本地的运算资源,很实用。

以 aiXcoder 的 Tensorflow 版本为例,他们使用了超过 30 万份经过处理的 Tensorflow 源代码作为训练数据,使神经网络模型学会了编写 Tensorflow 代码所需的各种规范模式、潜在规则、常用 API 序列、惯用编码模式等知识和经验。在程序员编写代码的过程中,aiXcoder 能够自动推测程序员的编程语义,并按照这些知识和经验及时向程序员推荐可能要使用的编程语句,以达到辅助程序员自动完成程序的目的,大大提升程序开发的速度。

30万份源代码做训练。

「Leave Artificial Intelligence to aiXcoder, Leave Real Intelligence to Human.」(把人工智能留给 aiXcoder,把真正的智能留给人类。),这正是 aiXcoder 研发团队的信条和口号。

文章最后还给出了aiXcoder的官网地址:http://www.aixcoder.com/

初步观察

我进上面给出的aiXcoder的官网上看了看,网页做的很好,下载的地方也很明了,而且提供免费下载,甚至还有评论区,我进评论看了一下,发现很有意思:

在这里插入图片描述

在这里插入图片描述
使用很慢会不会和网速有关系?

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

总的来看,感觉这些意见还是很中肯的。

总结

这个工作很有意义,以后希望也有机会接触到这些。

参考文献

[1] 《智能化软件开发:程序员与 AI 机器人一起结对编程》 https://mp.weixin.qq.com/s?__biz=MzI5NTIxNTg0OA==&mid=2247492993&idx=1&sn=59da214a6e5e569fba45d2aa6771035f&chksm=ec545206db23db10eb73d83126952bf6cf4d18743238f1dcfc45add2a597588c499baeae7a3e&mpshare=1&scene=1&srcid=10319jze9Ur60rQ0rfQsEga0#rd

猜你喜欢

转载自blog.csdn.net/weixin_39278265/article/details/83583897