本文主要是AI工具Copilot解读文章,如果有什么需要改进的地方还请大佬指出⛺️
作者简介:大家好,我是青衿
☁️博客首页:CSDN主页放风讲故事
每日一句:努力一点,优秀一点
Copilot (https://copilot.github.com/) 是由 Github 提供的AI编码辅助工具,它可以在编码过程中提供基于 AI 学习的编码建议。在很多情况下,只需要有注释或者函数名称,Copilot就可以实例完整的代码。
目前 Copilot 还没有全量开放,需要申请开通权限。访问它的官方网站https://copilot.github.com/,点击“Sign up“按钮即可申请开通。当获得开通权限后,就可以在 Github 上使用 Copilot。
要求:Idea版本应不低于2021.2,否则无法搜到Copilot插件
重启idea之后便可使用
安装后重启,点击tools->Copilot登录到gitHub之后来获取使用资格
Copilot也能自动识别到上文中出现过的workbook变量及其getSheetAt方法,没有发生语法错误的问题。
虽然在上一个例子中补全效果较好,没有出现语法错误的问题,但是Copilot依然会在很多情况下生成存在语法错误的代码片段。如下图所示,StringUtils类是在本地工程中创建的,类下面只有一个readTestFile方法,然而Copilot却生成了print方法,因为Copilot是根据数亿的开源代码学习到的,不能及时的去学习本地工程的代码信息,所以本质上跟TabNine一样是会存在语法错误的问题,只是由于模型更强大,所以错误的概率更小,但是一旦涉及到本地工程的代码,错误的概率就会非常高。
Copilot 也提供了一些快捷键,可以很方便地使用。
行动 | 捷径 |
---|---|
接受内联建议 | Tab |
拒绝内联建议 | Esc |
显示下一个内联建议 | Option (⌥) or Alt+] |
显示上一个内联建议 | Option (⌥) or Alt+[ |
触发内联建议 | Option (⌥)+\ |
打开 GitHub Copilot(其他建议在单独的窗格中) | Option (⌥) or Alt+Return |
行动 | 捷径 |
---|---|
接受内联建议 | Tab |
拒绝内联建议 | Esc |
显示下一个内联建议 | Alt+] |
显示上一个内联建议 | Alt+[ |
触发内联建议 | Alt+\ |
打开 GitHub Copilot(其他建议在单独的窗格中) | Alt+Enter |
行动 | 捷径 |
---|---|
接受内联建议 | Tab |
拒绝内联建议 | Esc |
显示下一个内联建议 | Alt+] |
显示上一个内联建议 | Alt+[ |
触发内联建议 | Alt+\ |
打开 GitHub Copilot(其他建议在单独的窗格中) | Alt+Enter |
行动 | 捷径 | 命令名称 |
---|---|---|
接受内联建议 | Tab | 编辑器.action.inlineSuggest.commit |
拒绝内联建议 | Esc | editor.action.inlineSuggest.hide |
显示下一个内联建议 | Option (⌥)+] | editor.action.inlineSuggest.showNext |
显示上一个内联建议 | Option (⌥)+[ | editor.action.inlineSuggest.showPrevious |
触发内联建议 | Option (⌥)+\ | 编辑器.action.inlineSuggest.trigger |
打开 GitHub Copilot(其他建议在单独的窗格中) | Ctrl+Return | github.copilot.generate |
打开/关闭 GitHub Copilot | 没有默认快捷方式 | github.copilot.toggleCopilot |
行动 | 捷径 | 命令名称 |
---|---|---|
接受内联建议 | Tab | 编辑器.action.inlineSuggest.commit |
拒绝内联建议 | Esc | editor.action.inlineSuggest.hide |
显示下一个内联建议 | Alt+] | editor.action.inlineSuggest.showNext |
显示上一个内联建议 | Alt+[ | editor.action.inlineSuggest.showPrevious |
触发内联建议 | Alt+\ | 编辑器.action.inlineSuggest.trigger |
打开 GitHub Copilot(其他建议在单独的窗格中) | Ctrl+Enter | github.copilot.generate |
打开/关闭 GitHub Copilot | 没有默认快捷方式 | github.copilot.toggleCopilot |
行动 | 捷径 | 命令名称 |
---|---|---|
接受内联建议 | Tab | 编辑器.action.inlineSuggest.commit |
拒绝内联建议 | Esc | editor.action.inlineSuggest.hide |
显示下一个内联建议 | Alt+] | editor.action.inlineSuggest.showNext |
显示上一个内联建议 | Alt+[ | editor.action.inlineSuggest.showPrevious |
触发内联建议 | Alt+\ | 编辑器.action.inlineSuggest.trigger |
打开 GitHub Copilot(其他建议在单独的窗格中) | Ctrl+Enter | github.copilot.generate |
打开/关闭 GitHub Copilot | 没有默认快捷方式 | github.copilot.toggleCopilot |
TabNine支持的语言及IDE种类最丰富,本地模式内存占用高;
阿里云Cosy的代码搜索功能比较实用,可以与其他工具搭配使用;
Kite仅适合Python开发者,补全不算惊艳;
Codota已经不再维护了,可以不考虑了;
IntelliCode实用性不强,未来或许会与GitHub Copilot整合;
AIXcoder中规中矩,缺少亮点;