Foreword

一直听说Copilot已经很成熟,甚至有人没了都不习惯了,所以试一试Copilot

Copilot

https://github.com/settings/copilot

Copilot 是由 Github 提供的AI编码辅助工具,它可以在编码过程中提供基于 AI 学习的编码建议。在很多情况下,只需要有注释或者函数名称,Copilot就可以实例完整的代码。

目前 Copilot 需要支付10美元/月或者100美元/年。首次使用可以试用2个月,按页面提示点击按钮以开通使用权限,当获得开通权限后,就可以在 Github 上使用 Copilot。

目前Copilot可以在VS、VScode、Neovim、JetBrain全家桶上作为插件使用,其他IDE也得要看有没有人写,没有的话就没办法了

购买

首先拿到2个月的免费试用,这必须要绑定信用卡或者paypal才能下一步

VScode+Copilot

我本身不怎么用VScode,不过为了体验Copilot,只能通过这种方式了

安装VScode插件

第一次试用的时候会提示需要登录Github,并且授权

当代码补全消失以后,会出现下面的灰色内容

但是如果代码补全不消失,他会一直不出现

所以可能需要关闭代码补全以后,再用,设置中搜索intelli然后关闭30个建议提示

对应的Copilot基本没啥设置选项

可能是我测试的是esp-idf的环境,所以Copilot对他学习的比较少?实际写代码提示完全弱于IntelliSense,提示本身就慢几秒,至于演示的那种一下提示很多内容,那更是基本没有,能提醒一个函数名就算不错了。

当我使用Hal作为开头,假装初始化串口,总算获得了超量的代码,只是可惜HAl这都是库已经做好的东西,我为啥还要重写一遍他呢?

或者反过来说,当我需要串口初始化的时候,假装我要写Hal,后面再改成别的名字,仅仅是为了这么个串口初始化,完全不值当

对于嵌入式而言,Copilot不是很合适,本身环境就不太兼容,提示也不够好

Pycharm+Copilot

Pycharm这里也是一样,先安装插件,安装完以后需要重启一下

Pycharm这里授权有点麻烦,需要验证设备,输入验证码

授权以后,这里就是这样了

pycharm的选项稍微多了一点

似乎比之前的c或者c++,提示多了一些,至少快了很多,而且明显在我还没输入明显内容的时候,就进行了预测提示

继续测试发现,似乎只对某些关键词会有反应,比如unite test,某些常用的名称会预测提示更多的内容。

比如这里的open_file,会直接提示一大串内容出来,甚至有可能他还是对的。

发现这个以后,我重新去VScode下测试,试用相同关键词,可以看到直接给出了一大串c文件的打开,甚至他print还是用esp的输出,我感动哭了,虽然是没啥用的代码。

同理,我使用比较常用的嵌入式相关的函数名,发现完全没有提示,顶多提示我两括号…

回到Pycharm,基本上常用的关键词,都能联想预测一堆内容出来。

但是涉及到某些小众的领域或者平台,就不太行了。

VS+Copilot

这个有点懒的测了,实际上如果是C#开发,C#本身的代码预测,我感觉已经非常不错了,很多情况下可以直接预测一个完整的句子,甚至变量都会自动帮你根据上下文推断替换,而Copilot则多数情况都只会复读…而不会自动增加变量的序列。

所以如果是C#开发,那么自带的代码补全就已经非常好用了。

Summary

总结python、java之类的涉及实际业务比较多的,重复度比较高的代码,用Copilot的预测补全,可能确实不错,很多基础代码可以直接写完。但是像是小众一些的,比如嵌入式、插件等等比较小众的领域,Copilot完全不如普通的补全。

也可以让Copilot和自带的智能补全同时工作,从而形成互补,至于他的定价,每月10刀,那估计是赚不了我的钱了

Quote

https://tutorials.tinkink.net/zh-hans/vscode/copilot-usage-and-shortcut.html

https://blog.csdn.net/jiangjunyuan168/article/details/126960128

https://blog.csdn.net/m0_46495862/article/details/128691032