Visual Studio 智能代码插件:CodeGeeX

前言

在软件开发领域,高效的编程助手一直是提升开发者效率和质量的关键。

随着人工智能技术的不断发展,智能编程助手逐渐成为开发者们不可或缺的工具。其中,CodeGeeX作为一款专为Visual Studio设计的免费智能编程助手,凭借其强大的功能和便捷的使用体验,赢得了广大开发者的青睐。

CodeGeeX通过深度学习技术,能够理解开发者的编程意图,提供智能的代码补全、错误检查、代码重构等功能,帮助开发者快速编写出高质量、易维护的代码。同时,它还能够与Visual Studio无缝集成,无需额外的配置和设置,即可轻松使用。

在本文中,将详细介绍CodeGeeX的特点和优势,以及如何使用它来提升编程效率和质量。无论你是经验丰富的开发者,还是刚刚入门的初学者,CodeGeeX都将成为编程路上的得力助手。

CodeGeeX 是什么?

CodeGeeX是一款基于大模型的智能编程助手,它可以实现代码的生成与补全、自动为代码添加注释、自动解释代码、自动编写单元测试、实现代码审查Code Review、自动修复代码fixbug、自动生成commit message完成git提交,以及在不同编程语言的代码间实现互译、针对技术和代码问题的智能问答等丰富的功能。

帮助开发者显著提高工作效率,CodeGeeX支持100+种编程语言,适配多种主流IDE平台,包括Visual Studio Code,JetBrains IDEs,Visual Studio,HBuilderX,DeepIn-IDE等。

CodeGeeX支持的常见语言/框架

序号 分类 支持语言
1 前端 VUE、Javascript、TypeScript、HTML、CSS、React
2 后端 C、C++、C#、Java、Python、Go、PHP、Rust、SQL
3 APP端 ObjectC、Kotlin、Swift、Uni-App
4 其他 Peal、Ruby.GraphQL、Cobol

注意:支持语言完整列表 https://github.com/THUDM/CodeGeeX2/blob/main/evaluation/utils.py#L14

CodeGeeX的核心能力

功能 描述
单行/多行代码续写 根据上下文代码内容,推理出光标所在的当前行、当前段代码的内容。在实际开发场景中最常见也是提效最明显的场景。
根据注释生成代码 根据自然语言的注释,自动生成所需要的代码,可以生成完整的方法级函数。
AskCodeGeeX智能问答 通过侧边栏的智能问答交互,可以将开发中遇到的技术问题,直接向CodeGeeX提问获得快速解答。
自动添加注释 给代码自动添加行级注释,可以根据需要选择英文或者中文。
代码翻译 多种编程语言之间进行互译。理解代码语义并在保留原始代码语义和功能的基础上,翻译成另一种编程语言的等效代码。
生成单元测试 根据函数、方法的内容和运行逻辑,生成相关的单元测试代码。支持Java、PythonGo、C/C++、JavaScript等,
NL2SQL 基于给定的SQL表结构和自然语言描述的查询需求,生成SQL查询语句。
函数重构 快速进行函数重构,梳理代码逻辑,降低出错风险。
生成调试日志 通过理解代码运行逻辑,为代码自动生成调试信息,帮助用户快速定位问题。
生成ReadMe文档 根据代码内容快速生成符合ReadMe格式的文档信息,
Code Interpreter 工具箱接入了Code Interpreter的能力,可以实现批量处理文件,分析多种格式的数据并进行可视化,绘制数学函数,分析代码文件等。

自动模式

当CodeGeeX插件处于激活状态下,在编辑器中输入停止时,会从当前光标处开始进行自动的代码生成与补全。此时,右下角CodeGeeX图标转圈表示正在生成。生成的代码以灰色显示,按Tab键即可将生成结果在当前位置插入。如果不需要使用生成的代码,可按Esc键取消,也可以忽略生成的代码并继续输入。

交互模式

在需要获取代码生成结果时,按Ctrl+Enter激活交互模式。CodeGeeX插件将生成若干段候选代码,并显示在右侧窗口中。若希望使用其中某段候选代码,点击候选代码上方的"use code",即可将代码插入编辑器中的光标位置候选代码数量可以在插件设置中调整。

插件会根据当前光标位置自动判断生成一行或生成多行。CodeGeeX作为辅助工具,并不保证每次生成的是一段完整的代码。如果生成的代码没有完成一项功能,只需要让插件再次调用模型,继续向后生成,直到完成即可。

插件对于给定的输入,多次生成的结果可能不同。这是因为通过大模型进行生成,结果带有随机性。这种随机性可以从宏观统计上提高生成的准确率。如果希望降低随机性,可以在插件设置中调整部分参数设置,但不建议一般用户调整这些设置。

Visual Studio 插件安装

CodeGeeX适配了Visual Studio 2022之后所有的最高版本。

插件安装方式

1.在Visual Studio 2022的扩展->管理扩展中搜索CodeGeeX。

2、在Visual Studio窗口顶部的"扩展"菜单中,点击下拉菜单中选择"管理扩展"。或者直接用快捷键组合"Alt+Shift+X"访问扩展管理器。

3、搜索CodeGeeX,然后单击"下载"或"安装"按钮,具体如下图所示:

4、重新启动Visual Studio,就完成了安装,可以在Visual Studio 的扩展看到CodeGeeX目录,具体如下图所示:

使用方式

CodeGeex 在Visual Studio 中的使用方式,保持了它在Visual Studio Code 和 JetBrains IDEs 全家桶的使用方式,您可以无缝的拓展到不同IDE平台来使用。

1、登录

启动后进行登录,有三种登录方式,可以点击左上角的 登录 链接,也可以点CodeGeeX菜单中的"登录",也可以打开聊天框打开侧边栏进行登录,具体如下图所示:

这里通过CodeGeeX的侧边栏登录,可以选择验证码登录,账号登录,第三方账号登录。通过第三方登录,然后绑定手机号,就可以使用CodeGeeX的全部功能,开启倍速编程的体验吧!

2、设置

可以通过点击侧边栏顶部的更多按钮,下拉菜单中直接进入设置,修改更符合开发习惯的设置。

每一个选项点击后,下方会有相应的描述。

3、侧边栏

侧边栏可以通过拖拽的方式变宽,或是同其他visual窗口一样进行停靠、锚定,或放在更习惯的左侧或右侧位置,确保在Visual Studio 上编程的丝滑体验。

切换模型 Change Model

在边栏的智能问答输入框中,使用"/"调出预设命令:

核心功能

自动生成代码

在编码过程中,CodeGeeX可以根据上下文代码的内容,推理出接下来可能的代码输入。如果认为推理出的代码内容合适,使用快捷键Tab对生成的代码进行采纳,被采纳的代码即会高亮显示并留存在光标后;

如果认为内容不合适,任意键可以取消推荐的内容,继续手动编码。可以使用Tab键接收建议,也可以通过开始编写要使用的代码来接收建议。

根据注释生成代码 将注释转换为代码

CodeGeeX可以针对一段自然语言的注释内容,生成相关的代码片段 。

特别是对于能够使用一句话描述清楚的、常见的算法片段、函数段、方法段等。

自动为代码添加注释

CodeGeeX可以轻松为代码添加中(英)文注释。在编辑器中选中代码,点击鼠标右键。在右键菜单中点击CodeGeeX ,然后点击下一级菜单生成注释即可。

生成单元测试

在编辑器中选中代码,点击鼠标右键,菜单中点击CodeGeeX,然后点击下一级菜单生成单测。也可以通过侧边栏的对话框,输入"/test",生成其对应的单元测试代码。

智能问答

CodeGeeX 的智能问答支持模型选择,你可以选择Pro版模型或者Lite版的模型,点击CodeGeeX目录,打开 CodeGeeX 侧边栏(聊天窗),点击侧边栏上方的Ask CodeGeeX标签, 即可进入问答模式。

代码解释

代码解释是开发者非常喜爱的功能之一,CodeGeeX设置了多个入口,在编程过程中可以更加便利的使用。

总结

CodeGeeX 是一款功能强大的AI编程助手,可以根据用户的输入和要求提供适当的答复和支持,从而提高工作的效率。

快来开始免费使用 CodeGeeX!

具体可访问官方地址:https://codegeex.cn/。

相关推荐
jinhuazhe20133 小时前
如何解决vscode powershell乱码
ide·vscode·编辑器
这是我586 小时前
C++打小怪游戏
c++·其他·游戏·visual studio·小怪·大型·怪物
paintstar6 小时前
vscode 快速切换cangjie版本
ide·vscode·编辑器·仓颉·cangjie
科协软件20186 小时前
vscode+latex快捷键
ide·vscode·编辑器
cnnews7 小时前
在vscode中的ESP-IDF插件中使用Arduino框架作为组件
ide·vscode·编辑器
乐闻x8 小时前
VSCode 插件开发实战(三):插件配置项自定义设置
ide·vscode·编辑器
qq_3975623113 小时前
android studio更改应用图片,和应用名字。
android·ide·android studio
峥嵘life13 小时前
Android Studio版本升级那些事
android·ide·android studio
乐闻x14 小时前
VSCode 插件开发实战(四):使用 React 实现自定义页面
ide·vscode·react.js
创意锦囊14 小时前
随时随地编码,高效算法学习工具—E时代IDE
ide·学习·算法