前言

2022年6月,随着GitHub Copliot正式面向大众发布。让许多开发者都感受到了AI辅助编程工具的魅力所在,Copilot实现了帮助开发者大大提高了编程开发效率,让程序员朝九晚五成为可能。Copilot近乎是完美的,但还是由于种种原因(比如需要魔法上网、需要花钱购买使用等)使得不少人开发者想要找到一款免费且功能强大的AI编程辅助工具,因此CodeGeeX来了。虽然说CodeGeeX没有Copilot那么强大、那么智能,但是在一定的程度上还是能够帮助我们提高不少工作开发效率的。假如您有更好的、免费的、好用的AI编程助手推荐,欢迎在评论区留言。

什么是CodeGeeX?

CodeGeeX是一款基于大模型的全能的智能编程助手。它可以实现代码的生成与补全、自动添加注释、代码翻译以及智能问答等功能,能够帮助开发者显著提高工作效率。CodeGeeX支持主流的编程语言,并适配多种主流IDE。

CodeGeeX2 模型

更强大的多语言代码生成模型:https://github.com/THUDM/CodeGeeX2

CodeGeeX2 是多语言代码生成模型 CodeGeeX (KDD’23) 的第二代模型。不同于一代 CodeGeeX(完全在国产华为昇腾芯片平台训练) ,CodeGeeX2 是基于 ChatGLM2 架构加入代码预训练实现,得益于 ChatGLM2 的更优性能,CodeGeeX2 在多项指标上取得性能提升(+107% > CodeGeeX;仅60亿参数即超过150亿参数的 StarCoder-15B 近10%)。

支持的语言

支持的主流IDE

到这里有的同学就会说了我是开发.NET的不支持Visual Studio我要怎么体验呢?告诉你一个好消息,现在使用Visual Studio Code开发.NET也是很香的哦,具体Visual Studio Code开发.NET环境配置可以参考我的这篇文章:Visual Studio Code安装C#开发工具包并编写ASP.NET Core Web应用

CodeGeeX的优势

  1. CodeGeeX不需要魔法上网即可顺畅使用。
  2. CodeGeeX插件对个人用户完全免费。
  3. CodeGeeX支持主流的编程语言,并适配多种主流IDE。
  4. CodeGeeX对中文的支持非常友好,也可以给代码逐行添加代码注释且有详细的中文官方文档。

CodeGeeX VS Code插件安装

CodeGeeX 同样拥有 VS Code 插件,不同于 GitHub Copilot 他是免费的。GitHub Copilot VS Code 插件在技术上是免费的,但是只针对认证的学生,老师和相关开源项目的维护者。对于其他用户则是以月租10美元或年租100美元的形式订阅付费。CodeGeeX 插件不需要任何上述条件,你所需的仅仅是进入插件商店进行下载安装即可使用。

1、VS Code安装插件

2、首次需要注册账号

注册地址:https://codegeex.cn/auth#signup

3、登录账号

首先创建一个.NET控制台应用HelloCodeGeeX

1、打开VS Code,点击VS Code菜单栏里的终端=>新建终端

2、创建一个.NET 控制台应用程序: HelloCodeGeeX 命令如下:

dotnet new console -n HelloCodeGeeX

具体作用如下:

  • dotnet new console:这部分表示使用 dotnet 命令行工具的 new 命令来创建一个新的项目,类型是控制台应用程序。
  • -n HelloCodeGeeX:这部分表示给新创建的项目指定一个名称,此处名称为 HelloCodeGeeX

通过执行该命令,将会在当前路径下创建一个名为 HelloCodeGeeX 的新控制台应用程序项目。这个项目将包含一个初始的主程序文件,可以用于编写和执行简单的命令行程序逻辑。

3、打开控制台程序编译查看效果

运行命令:

dotnet run

代码生成与自动补全

1、隐匿模式

该模式的工作方式与代码生成工具相同,它查看你以前的代码或代码注释,并为你生成下一行代码。这里最好的部分是它不会干扰你的代码,仅在你上次键入以来已有3秒钟的情况下建议代码,而建议的代码则以占位符的形式,仅在你按 Tab 键时才会实现。

通过注释自动定义用户状态枚举

定义一个C#用户类

实现一个C# MD5字符串编码的公共方法

2、交互模式

CodeGeeX 插件的交互式模式也具有代码生成的元素,载入该模式仅需要按下 Ctrl+Enter激活,你的VS Code 会分成两个版面。一个版面编写正常代码,另一个版面显示建议的代码片段,你可以使用右边建议的代码如何就会自动添加到左边实际文件中。

代码注释(再也不担心看不懂源码了)

在开发过程中,经常会遇到一些难以理解的代码并且也没有注释,CodeGeeX提供了一个自动添加注释的功能(Add Comment),让你能够快速熟悉并且理解代码。

完全没有注释:

自动添加代码注释:

代码转换

将JS代码转换成C#:

智能问答(免费GPT使用)

最后总结

以下这段文案来源于CodeGeeX智能问答!

CodeGeeX 是一款功能强大的AI编程助手,它可以根据用户的输入和要求提供适当的答复和支持,从而提高程序员的效率。对于程序员来说,CodeGeeX 可以帮助他们解决各种编程问题,例如代码的复制粘贴、自动添加注释、代码翻译以及智能问答等。通过使用 CodeGeeX,程序员可以减少花费在查找解决方案和编写代码上的时间,从而提高工作效率。然而,对于个人用户来说,CodeGeeX 的使用可能会受到一些限制,例如注册账号、登录限制等。因此,在使用 CodeGeeX 之前,请确保了解其使用规则和限制。总之,CodeGeeX 是一款功能强大的AI编程助手,它可以帮助程序员提高编程效率。对于个人用户来说,在使用 CodeGeeX 之前,请确保了解其使用规则和限制。

相关地址

CodeGeeX官网地址

https://codegeex.cn/zh-CN?article=0001

VS Code插件安装地址

https://marketplace.visualstudio.com/items?itemName=aminer.codegeex

参考文章

https://segmentfault.com/a/1190000043116653

https://zhuanlan.zhihu.com/p/606183277

加入DotNetGuide技术交流群

1、提供.NET开发者分享自己优质文章的群组和获取更多全面的C#/.NET/.NET Core学习资料、视频、文章、书籍,社区组织,工具和常见面试题资源,帮助大家更好地了解和使用 .NET技术。
2、在这个群里,开发者们可以分享自己的项目经验、遇到的问题以及解决方案,倾听他人的意见和建议,共同成长与进步。
3、可以结识更多志同道合的开发者,甚至可能与其他开发者合作完成有趣的项目。通过这个群组,我们希望能够搭建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值。

欢迎加入DotNetGuide技术交流群

.NET开发工作效率提升利器 - CodeGeeX AI编程助手的更多相关文章

  1. 干货:用好这13款VSCode插件,工作效率提升10倍

    文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 大家好我是lemon, 马上进入我们今天的主题吧. 又 ...

  2. 最香远程开发解决方案!手把手教你配置VS Code远程开发工具,工作效率提升N倍

    文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 今天和大家分享远程开发工具,分享一下我平常是如何用 V ...

  3. Python GUI开发,效率提升10倍的方法!

    1 框架简介 这个框架的名字叫 PySimpleGUI,它完全基于Python语言,能非常方便地开发GUI界面,代码量相比现有框架减少50%到90%.并且,它提供了极为友好的Python风格的接口,大 ...

  4. 工作效率提升之Eclipse篇(1):干掉烦人的xml文件的validation

    每次启动maven项目,都会有一堆烦人的xml文件的validation,一旦网络较慢,项目重新启动的时候,这些多余的验证纯属浪费时间. Eclipse上取消validation的方法: 1.菜单[W ...

  5. 开发谷歌浏览器插件会上瘾,搞了一个JSONViewer,一个页面格式化多条JSON,提升工作效率

    最近写了一个谷歌浏览器插件(Chrome extension),拿出来分享下,希望能提升大家的工作效率. 一.背景 先说痛点:日常开发中,经常需要不停的把接口输出的JSON拷贝到在线JSON格式化页面 ...

  6. 动手使用ABAP Channel开发一些小工具,提升日常工作效率

    今天的故事要从ABAP小游戏说起. 中国的ABAP从业者们手头或多或少都搜集了一些ABAP小游戏,比如下面这些. 消灭星星: 扫雷: 来自我的朋友刘梦,公众号"SAP干货铺"里的俄 ...

  7. atitit.提升软件开发的效率and 质量的那些强大概念and方法总结

    atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码  2 1.3. 学 ...

  8. atitit.提升研发效率的利器---重型框架与类库的差别与设计原则

    atitit.提升研发效率的利器---重型框架与类库的差别与设计原则 1. 框架的意义---设计的复用 1 1.1. 重型框架就是it界的重武器. 1 2. 框架 VS. 库 可视化图形化 1 2.1 ...

  9. [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率

    [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率 原文: Making every developer more productive with Visual Stu ...

  10. 推荐几个Mac插件帮你提升工作效率

    下面这篇文章是小编看到的很好的文章,分享给大家,小编前几天也整理了很多mac专题文章.更多专题,可关注[磨人的小妖精],查看我的文章,也可上[风云社区 SCOEE],查找和下载相关软件资源. (一)综 ...

随机推荐

  1. HTTP请求的几种方式

    1.HTTP请求简介[1] HTTP(Hypertest Transfer Protocol)是用于传输像HTML这样的超文本文件的应用层协议.它被设计用于WEB浏览器端和WEB服务端的交互,但也有其 ...

  2. 【建议收藏】Log4j配置详解

    大家在日常开发中必然会使用到日志组件,Log4j是Java方向上比较常用的日志组件,今天给大家分享下Log4j支持的配置项,强烈建议收藏,以便配置时查看 #展示log4j各种配置,私有部分见文件中注释 ...

  3. List转为Map

    List转为Map 1.业务需求,需要将List<SysSetting>转为Map SysSetting是一个对象 @Data @TableName("t_sys_setting ...

  4. vue前端预览pdf并加水印、ofd文件,控制打印、下载、另存,vue-pdf的使用方法以及在开发中所踩过的坑合集

    根据公司的实际项目需求,要求实现对pdf和ofd文件的预览,并且需要限制用户是否可以下载.打印.另存pdf.ofd文件,如果该用户可以打印.下载需要控制每个用户的下载次数以及可打印的次数.正常的预览p ...

  5. 离线安装mysql报错解决方法:/usr/sbin/mysqld: error while loading shared libraries: libaio.so.1: cannot open sha --九五小庞

    Linux:centos 7.6 64位 mysql:5.6使用离线方式安装:rpm -ivh --nodeps mysql* ,执行 systemctl start mysqld.service发现 ...

  6. IOS开发-UIImageView基本用法

    UIImageView是iOS中用于显示图像(图片.gif.svg等)的视图. 它的主要功能有: 1. 显示图片UIImageView可以通过image属性显示一张UIImage类型的图片.可以是本地 ...

  7. 数据挖掘18大算法实现以及其他相关经典DM算法:决策分类,聚类,链接挖掘,关联挖掘,模式挖掘。图算法,搜索算法等

    数据挖掘18大算法实现以及其他相关经典DM算法:决策分类,聚类,链接挖掘,关联挖掘,模式挖掘.图算法,搜索算法等 算法码源见文末 1.算法目录 18大DM算法 包名 目录名 算法名 Associati ...

  8. Python与MySQL如何保持长连接

    Python与MySQL如何保持长连接 介绍 在python后端开发中,时常会与数据库交互,重复的断开.连接 会大大消耗数据库资源. 所以一般都是定义全局变量,来弥补这个缺陷. 但是 Python 与 ...

  9. 【FAQ】关于CP反馈的联运应用的常见结算问题小结

    问题一:为什么在"我的账户">>"收益"里面的金额和支付报表中的金额对不上 ? 关于联运类应用付费产品在华为平台上结算问题,您可以详细参考一下&qu ...

  10. Raw数据相关概念

    什么是"RAW"? 维基百科的字面解释是:原始图像文件包含从数码相机.扫描器或电影胶片扫描仪的图像传感器所处理数据.RAW文件包含创建一个可视图像所必须的相机传感器数据信息. 通俗 ...