自动写代码的AI工具,已经支持 VsCode 插件安装使用,它的功能并不是「代码补全」,而是「代码生成」。
之前有个比较火的 GitHub Copilot,但是这是商业产品,并且没有开源,现在又被告了。
GitHub Copilot 面临集体起诉,被索赔 647 亿,这事想必大家略有耳闻。
总结一句就是,用着开源的代码,公然违反开源协议,关键是还靠着别人开源的代码盈利。被锤也是意料之中。
那有没有,开源好用的 AI 写代码工具?
CodeGeeX,来了!
CodeGeeX
CodeGeeX 由清华大学知识工程实验室(KEG)开源。并且工具已经上线 VSCode。
想学习如何训练 AI 自动写代码的小伙伴,可以参考下这个项目。
它的功能并不是「代码补全」,而是「代码生成」。
它能够根据你的描述,或者上下文自动生成一段代码,目前支持 Python、C++、Java、JavaScript、Go 等多种主流编程语言,而且在代码生成准确度方面表现较好。
除了生成代码,还支持代码翻译,就是可以将 Python 代码,自动翻译成 C++ 等其他语言。
目前,它主要支持4种使用方式,下面就以VS Code中的使用为例来逐个介绍一下。
隐匿模式
简单来说就是,你输入一段描述之后,然后停止输入,CodeGeeX会根据上下文,从光标停止处开始生成代码。
如果有多个建议,可以通过「Alt/Option+」来切换不同建议,通过Tab可以插入建议内容。
举个例子,假如输入“write a bubble sort function”,它就会给出一个冒泡排序函数的建议:
交互模式
顾名思义,就是在隐匿模式的基础上加了个交互式界面。
点击 Ctrl+Enter,会打开在右侧打开一个交互界面,这样 CodeGeeX给出的建议就会显示在右侧交互界面。
我们可以点击「Use Code」选择对应的代码片段。
翻译模式
我们可以任意复制一段其他语言编写的代码,然后选中代码,点击「Ctrl+Alt+T」可以激活翻译模式,选择目标语言,就可以把这段代码翻译到对应的语言。
提示模式
在提示模式下,可以输入一些额外的提示信息来触发一些有趣的功能,例如,代码解释、概括、特定风格等,它利用的是一种少样本生成能力。
项目地址:https://github.com/THUDM/CodeGeeX