前言

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. Java如何生成随机数?要不要了解一下!

    前言 我们在学习 Java 基础时就知道可以生成随机数,可以为我们枯燥的学习增加那么一丢丢的乐趣.本文就来介绍 Java 随机数. 一.Random类介绍 在 Java 中使用 Random 工具类来 ...

  2. 【Ubuntu22.04】配置静态IP地址和FTP服务

    ## 一.配置静态IP 1. 使用命令`ip a`查看当前网卡名称,Ubuntu22.04默认网卡为ens33: ![](https://img2023.cnblogs.com/blog/308121 ...

  3. 在线免费ChatGPT,官方api

    作为一款强大的语言模型,ChatGPT在自然语言处理领域享有较高声誉.现在,您可以在我们的在线平台上免费体验ChatGPT的功能了! 经过不断地优化和改进,我们的在线聊天机器人已经能够针对各种话题展示 ...

  4. 【神经网络】基于GAN的生成对抗网络

    目录 [神经网络]基于GAN的生成对抗网络 随着深度学习的快速发展,神经网络逐渐成为人工智能领域的热点话题.神经网络是一种模仿人脑计算方式的算法,其通过大量数据和复杂的计算模型,能够实现复杂的任务和预 ...

  5. FPGA加速技术:在数据中心和云计算中的应用

    目录 1. 引言 2. 技术原理及概念 3. 实现步骤与流程 3.1 准备工作:环境配置与依赖安装 3.2 核心模块实现 3.3 集成与测试 4. 应用示例与代码实现讲解 4.1. 应用场景介绍 4. ...

  6. EDP转LVDS屏转接板方案芯片CS5211替代CH7511B电路设计

    CS5211替代CH7511B电路设计: CS5211用于设计DP转LVDS转换器,DP转LVDS控制板,DP转LVDS转接板等产品设计,其性能和参数可以替代与兼容PS8622,PS8625,CH75 ...

  7. bitfield

    bitfield 作用 位域修改 溢出控制 原理 通过对redis字符串二进制形式进行操作,通过改变其值的作用 更具体 将一个Redis字符串看作是一个由二进制位组成的数组. 并能对变长位宽和任意没有 ...

  8. 《最新出炉》系列入门篇-Python+Playwright自动化测试-9-页面(page)

    1.简介 通过前边的讲解和学习,细心认真地小伙伴或者童鞋们可能发现在Playwright中,没有Element这个概念,只有Page的概念,Page不仅仅指的是某个页面,例如页面间的跳转等,还包含了所 ...

  9. quarkus实战之五:细说maven插件

    quarkus的maven插件非常重要,管理和构建工程时都离不开,本篇就来一起了解和掌握它 欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com ...

  10. 2021-7-9 VUE的number\trim\lazy

    Vue的v-model.number顾名思义,即是将绑定的参数中的字符串强制转换为int类型 而v-model.trim是将参数的前后空格删除 v-model.lazy:v-model的绑定是实时响应 ...