龙空技术网

史上最全智能代码补全工具系列之AIXcoder篇

天天写Bug 781

前言:

而今小伙伴们对“aix 修改时间”都比较重视,姐妹们都想要分析一些“aix 修改时间”的相关内容。那么小编在网摘上汇集了一些对于“aix 修改时间””的相关知识,希望朋友们能喜欢,姐妹们快快来学习一下吧!

近几年,人工智能迅速发展,在各行各业都有所应用,特别是近两年,面向开发者的AI开发工具也是层出不穷,从这些工具中,我们看到了AI能为开发者带来的无限可能性。本系列文章主要介绍国外的Kite、Codota、TabNine、GitHub Copilot、微软IntelliCode,国内的阿里云Cosy、AIXcoder等程序员比较常用的智能编码辅助工具,并会在后续的文章中做一些更为详细的偏个人使用感受的对比评测。

上一篇我们介绍了史上最全智能代码补全工具系列之阿里云Cosy篇,本篇文章我们来看看另一款国产工具AIXcoder,官网主页:aiXcoder

AIXcoder从天眼查了解到其成立于2017年,根据官网主页的信息,它也采用了深度学习的技术,并且对模型进行了压缩,以便于提升用户下载模型的速度,减少用户本地CPU的开销。AIXcoder提供了对用户本地代码库学习的工具,但是免费版有次数限制,而且学习本地代码库的时候电脑会比较卡。比较疑惑的是,AIXcoder官网主页视频中演示了IDE内的代码搜索功能,但是在实际插件中只提供了一个跳转到浏览器中的按钮,并不能在IDE内直接搜索,难道是需要付费的?目前发布了Jetbrains及VSCode插件,主要支持Java、Python、C/C++、JavaScript、Typescript、Go、PHP等语言。

支持功能

1、代码智能补全

远程服务模式,代码需要上传到远程服务器,速度更快一点,卡顿感会减少离线模式,在启动时会把模型下载到本地适配企业/私有代码,是需要收费的

2、代码示例搜索(支持Java、C++、Python)

IDE插件端内部不支持,需要跳出到网页端中搜索

3、度量分析

编码时长、智能补全采纳率、节省时间等,普通版本不支持官方演示

从官方演示中我们能看到AIXcoder能对IDE自带的补全结果进行排序优化,类似Kite的方式,也能生成一些长序列的代码补全。

使用体验

AIXcoder跟同类工具一样也是基于深度学习的能力,能够提供长序列的补全结果,但是整体体验下来,跟其他工具有一定的差距,给出的大部分补全结果虽然排序上优化了不少,但是总体相比IDE自带的补全结果区别不是特别大。当然,有个比较好的地方是模型比较小,大部分只有几MB或者十几MB,跟TabNine动则500MB相比,确实小很多,但是也可能是因为模型过小,导致补全的效果与TabNine相比,体感要弱很多。

1)AIXcoder也会存在语法错误的问题,在下图的示例中只是简单的根据前面定义的类信息进行new实例化,但是Workbook是一个接口,是不能直接实例化的。而且AIXcoder没有对inputStream进行参数的自动填充。

2)在我明确要实例化XSSFWorkbook类时,AIXcoder也只是跟IDE一样提供了单个API的补全,当然,排序上会好很多。

3)当我想去获取XSSFSheet对象时,AIXcoder依然只提供了XSSFWorkbook的补全项,缺少对代码上下文的识别能力。

当代码信息稍微明确后,AIXcoder才能给出稍长的补全结果。

4)AIXcoder的这个补全项比较奇怪,实际上我想要的是getSheetAt,IDE自带的补全已经将其排在了第一位,但是AIXcoder却提供了两个createSheet。

5)for循环的补全不够完整,也只补了半截。

6)AIXcoder有个比较不好的地方是会把其他补全工具的结果图标替换成自己的,比如下图中第一项是TabNine提供的结果,但是TabNine的图标被换成了AIXcoder的,IDE自带的补全结果也无法幸免。

AIXcoder我们先简单体验到这儿,总体来说,AIXcoder的代码补全相比Kite、TabNine、阿里云Cosy等其他工具算是中规中矩,同样存在语法错误的问题,对IDE结果的排序优化稍微有点鸡肋,因为IntelliJ IDEA从2020.3版本开始就已经自带了基于机器学习的排序优化功能(需要去设置中开启),而AIXcoder对排序的优化并没有比IDEA自己的优化好多少,希望AIXcoder能在代码补全上继续加强。

AIXcoder就为大家介绍到这里,文中如有纰漏欢迎指正,有兴趣的小伙伴可以在IDE插件市场通过搜索AIXcoder安装体验,欢迎大家在评论中交流反馈,后续将为大家带来这几款工具的对比评测。

标签: #aix 修改时间