Github Copilot

Github Copilot 是一个用于创建、管理、推送、拉取、分支、推送、

很强大,但是收费。

一些替代品

Kite

https://www.kite.com/

TabNine

https://www.tabnine.com/ 可以在开发工具插件市场里搜索tabnine即可安装

阿里云智能编码插件(Alibaba Cloud AI Coding Assistant)

只支持IntelliJ IDEA https://alibaba-cloud-toolkit.github.io/

最后奉上GitHub Copilot的开源版本

https://github.com/CodedotAl/gpt-code-clippy

CodeGeeX

CodeGeeX 是一个具有130亿参数的多编程语言代码生成预训练模型,使用超过二十种编程语言训练得到。

基于CodeGeeX开发的插件可以实现通过描述生成代码、补全代码、代码翻译等一系列功能。

CodeGeeX同样提供可以定制的提示模式(Prompt Mode),构建专属的编程助手。Happy Coding!

VS Code插件市场搜索”codegeex”即可免费使用(需要VS Code版本不低于1.68.0),更多关于CodeGeeX信息请见我们的主页 and GitHub仓库。

基本用法

需要保证VS Code版本 >= 1.68.0。

安装插件并全局激活CodeGeeX,有以下四种使用模式:

隐匿模式: 保持CodeGeeX处于激活状态,当您停止输入时,会从当前光标处开始生成(右下角CodeGeeX图标转圈表示正在生成)。 生成完毕之后会以灰色显示,按Tab即可插入生成结果。

交互模式: 按Ctrl+Enter激活交互模式,CodeGeeX将生成X个候选,并显示在右侧窗口中(X 数量可以在设置的Candidate Num中修改)。 点击候选代码上方的use code即可插入。

翻译模式: 选择代码,然后按下Ctrl+Alt+T激活翻译模式,CodeGeeX会把该代码翻译成匹配您当前编辑器语言的代码。点击翻译结果上方的use code插入。您还可以在设置中选择您希望插入的时候如何处理被翻译的代码,您可以选择注释它们或者覆盖它们。

提示模式(实验功能): 选择需要作为输入的代码,按Alt/Option+t触发提示模式,会显示预定义模板列表,选择其中一个模板,即可将代码插入到模板中进行生成。 这个模式高度自定义,可以在设置中 Prompt Templates修改或添加模板内容,为模型加入额外的提示。

隐私声明

我们高度尊重用户代码的隐私,代码仅用来辅助编程。在您第一次使用时,我们会询问您是否同意将生成的代码用于研究用途,帮助CodeGeeX变得更好(该选项默认关闭)。

使用指南 以下是CodeGeeX几种模式的详细用法:

隐匿模式

在该模式中,CodeGeeX将在您停止输入时,从光标处开始生成(右下角CodeGeeX图标转圈表示正在生成)。

生成完毕之后会以灰色显示,按Tab即可插入生成结果。

在生成多个候选的情况下,可以使用Alt/Option+[ 或 ]在几个候选间进行切换。

如果你对现有建议不满意,可以使用Alt/Option+N去获得新的候选。

可以在设置中改变Candidate Num(增加个数会导致生成速度相对变慢)。

注意:生成总是从当前光标位置开始,如果您在生成结束前移动光标位置,可能会导致一些bugs。

我们正在努力使生成速度变得更快以提升用户体验。

xiaoguo

交互模式

在该模式中,按Ctrl+Enter激活交互模式,CodeGeeX将生成X个候选,并显示在右侧窗口中(X 数量可以在设置的Candidate Num中修改)。

点击候选代码上方的use code即可插入结果到为当前光标位置。

翻译模式

在当前的语言的文本编辑器中输入或者粘贴其他语言的代码,您用鼠标选择这些代码,然后按下Ctrl+Alt+T激活翻译模式,您根据提示选择该代码的语言,然后CodeGeeX会帮您把该代码翻译成匹配您当前编辑器语言的代码。

点击翻译结果上方的use code即可插入。

您还可以在设置中选择您希望插入的时候如何处理被翻译的代码,您可以选择注释它们或者覆盖它们。

提示模式(实验功能)

在该模式中,您可以在输入中添加额外的提示来实现一些有趣的功能,包括并不限于代码解释、概括、以特定风格生成等。

该模式的原理是利用了CodeGeeX强大的少样本生成能力。

当您在输入中提供一些例子时,CodeGeeX会模仿这些例子并实现相应的功能。

比如,您可以自定义模板中提供一段逐行解释代码的例子。选择您想要解释的代码,按Alt/Option+t触发提示模式,选择您写好的模板(如explanation),CodeGeeX就会解释您输入的代码。以下我们会详细介绍如何制作模板。

提示模式

参考资料