CodeGeeX AI编程助手提升.NET开发工作效率

news2024/11/28 23:42:46

前言

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

什么是CodeGeeX?

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

CodeGeeX2 模型

更强大的多语言代码生成模型:GitHub - THUDM/CodeGeeX2: CodeGeeX2: A More Powerful Multilingual Code Generation Model

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插件安装地址

CodeGeeX: AI Code AutoComplete, Chat, Auto Comment - Visual Studio Marketplace

参考文章

滑动验证页面

如何用CodeGeeX替代GitHub Copilot? - 知乎

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目推荐、招聘资讯和解决问题的平台。
  • 在这个社区中,开发者们可以分享自己的技术文章、项目经验、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值和成长机会。

欢迎加入DotNetGuide技术社区微信交流群👪

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1425292.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode:49. 字母异位词分组

49. 字母异位词分组 1)题目2)代码3)结果 1)题目 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 示例 1: 输入: strs…

color - 让你的输出带点颜色

color color 是一个可以让你输出带颜色文本的库。 安装 go get github.com/fatih/color示例 输出到控制台 // 这会直接输出到控制台 color.Cyan("Prints text in cyan.")// 每个调用末尾会自动加上换行 color.Blue("Prints %s in blue.", "text&…

任务导向的扩散模型压缩;万物皆可成像;根据舞蹈生成音乐;LLM长上下文对齐;LLM KV缓存量化;通过运动场辅助扩散模型图像编辑

本文首发于公众号:机器感知 任务导向的扩散模型压缩;万物皆可成像;根据舞蹈生成音乐;LLM长上下文对齐;LLM KV缓存量化;通过运动场辅助扩散模型图像编辑 Task-Oriented Diffusion Model Compression As re…

Vmware 无法开启虚拟化解决方法

最近遇到了Vmware无法开启虚拟化的问题,已经解决,记录一下解决经过。 我遇到的情况是BIOS已经开启虚拟化,HV服务也停用了,但是Vmware仍然提示模块“VPMC”启动失败。网上的解决方案千篇一律,基本都是排查BIOS、停用Windows的虚拟化功能、停用HV主机服务、Vmware配置中关闭…

python pandas模块详解

python pandas模块详解 一:pandas简介二:pandas安装以及库的导入2.1 Pandas安装2.2 pandas模块的导入 三:pandas数据结构3.1 pandas Series结构3.1.1创建Series对象1)ndarray(数组)创建Series对象2&#xf…

静态时序分析:时序弧以及其时序敏感(单调性)

相关阅读 静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm1001.2014.3001.5482 在静态时序分析中,不管是组合逻辑单元(如与门、或门、与非门等)还是时序逻辑(D触发器等)在时序建模时…

Elasticsearch性能调优

背景 项目上是用 ES 做数据库,存储的告警数据,量级在千万级别左右。测试在压测之后,系统频繁出现告警记录查询报错,系统不可用。基于此排查分析项目上 Elasticsearch 的使用是否合理。 版本及硬件 环境:10.xx.xxx.x…

sectigo ip ssl证书有哪些

Sectigo是移交成立时间较久的CA认证机构,几十年来在全球颁发了各种各样的数字证书,例如,单域名SSL证书、多域名SSL证书、通配符SSL证书等域名SSL证书。Sectigo旗下也有一些不常见的数字证书,例如,代码签名证书、IP证书…

浅谈WPF之UniformGrid和ItemsControl

在日常开发中,有些布局非常具有规律性,比如相同的列宽,行高,均匀的排列等,为了简化开发,WPF提供了UniformGrid布局和ItemsControl容器,本文以一个简单的小例子,简述,如何…

ApacheNginx配置ssl证书

一、Apache配置ssl Linux版本:CentOS Linux release 7.9.2009 (Core) Apache版本:Apache/2.4.6 (CentOS) 1、安装Apache(使用默认yum源) [root10-35-1-25 ~]# yum -y install httpd2、查Apache版本&启动Apache [root10-35-…

vue使用富文本

1、安装 cnpm install vue-quill-editor2、在main.js中引入 // 富文本 import VueQuillEditor from vue-quill-editor // require styles 引入样式 import quill/dist/quill.core.css import quill/dist/quill.snow.css import quill/dist/quill.bubble.css Vue.use(VueQuill…

使用orangepi玩linux

最近看了这个大佬的文章,写了使用远程来挂载linux的方案,觉得还是很有意思的,瞬间感觉linux这块都还是相通的,就跑了一下,果然,牛逼! 香橙派全志H3烧录Uboot,远程加载zImage&#xf…

Autonomous_Exploration_Development_Environment的local_planner学习笔记

1.程序下载网址:https://github.com/HongbiaoZ/autonomous_exploration_development_environment 2.相关参考资料: https://blog.csdn.net/lizjiwei/article/details/124437157 Matlab用采样的离散点做前向模拟三次样条生成路径点-CSDN博客 CMU团队开…

门的方向为何如此重要?探秘产品经理面试题的设计哲学

大家好,我是小米!最近我在面试产品经理的时候遇到了一个有趣而又颇具深意的问题:厕所的门应该朝内还是朝外开?这个问题看似简单,却蕴含了很多关于产品设计的考量。今天,我们一起来深入剖析这个问题,看看我们在设计产品时应该如何权衡各种因素。 背景介绍 在日常生活中…

PyTorch复现网络模型VGG

VGG 原论文地址:https://arxiv.org/abs/1409.1556VGG是Visual Geometry Group(视觉几何组)的缩写,它是一个在计算机视觉领域中非常有影响力的研究团队,主要隶属于牛津大学的工程系和科学系。VGG以其对卷积神经网络&am…

前一百成绩分析

一、实施目的 基于考情,针对目标生制定学习成果“一生一案”方案,帮助目标生消灭短板学科,达到各科均衡发展。 二、实施方法 1、对年级总分科目总分排名前80的学生,制定“一生一案” 2、对标总分名次,设置单科合理区间…

肯尼斯·里科《C和指针》第11章 动态内存分配(1)动态内存分配的基础知识

数组的元素存储于内存中连续的位置上。当一个数组被声明时,它所需要的内存在编译时就被分配。但是,也可以使用动态内存分配在运行时为它分配内存。在本章中,我们将研究这两种技巧的区别,看看什么时候应该使用动态内存分配以及怎样…

【数学】【记忆化搜索 】【动态规划】964. 表示数字的最少运算符

作者推荐 【动态规划】【字符串】【表达式】2019. 解出数学表达式的学生分数 本文涉及知识点 动态规划汇总 数学 记忆化搜索 LeetCoce964表示数字的最少运算符 给定一个正整数 x,我们将会写出一个形如 x (op1) x (op2) x (op3) x … 的表达式,其中每…

【C++】类和对象万字详解

目录 一、类与对象 1、类是什么 二、类和对象的基础知识 2.1 定义类:成员变量和成员函数 2.2 创建对象:实例化一个类的对象。 2.3对象的生命周期:构造函数和析构函数。 a. 构造函数 b. 析构函数 c.小结: 三、成员变量和…

vue3使用is动态切换组件报错Vue received a Component which was made a reactive object.

vue3使用is动态切换组件,activeComponent用ref定义报错 Vue received a Component which was made a reactive object. This can lead to unnecessary performance overhead, and should be avoided by marking the component with markRaw or using shallowRef ins…