CodeGeeX
综合介绍
CodeGeeX 是一款由清华大学和智谱AI共同研发的智能编程助手,它基于一个拥有130亿参数的大型多语言代码生成模型。 这个工具的核心是帮助开发者提升编程效率。通过在集成开发环境(IDE)中安装插件,开发者可以获得多种AI辅助功能。CodeGeeX能够根据自然语言注释自动生成完整的代码块,也能在开发者编写代码时提供实时补全建议。 除了代码生成,它还支持将代码从一种编程语言翻译成另一种,为代码自动添加注释,甚至能通过智能问答的方式解答开发中遇到的技术问题。 该工具支持超过20种主流编程语言,并兼容VS Code、IntelliJ IDEA系列等多种常用IDE。 对于个人用户,它是免费的,同时也提供可私有化部署的企业版方案。
功能列表
- 代码生成与补全:根据自然语言描述(例如注释)生成功能代码,或根据当前书写的代码预测并补全后续内容。
- 代码翻译:支持多种编程语言之间的语义级互译,例如将一段Python代码快速转换为Go语言实现。
- 自动添加注释:能够为已有的代码片段自动生成行级注释,提升代码的可读性。
- 智能问答:允许开发者在IDE环境中直接向AI提问技术问题,无需跳转到浏览器搜索,从而保持专注。
- 跨IDE和多语言支持:作为插件在多种主流IDE(如VS Code、IntelliJ IDEA、PyCharm、Vim等)上运行,并支持Python、Java、C++、JavaScript、Go等超过20种编程语言。
- 开源模型:CodeGeeX的模型权重和代码是开源的,研究人员和开发者可以基于此进行二次开发和研究。
- 企业级解决方案:提供支持私有化部署的企业版,包含代码仓库级的分析能力和管理平台,满足企业的安全和定制化需求。
使用帮助
CodeGeeX作为一款强大的AI编程助手,可以无缝集成到开发者日常使用的编程环境中。它的安装和使用流程非常简单直接。
安装流程(以VS Code为例)
- 打开VS Code:启动你的Visual Studio Code编辑器。
- 进入扩展市场:在左侧活动栏中,点击方形图标的“扩展”(Extensions)按钮,或者使用快捷键
Ctrl+Shift+X
。 - 搜索CodeGeeX:在顶部的搜索框中输入
CodeGeeX
。 - 安装插件:在搜索结果中找到“CodeGeeX”,点击“安装”(Install)按钮。安装过程很快即可完成。
- 登录账户:安装完成后,VS Code的右下角会弹出提示,引导你登录。你也可以点击状态栏的CodeGeeX图标进行登录。登录后即可开始使用全部功能。
对于JetBrains系列IDE(如IntelliJ IDEA, PyCharm, WebStorm等),安装流程类似,在其插件市场中搜索CodeGeeX
并安装即可。
核心功能操作指南
1. 隐式模式:代码自动补全
这是CodeGeeX最基础也是最高频使用的功能。当你开始写代码时,插件会自动分析上下文,并在光标后以灰色文本显示补全建议。
- 如何触发:正常编写代码即可。当CodeGeeX分析到可能的代码续写时,会自动显示建议。
- 如何接受:如果建议符合你的预期,按下
Tab
键即可接受并插入建议代码。 - 如何拒绝:如果你不想使用建议,直接忽略并继续输入你自己的代码即可,建议会自动消失。
2. 交互式模式:更强大的代码生成和操作
交互式模式提供了更丰富的功能,你可以通过快捷键或右键菜单来调用。
- ** Ask CodeGeeX(提问模式)**这是功能入口,你可以用自然语言提出各种需求。
- 如何触发:选中一段代码或将光标置于空白处,使用快捷键
Alt+C
(Windows/Linux)或Option+C
(macOS),或者右键菜单选择 “Ask CodeGeeX”。 - 操作流程:
- 触发后,IDE右侧会打开一个交互窗口。
- 你可以直接在输入框中用中文或英文提问,例如:“写一个Python函数,用来计算斐波那契数列”,然后回车。
- CodeGeeX会快速生成对应的代码。你可以点击代码块右上角的“插入”或“复制”按钮,将其应用到你的文件中。
- 如何触发:选中一段代码或将光标置于空白处,使用快捷键
- 代码生成 (Generate Code)根据注释生成代码,是其核心亮点功能。
- 操作流程:
- 在代码编辑器中,写下一段描述清晰的注释,说明你想要实现的功能。例如,在Python文件中写下:
# a function to download a file from a url
。 - 将光标放在注释下方,等待片刻,CodeGeeX会自动生成函数代码的建议。
- 如果未自动出现,可以手动按
Alt+C
调出交互窗口,它会自动将你的注释作为问题,并生成代码。
- 在代码编辑器中,写下一段描述清晰的注释,说明你想要实现的功能。例如,在Python文件中写下:
- 操作流程:
- 代码翻译 (Translate Code)当你需要将旧项目代码迁移到新语言,或理解其他语言编写的逻辑时,此功能非常有用。
- 操作流程:
- 在编辑器中选中你想要翻译的代码块。
- 按下
Alt+C
调出交互窗口,CodeGeeX会自动加载选中的代码。 - 在预设的快捷指令中点击“代码翻译”,或直接在输入框中输入“翻译成Java”(或其他目标语言)。
- AI将输出翻译后的代码。
- 操作流程:
- 添加注释 (Add Comment) 和代码解释 (Explain Code)
- 操作流程:
- 选中一段需要处理的代码。
- 按下
Alt+C
调出交互窗口。 - 点击预设的“添加注释”或“解释代码”指令。
- “添加注释”会为代码生成精炼的注释行;“解释代码”则会用自然语言详细说明这段代码的逻辑和作用。
- 操作流程:
- 修复Bug (Fix Bug)
- 操作流程:
- 选中你认为有问题的代码。
- 按下
Alt+C
,在交互窗口中点击“代码修正”或直接提问“修复这段代码的bug”。 - CodeGeeX会分析代码并给出修正后的版本。
- 操作流程:
应用场景
- 日常编码加速对于程序员的日常开发工作,CodeGeeX可以大幅减少编写样板代码(boilerplate code)的时间。例如,在编写文件读写、网络请求、数据结构定义等常见任务时,只需写一行注释,AI即可生成完整的代码框架,让开发者更专注于核心业务逻辑。
- 学习新的编程语言或框架当一个开发者需要快速上手一门不熟悉的编程语言时,CodeGeeX可以成为一个很好的学习工具。通过代码翻译功能,可以将自己熟悉的语言逻辑快速转换为目标语言的实现,通过对比学习语法和库的使用。 同时,代码解释功能也能帮助理解陌生框架的示例代码。
- 项目重构与代码迁移在维护或升级老旧项目时,常常需要将代码从一个语言迁移到另一个(例如将Python 2代码升级到Python 3,或将Java项目部分模块用Go重写)。CodeGeeX的代码翻译功能可以完成大部分语法和标准库的自动转换,极大减轻了重构的工作量。
- 代码文档与可读性维护对于缺乏注释的历史代码,手动添加注释是一项繁琐的工作。利用“自动添加注释”功能,可以为整个文件或选定代码块快速生成符合上下文的注释,提升代码的可维护性和团队协作效率。
QA
- CodeGeeX是免费的吗?是的,CodeGeeX为个人用户提供免费服务。 它同时也为企业提供需要付费的私有化部署方案,以满足企业对数据安全和定制化的需求。
- CodeGeeX支持哪些编程语言和开发工具?CodeGeeX支持超过20种主流编程语言,包括但不限于Python、Java、C++、C、JavaScript、Go等。 它以插件形式支持多种IDE,如Visual Studio Code、JetBrains全家桶(IntelliJ IDEA, PyCharm, WebStorm等)、Vim和HBuilderX等。
- 使用CodeGeeX需要联网吗?是的,个人免费版需要连接到互联网才能使用,因为它需要向云端的大模型发送请求以获取代码建议。企业私有化部署版本可以在本地网络环境中运行,无需连接公共互联网。
- CodeGeeX和GitHub Copilot有什么区别?两者都是顶级的AI编程助手,但在一些方面有差异。CodeGeeX是由中国团队(清华大学和智谱AI)开发的,对中文的理解和支持可能更有优势。 它不仅开源了模型,还强调除了代码补全之外的多种交互功能,如翻译、解释和智能问答,并将这些功能整合在一个交互窗口中。