一个悄然崛起的国产软件!!AI 又进化了!!

大家好,我是 Jack。

AI 写代码想必很多人都体验过了,使用 AI 编程工具是一个大趋势,越早学会使用 AI 辅助你写代码,你的效率也会越高。

甚至有些公司已经要求员工具备 AI 编程能力。

对于学生党,AI 编程可以帮助我们学习,做课后作业、做毕设;对于上班族,AI 编程可以帮助我们提高工作效率,甚至是翻译别人的“屎山”代码。

之前跟大家聊过各种 AI 工具,其中 CodeGeeX 的呼声很高,这个 Copilot 的国产免费平替版到底有着怎样的魅力?

我体验了一番后发现,它有着三个明显的优势。

  • 对个人开发者完全免费;

  • 不用使用科学上网非常方便;

  • 对中文支持非常友好。

一、CodeGeeX

GitHub Copilot 刚发不出来的时候,很多用户表示编程效率有了较大的提高。随后,就涌现了各种代码生成的大模型,包括:DeepMind 的 AlphaCode、Salesforce 的 CodeGen、Meta 的 InCoder 和 Google 的 PaLM-Coder-540B。

而国内较为出名的就是 CodeGeeX,它是清华和智谱 AI 联合打造的多语言代码生成模型。

可以看到,整体也是 Transformer 的结构,采用 KQV 这种经典的多头注意力机制。

除了词嵌入,也用到了位置嵌入,从而帮助模型学到位置之间的依赖关系和自然语言的时序特性。

CodeGeeX 的预训练预料也很丰富:

  • 开源代码数据集:Pile 和 CodeParrot;

  • 从 GitHub 爬取代码,选择的代码仓库至少有一个 star 且小于10MB,然后过滤文件:
    • 每行超过 100 个字符;

    • 自动生成的;

    • 字母比例小于 40% 的;

    • 大于 100KB 或者小于 1KB 的。

通过这些规则,清洗出高质量数据。

上图展示了训练数据中 23 种编程语言的占比。训练数据会被划分为等长的片段。为了帮助模型区分多种语言,在每个片段前添加了语言相关的标签,例如:language: Python。

如今,CodeGeeX 的训练集应该更大了,毕竟它们也在一直持续优化更新。

接下来,讲解下怎样玩转 CodeGeex。

二、CodeGeex 体验

1、安装

CodeGeex 支持很多主流的 IDE:

我平时习惯用 VSCode,今天就以它为例进行演示。

CodeGeex 官网:

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

VSCode 插件安装地址:

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

打开 VSCode 找到应用扩展。

搜索 codegeex,然后点击安装。

安装后选择登陆,然后就会弹出一个页面,用手机账号注册一下就搞定了。

CodeGeex 有三个模块:Ask、工具箱、代码翻译。

1、Ask 问答模式

我们先来个简单的热身菜,在 Ask 模块中输入:用 python 写一个贪吃蛇游戏。

将生成的代码拷贝过来。

python test.py 运行代码。

代码顺利运行。怎么样,有了 CodeGeeX 写个小需求还不是手到擒来?

不过代码呢,不是写完就完事了,如果你用它来做课后作业,作业是 1 秒就写完了,但也没学到知识啊。

这时候,CodeGeeX 就是你最好的老师。选中不懂的代码,左侧的对话框会自动填充这段代码到提示框中。

找到不懂的代码,然后提问:什么意思?

CodeGeeX 会详细给你解释,这段代码是什么含义,为什么这么写。

除了学习,这个功能对于上班族来说,还可以翻译同事写的“屎山”代码,让 AI 帮你一起缕清头绪。

咱们接着加大一点难度,我想处理一批图片数据,把这些图片中的人脸裁剪出来,保存到 res 目录下。

人脸检测是我们经常会用到的算法,比如裁剪人脸后,训练一个 LoRA 模型之类的。

在 Ask 中输入:使用python和opencv检测图像中的人脸,遍历images目录下的图片,裁剪后的图片请保存res目录下。

将代码拷贝过来,然后再运行。

瞧,这样就大功告成了。

2、翻译代码

CodeGeeX 除了这种问答功能,还能翻译代码。

比如一段 js 代码,这是一段冒泡排序算法,我想将代码翻译成 python 的,点击翻译,这样就搞定了。

3、工具箱

最后,咱们再看看 CodeGeeX 的工具箱,这个是最新上线的功能。

我们在浏览网页的时候,经常会碰到 HEX 格式的颜色数值,我们想用到这个颜色。

但是代码却需要用到 RBG 格式的数值,这个时候就可以用到这个工具了,运行一下,可以能得到对应的 RGB 值了。

我们再考验一下它 Excel 转 JSON 的能力,我们新建一个 Excel 。

我随便输入了一些信息,2 米大个 Jack Cui 和 3 米的花季少女李四。

好,然后选择这个插件,上传这个 excel,回车。

可以看到工具箱还贴心地提供了转换代码。JSON 格式的数据也提供了。

怎么样,CodeGeex 很强大了吧,无论对于学生党还是打工族,CodeGeex 绝对都是开发利器。

三、最后

文章对应的视频版,我也发布到了 B 站,想要看更直观的体验视频,可以去瞧瞧:

https://www.bilibili.com/video/BV1hg4y1Q715

好了,今天就聊这么多吧。

我是 Jack,我们下期见!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【23真题】最简单的211!均分141分!

今天分享的是23年河海大学863的信号与系统试题及解析。 我猜测是由于23年太简单,均分都141分,导致24考研临时新增一门数字信号处理!今年考研的同学赶不上这么简单的专业课啦! 本套试卷难度分析:平均分为102和141分&a…

进制转换 蓝桥oj Alice和Bob的爱恨情仇

题目 翻译 主要思路 举个例子方便理解 以奇数为底去分解一个奇数,分解次数一定是奇数;以奇数为底去分解一个偶数,分解次数一定是偶数 如果一个堆的分解次数是奇数,就在总分解次数上加1;如果一个堆的分解次数是偶数&…

关于 Google AMP 和 SEO

Google 于 2015 年首次推出 AMP,即加速移动页面。借助开源 AMP 框架,网页设计师可以制作快速加载的移动网页。该框架的创建是为了应对使用移动设备访问互联网的个人数量的增加。从那时起,谷歌一直在推动使用 AMP 来增强移动设备上的 SEO 和用…

phpstudy和IDEA 配置php debug

1.安装xdebug 扩展,phpinfo() 查看 2.配置php.ini zend_extensionD:/phpstudy_pro/Extensions/php/php7.4.3nts/ext/php_xdebug.dll xdebug.collect_params1 xdebug.collect_return1 xdebug.auto_traceOn xdebug.trace_output_dirD:/phpstudy_pro/Extensions/php_l…

解决DaemonSet没法调度到master节点的问题

最近在kubernetes部署一个springcloud微服务项目,到了最后一步部署边缘路由:使用nginx-ingress和traefik都可以,必须使用DaemonSet部署,但是发现三个节点,却总共只有两个pod。 换句话说, DaemonSet没法调度…

30㎡新中式大横厅|方寸之间,诉说东方写意生活。福州中宅装饰,福州装修

今天要分享的是一个新中式风格的客厅装修,它的开间是4.5米,进深是6.5米。设计中有许多亮点,让我们一起来看看。 1️⃣ 首先,这个客厅采用了双眼皮无主灯吊顶的设计,让整个空间看起来更加高挑宽敞。吊顶的边缘线条简洁明…

Unity UGUI图片锯齿严重怎么解决

在开发的时候,发现图片锯齿严重,打包到移动端或者在编辑器都这样,如下图 原因: 查了一些资料,找到了原因如下:关于为什么会发生这种情况:看起来你的源资源比你在屏幕上显示的大小大得多。所以当…

Android设计模式--适配器模式

至诚之道,可以前知 一,定义 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 适配器模式在我们的开发中使用率极高,ListView,GridView&am…

unity Toggle,初始时默认不选中,若选中则不可取消选中。不写码实现其效果

实现效果: 初始默认时: 选中时: 零代码实现: 步骤1 步骤2 步骤3

日常生活小技巧 -- Win10 系统安装 Linux 子系统

最新要在win10系统安装linux子系统,看一下教程。 参看:Win10 系统安装 Linux 子系统教程(WSL2 Ubuntu 20.04 Gnome 桌面 ) 1、开启开发人员模式 2、适用于linux的Windows子系统 勾选下图三个选项,重启。 3、安装 Ubuntu 创建…

Leetcode199. 二叉树的右视图

Every day a Leetcode 题目来源:199. 二叉树的右视图 解法1:层序遍历 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 按层序遍历,将每层的…

『接口测试干货』| Newman+Postman接口自动化测试完整过程

『接口测试干货』| NewmanPostman接口自动化测试完整过程 1 Newman简介2 如何安装Newman?2.1 安装NodeJs2.2 安装Newman2.2 解决Newman不是内部命令 3 Newman使用3.1 Newman如何运行集合?3.2 如何查看帮助文档?3.3 环境变量设置3.4 关于全局变…

Win10系统Steam错误代码118的解决教程

在Win10系统中,用户可以打开Steam平台搜索喜欢的游戏,点击开始畅玩。但是,有用户反映自己在Steam平台上操作的时候,收到了错误代码118的提示,导致自己没有办法正常进行操作。接下来小编给大家详细介绍关于解决Win10系统…

MariaDB(基础信息)

文章目录 一、MariaDB1、基本信息2、存储引擎3、兼容性》MySQL、Postgres、MongoDB 和 Oracle4、直接连接其他数据源5、等等等。。。。。。。。。。。。。。。。。。。。。 二、操作和mysql一样参考文章 --------------------机翻内容仅供参考------------------------- 一、…

linux基础5:linux进程1(冯诺依曼体系结构+os管理+进程状态1)

冯诺依曼体系结构os管理 一.冯诺依曼体系结构:1.简单介绍(准备一)2.场景:1.程序的运行:2.登录qq发送消息: 3.为什么需要内存:1.简单的引入:2.计算机存储体系:3.内存的意义…

【广州华锐互动】利用VR体验环保低碳生活能带来哪些教育意义?

随着科技的不断发展,虚拟现实(VR)技术已经逐渐走进了我们的生活。从游戏娱乐到教育培训,VR技术的应用范围越来越广泛。而在这个追求绿色、环保的时代,VR技术也为我们带来了一种全新的环保低碳生活方式。让我们一起走进…

企业微信web登录实现

企业微信登录流程 实现方式 使用js-sdk 使用 wecom/jssdk 初始化企业微信登录组件。 为了满足网站定制化的需求,我们支持将企业微信登录组件内嵌到开发者的网站中。用户使用企业微信登录授权后,登录组件将 auth code 返回给网站。 企业微信登录组件主…

Android开发从0开始(广播)

应用广播 发送标准广播的三步骤 发送标准广播: //发送标准广播 Intent intent new Intent("com.dongnaoedu.chapter09.standard"); sendBroadcast(intent); 定义广播接受者: public class StanderdReceiver extends BroadcastReceiver { public s…

ECharts与DataV:数据可视化的得力助手

文章目录 引言一、ECharts简介优势:劣势: 二、DataV简介优势:劣势: 三、ECharts与DataV的联系四、区别与选择五、如何选择根据需求选择技术栈考虑预算和商业考虑 结论我是将军,我一直都在,。! 引…

关于进制的转化

二进制转十进制: 🔰 方法一:二进制转十进制,用各数的码位与位权的乘积之和,说白了就是用从右到左的每个数去乘以2的幂次方(最右边是0),然后就所有的数相加。 补充:位权是…