草庐IT

CodeGeeX能打过Copilot吗?

了了青山 2023-08-23 原文

写在前面

CodeGeeX是一个类似于Github Copilot的、拥有130亿参数的多编程语言代码生成的预训练模型,是由清华大学、智谱AI等机构共同研发的。

当前CodeGeex是开源免费使用的CodeGeex开源地址,相对于Copilot的使用方式没有那么陡峭,CodeGeex使用文档还是比较简单的。

CodeGeeX无需VPN,可以直接在vscode插件平台安装使用,上手简单。

CodeGeex的4种使用模式

CodeGeex包含4种使用模式,分别是:

  • 隐匿模式
  • 交互模式
  • 翻译模式
  • 提示模式

隐匿模式

CodeGeex处于激活状态时,停止输入内容后,就会从光标处开始生成内容,生成待选内容后会以灰色显示,按​​Tab键​​即可插入生成结果。(这一点和Copilot一致)。

交互模式

按Ctrl+回车键激活交互模式,可以在右侧窗口显示生成的x个候选片段(x数量可以在设置的Candidate Num中修改,最多可以生成3个候选项,数目越多生成越慢),点击候选片段上的use code即可插入使用。(这一点是有点困惑,在实际使用中只生成了一个候选项)。

翻译模式

Windows系统是Ctrl+Alt+T,Mac系统是Ctrl+Option+T激活翻译模式,CodeGeeX会把该代码翻译成匹配您当前编辑器语言的代码。点击翻译结果上方的use code插入。还可以在设置中选择您希望插入的时候如何处理被翻译的代码,您可以选择注释它们或者覆盖它们。(这个翻译模式相比较Copilot是不友好的,没有结合上下文生成匹配语言的代码,反而要进行二次交互)。

当选择的内容是纯注释,点击Ctrl+Option+T可以选择待翻译的目标语言,一次性生成代码,个人体验比隐匿模式更直接:

提示模式

官方demo:

可以对需要处理的代码进行选择,按Alt/Option + t触发提示模式,此时会出现预定义模板列表(默认的是只有Java和Python语言模板):

可以根据自己的需求在配置文件中的Prompt Templates,进行模板内容添加和编辑:

模板内容:

实际使用:

这个模式还需要探索,没有达到预期。

额外功能(个人认为可以归纳为编程语言转译)

可以点击在侧边栏的CodeGeex插件,在input框输入待处理代码和选择语言,在output框选择目标语言点击Translate按钮进行转译:

CodeGeex使用过程发现的问题

1、上下文结合能力不强,编码能力较弱

CodeGeex对上下文的识别能力不是很好,当我要它在ts文件中写一个贪心算法解决股票买卖问题时,它给我的是c++语言的头部引入:

我们看到官方给出的demo,也是如此,至少我没想明白。

在重新让它生成代码时,它会给我补充注释,但是补充的是英文,没有结合上下文内容:

翻译模式下,这个引入的内容不知道从哪儿来的:

明确要求使用ts语言生成代码片段,还是直接候选的是c++头部文件:

2、生成的内容累赘,不够简洁,还标注了模型训练代码来源(属实没想到)

当要它写出一个快排算法示例时,万万没想到还注释了模型训练的代码片段来源:

3、代码生成较慢

简单的代码不能够一次性给出,还要一小句一小句给出:

4、对JS/TS的支持不友好

在使用隐匿模式时,在py文件可以根据上下文生成代码,在ts或js文件却生成的是c#代码。

写在最后

在实际开发中,CodeGeeX的使用体验是远差于Copilot,但是CodeGeeX是清华实验室的开源免费项目,在算力支撑和数据量而言是远低于OpenAI。基于CodeGeeX项目的基础上,可以进行私有部署,对算法模型进行改进优化,还是需要支持蹒跚前行的国产开源模型的。

总之,还有许多需要做的。

有关CodeGeeX能打过Copilot吗?的更多相关文章

  1. CodeGeeX论文发表:揭秘AI辅助编程工具背后的大模型 - 2

    近日,CodeGeeX模型迭代v1.5版本上线,用户反馈模型效果和使用效率较之前有大幅提升。恰逢CodeGeeX团队在arxiv上发布了论文,详细介绍了CodeGeeXAI编程辅助工具背后的代码生成大模型的架构、训练过程及推理加速等工作。今天我们对这篇论文的核心信息进行解读,让更多的开发者了解CodeGeeX背后大模型的演进历程,以便更好的使用CodeGeeX作为开发者新一代的生产力工具。基于Transformer的技术展现代码生成潜力机器是否能够根据人类意图的描述,例如“编写一个阶乘函数”,自动生成解决该需求的可执行程序?这就是自动程序编写的问题,自20世纪60年代计算机科学的早期就开始了各

  2. CodeGeeX插件使用教程 - 2

    “编写代码,免不了写大量简单、重复的代码,以及阅读别人的代码。”CodeGeeX插件,或许能让您从这类枯燥的任务中解脱出来。目前,CodeGeeX插件支持四种使用模式:自动模式、交互模式、翻译模式和提示模式。1、自动模式在该模式中,如您不想继续重复代码的编写,可以借用插件敲下tab键,它会帮您自动生成代码。具体操作步骤:CodeGeeX将在您停止输入时,从光标处开始生成(右下角CodeGeeX图标转圈表示正在生成)。生成完毕之后会以灰色显示,如果您对结果满意,按“Tab”即可插入生成结果。在生成多个候选的情况下,可以使用“Alt/Option+[“或”]”在几个候选间进行切换。用户也可以在设置

  3. copilot使用教程 - 2

    Copilot简介Copilot是⼀种基于⼈⼯智能的代码⾃动补全⼯具,由OpenAI和GitHub共同开发。它使⽤⼈⼯智能算法来分析代码库,并根据上下⽂和编程语⾔的语法提⽰,⾃动⽣成⾼质量的代码。⽬前,Copilot只能与GitHub上的代码库集成,因此需要⼀个GitHub帐⼾来使⽤它。Copilot的安装和集成要使⽤Copilot,你需要安装GitHub的VSCode插件,并将其与你的GitHub帐⼾连接。这可以通过以下步骤完成:下载并安装VisualStudioCode(VSCode):https://code.visualstudio.com/(如已安装vscode跳过这步)在VSCod

  4. 地表最强AI 辅助编程工具——GitHub Copilot安装教程 - 2

    GitHubCopilot文章目录GitHubCopilot一、GitHubCopilot介绍二、GitHubCopilot通行证注册流程1.打开GitHubCopilot[网址](https://copilot.github.com/)2.点击SIGNUP进行通行证注册3.登录你的github账户4.等待通行证发放到账户信息三、使用vscode安装GitHubCopilot1.打开vscode的插件管理2.在vscode登录你的github账号3.大功告成!总结一、GitHubCopilot介绍GitHubCopilot是微软与OpenAI共同推出了一款AI编程工具,GitHubCopilo

  5. 从GPT-4、文心一言再到Copilot,AIGC卷出新赛道? - 2

    业内人都知道,上一周是戏剧性的,每一天,都是颠覆各个行业,不断AI化的新闻。OpenAI发布GPT-4、百度发布文心一言、微软发布Microsoft365Copilot三重buff叠加,打工人的命运可以说是跌宕起伏,命途多舛了。今年开年,AIGC这一概念可谓是“出尽了风头”,而且对一些行业的改变是立竿见影的,在国内,AIGC的长期价值已逐渐被挖掘,正在重构人们的办公、娱乐乃至生活方式。在信息1.0时代,你的需求可以被查询到,这是搜索机制;信息2.0时代,你的需求可以被迎合,这是推荐机制;如今AI能力进一步提升,当AI能力进一步提升,你的需求可以被短时间内订制且满足,就是命令机制。如果说,信息时

  6. vscode copilot快捷键、配置方法 - 2

    参考文章1:GitHubCopilot参考文章2:在VisualStudioCode中开始使用GitHubCopilot参考文章3:在VisualStudioCode中配置GitHubCopilot快捷键接受内联代码建议Tab(editor.action.inlineSuggest.commit)忽略内联代码建议Esc(editor.action.inlineSuggest.hide)显示下一个建议Alt+](editor.action.inlineSuggest.showNext)显示上一个建议Alt+[(editor.action.inlineSuggest.showPrevious)触发

  7. ChatGPT+GitHub Copilot:从繁杂的工作中解放自己 - 2

    开一个新的系列,ChatGPT+GitHubCopilot辅助编程,以下给出一些常用的提示和用法,欢迎大家在评论区补充更多的用法。祝大家都能用好ChatGPT+GitHubCopilot这两把趁手的兵器,大大提高效率~最近忙于实习,没太多时间更新,后续会更新更多内容,尽请关注:)ChatGPT常用提示开始之前为了让ChatGPT更加准确的回答有关代码方面的问题,注意两点咒语心法。1)保证提问的问题,准确,具体2)不妨试试,在提示词后面,紧跟一句“请一步步思考”,“请一步步考虑”,“请务必认真回答”,“如果你认为无法安全修改代码,请回答否”之类的词,可以使得其回答的准确率大大提高。有时候在提示语

  8. 谷歌Bard加入AI编程功能 向微软GitHub Copilot和亚马逊CodeWhisperer看齐 - 2

    谷歌在其生成式AI产品中增加了代码生成和调试功能,并命名为BardAI,宣称其能够帮助开发人员采用20种编程语言编写和调试代码。这意味着,谷歌这一产品将与微软的GitHubCopilot和亚马逊的CodeWhisperer展开竞争。谷歌的研究部门GoogleResearch产品经理PaigeBailey在一篇博客文章中写道,“从现在开始,Bard可以帮助用户完成编程和软件开发,包括代码生成、调试和代码解释。”Bailey指出,Bard的编程和软件开发辅助能力涵盖20多种编程语言,包括C++、Go、Java、JavaScript、Python和Typescript。生成式AI现在也能够帮助开发人

  9. 用嘴写代码?继ChatGPT和NewBing之后,微软又开始整活了,Github Copilot X! - 2

    用嘴写代码?继ChatGPT和NewBing之后,微软又开始整活了,GithubCopilotX!AI盛行的时代来临了,在这段时间,除了爆火的GPT3.5后,OpenAI发布了GPT4版本,同时微软也在Bing上开始加入了AI,也就是NewBing。除了这些,国内大厂也开始AI风暴了,发版的言论不计其数,成果目前简单最成功的是百度推出的文心一言和文心一格,分别对应语言模型和图像模型。Bing也是偷偷发布了一个图像模型,用于AI绘画,目前只支持英文描述。在此之前,OpenAI已经存在了达芬奇模型,并且接口公开。另外,最近设计、图形、视频处理工具界的老大Adobe也发表了在Adobe全家桶加入AI

  10. GitHub Copilot 预览版测试申请方法 以及如何在JetBrains系Ide中使用Copilot - 2

    前段时间,GitHub和OpenAI联合为程序员们送上了编程神器——GitHubCopilot。但是,Copilot目前不提供公开使用,需要注册账号通过审核。本文将简单介绍一下该插件的相关介绍以及如何申请测试资格。JointheGitHubCopilotwaitlistAccessislimitedtoasmallgroupoftestersduringthetechnicalpreviewofGitHubCopilot Signuptodayforyourchancetotryitoutandhelpusimprove.1.Copilot申请方法1.1使用浏览器打开如下链接:GitHubCo

随机推荐