一、介绍
CodeGeeX,一款由清华大学知识工程实验室研发的基于大型模型的全能智能编程辅助工具,能够实现包括代码生成与补全、自动注释添加、代码翻译以及智能问答等多种功能。经过对包含前后端工程师、算法工程师、学生和研究者在内的上百名用户进行问卷调查后发现,有高达83.4%的受访者表示,使用CodeGeeX插件能够有效提升他们的编程效率。
CodeGeeX支持Python、Java、C++、JavaScript、Go等数十种常见编程语言,支持VSCode及
IntelliJ IDEA、PyCharm、GoLand等JetBrains IDE。
二、安装
在VSCode插件下载页面,搜索CodeGeex插件并安装
三、功能
一)代码补全
有两种模式可以进行代码补全,分别是自动模式和交互模式
1、自动模式
当用户停止编写代码时,插件会收集编辑器中的代码、注释、当前语言等,发送给CodeGeek,触发代码生成,VSCode底部CodeGeeX图标转圈表示正在生成,生成完毕之后会以灰色显示,按TAb键即可插入在当前光标处插入生成结果。
代码生成中:
代码生成完成:
1)采纳候选代码
按下Tab键可以采纳AI生成的候选代码,会继续自动生成后面的代码,如果采纳,就继续按Tab键,否则自己写代码。
最终完整的代码需要按多次Tab键生成,CodeGeex是一步步顺着代码的思路生成,不是和ChatGPT一次生成全部代码,这个和使用场景有关,这个我感觉在VSCode中写代码,这种方式体验挺好的。
2)切换候选代码
按Alt/Option-+[或]在候选者之间进行切换。
VSCode左下角的配置"按钮打开设置面板,可修改候选数量Candidate Num,默认是1,候选数过多会减慢生成速度
3)重新生成候选代码
如果你不满意当前的建议,可以按A1t/option+\获得新的候选代码。
2、交互模式
按ctrl+Enter进入交互模式,可以在右侧窗口中选择生成结果,并点击"使用代码",代码就会插入到鼠标处。
二)代码翻译
选中一段代码,然后点击Ctrl+Alt+T进入翻译模式,根据提示选择要翻译的目标语言,CodeGeeX将自动识别当前编辑器中代码的语言,并进行翻译,点击翻译结果上方的insert即可将翻译结果插入文件。
备注:您可以在设置中选择插入时如何处理被翻译的代码一一注释或者覆盖。
三)代码注释
选择您想要解释的代码,右键选择CodeGeex:Add Comment
(可设置快捷键)即可在当前代码中直接生成注释。
四)代码扩展
通过智能问答机器人可以实现其它扩展功能,左边菜单找到CodeGeex插件,点击"login"按钮登录即可与机器人聊天。
1、对话聊天
直接在聊天框中输入问题回车即可,可以是类似ChatGPT的任何问题,比如知识科普、代码生成、代码分析等。
2、代码生成
直接在聊天框中问想要生成的代码。
3、解释代码
选中代码,然后聊天框中输入/,选择/explain回车,可以通过这个功能提升阅读源码的效率。
4、代码注释
选中代码,然后聊天框中输入/,选择/comment回车,这里和上面的代码注释类似,不过这里是通过在聊天框实现的,并且这里生成的注释可以选择是英文还是中文。
5、修复代码
选中代码,然后聊天框中输入/,选择/fixbug回车
我故意代码写错,让它修复下代码,提供了对比视图,左边是修改后的代码,右边是原始代码,可惜修复得不对,这方面还有待优化。
四、优缺点
优点:
1)插件可免费使用
2)国内可直接访问
3)模型代码开源
4)支持多种语言
5)支持多种编辑器
6)支持多种操作系统
7)功能齐全,包含代码补全、代码生成、代码翻译、代码注释、单元测试、代码解释等常见工作
场景
缺点:
1)复杂代码支持不佳