CodeGeeX是一款基于大模型的智能編程助手,它可以實(shí)現(xiàn)代碼的生成與補(bǔ)全、自動(dòng)為代碼添加注釋、自動(dòng)解釋代碼、 自動(dòng)編寫(xiě)單元測(cè)試、實(shí)現(xiàn)代碼審查Code Review、自動(dòng)修復(fù)代碼fixbug、自動(dòng)生成commit message完成git提交,以及在不同編程語(yǔ)言的代碼間實(shí)現(xiàn)互譯、針對(duì)技術(shù)和代碼問(wèn)題的智能問(wèn)答等豐富的功能。幫助開(kāi)發(fā)者顯著提高工作效率,CodeGeeX支持300+種編程語(yǔ)言,適配多種主流IDE平臺(tái),包括 Visual Studio Code,JetBrains IDEs,Visual Studio,HBuilderX, DeepIn-IDE等。
分類(lèi) | 支持的語(yǔ)言 | |
---|---|---|
1 | 前端 | VUE、JavaScript、TypeScript、HTML、CSS、React |
2 | 后端 | C、C++、Java、Python、 Go、PHP、Rust、SQL |
3 | APP端 | ObjectC、Kotlin、Swift、Uni-App、 |
4 | 其他 | Peal、Ruby、GraphQL、Cobol |
*支持語(yǔ)言的完整列表:https://github.com/THUDM/CodeGeeX2/blob/main/evaluation/utils.py#L14
功能 | 描述 | |
---|---|---|
1 | 單行/多行代碼續(xù)寫(xiě) | 根據(jù)上下文代碼內(nèi)容,推理出光標(biāo)所在的當(dāng)前行、當(dāng)前段代碼的內(nèi)容。在實(shí)際開(kāi)發(fā)場(chǎng)景中最常見(jiàn)也是提效最明顯的場(chǎng)景。 |
2 | 根據(jù)注釋生成代碼 | 根據(jù)自然語(yǔ)言的注釋?zhuān)詣?dòng)生成所需要的代碼,可以生成完整的方法級(jí)函數(shù)。 |
3 | AskCodeGeeX智能問(wèn)答 | 通過(guò)側(cè)邊欄的智能問(wèn)答交互,可以將開(kāi)發(fā)中遇到的技術(shù)問(wèn)題,直接向CodeGeeX提問(wèn),獲得快速解答。 |
4 | 自動(dòng)添加注釋 | 給代碼自動(dòng)添加行級(jí)注釋?zhuān)梢愿鶕?jù)需要選擇英文或者中文。 |
5 | 代碼翻譯 | 多種編程語(yǔ)言之間進(jìn)行互譯。理解代碼語(yǔ)義并在保留原始代碼語(yǔ)義和功能的基礎(chǔ)上,翻譯成另一種編程語(yǔ)言的等效代碼。 |
6 | 生成單元測(cè)試 | 根據(jù)函數(shù)、方法的內(nèi)容和運(yùn)行邏輯,生成相關(guān)的單元測(cè)試代碼。支持Java 、Python 、Go 、C/C++、 JavaScript等。 |
7 | NL2SQL | 基于給定的SQL表結(jié)構(gòu)和自然語(yǔ)言描述的查詢需求,生成SQL查詢語(yǔ)句。 |
8 | 函數(shù)重構(gòu) | 快速進(jìn)行函數(shù)重構(gòu),梳理代碼邏輯,降低出錯(cuò)風(fēng)險(xiǎn)。 |
9 | 生成調(diào)試日志 | 通過(guò)理解代碼運(yùn)行邏輯,為代碼自動(dòng)生成調(diào)試信息,幫助用戶快速定位問(wèn)題。 |
10 | 生成ReadMe文檔 | 根據(jù)代碼內(nèi)容快速生成符合ReadMe格式的文檔信息。 |
11 | Code Interpreter | 工具箱接入了Code Interpreter的能力,可以實(shí)現(xiàn)批量處理文件,分析多種格式的數(shù)據(jù)并進(jìn)行可視化,繪制數(shù)學(xué)函數(shù),分析代碼文件等。 |
12 | 解釋代碼 | 為選中的代碼段或整個(gè)代碼文件生成詳細(xì)的注釋和解釋。這些解釋包括代碼的用途、每行代碼的作用、邏輯流程以及可能的改進(jìn)建議。 |
13 | 修復(fù)代碼錯(cuò)誤 | 通過(guò)智能分析代碼中的錯(cuò)誤,提供具體的修復(fù)建議和詳細(xì)的錯(cuò)誤解釋。用戶可以在編輯器中直接觸發(fā)代碼修復(fù)功能,避免手動(dòng)查找錯(cuò)誤原因和翻閱文檔。 |
14 | 交互式編程(InLine Chat) | 支持在編寫(xiě)代碼的過(guò)程中,通過(guò)嵌入式對(duì)話與 CodeGeeX 互動(dòng),獲取即時(shí)的編程幫助。 |
15 | 代碼審查 | 支持對(duì)代碼變更進(jìn)行詳細(xì)的檢查,直觀地查看代碼修改部分,并獲得智能編程助手給出的優(yōu)化建議。這有助于在代碼提交前發(fā)現(xiàn)潛在問(wèn)題,提升代碼質(zhì)量。 |
16 | 自動(dòng)生成Commit Message | 通過(guò)分析代碼的修改內(nèi)容,生成簡(jiǎn)潔明了且符合規(guī)范的提交信息。用戶可以自定義提交信息的生成風(fēng)格,確保提交歷史的清晰和一致。 |
17 | 接入本地模型 | 本地模式可以將本地 API 服務(wù)接入智能問(wèn)答和代碼補(bǔ)全中,以實(shí)現(xiàn)安全、隱私、高效的編碼體驗(yàn)。您可以將任何與 OpenAI 兼容的 RESTful API 接入到 CodeGeeX 的插件中。 |
進(jìn)入CodeGeeX插件界面,首先可以點(diǎn)擊功能向?qū)?,查看CodeGeeX豐富的各項(xiàng)功能和使用演示。
登錄后的界面中,功能向?qū)?huì)在推薦問(wèn)題的上方出現(xiàn)。
在使用插件時(shí),也可以隨時(shí)打開(kāi)功能向?qū)?,查看各?xiàng)功能的用法。在其下方內(nèi)置了更加豐富的推薦問(wèn)題,新用戶可以通過(guò)點(diǎn)擊,快速體驗(yàn)CodeGeeX的智能問(wèn)答能力,解決90%以上的代碼技術(shù)相關(guān)問(wèn)題。
當(dāng)CodeGeeX插件處于激活狀態(tài)下,在編輯器中停止輸入時(shí),會(huì)從當(dāng)前光標(biāo)處開(kāi)始進(jìn)行自動(dòng)的代碼生成與補(bǔ)全。此時(shí), 右下角 CodeGeeX 圖標(biāo)轉(zhuǎn)圈表示正在 生成。生成的代碼以灰色顯示, 按 Tab 鍵即可將生成結(jié)果在當(dāng)前位置插入。如果不需要使用生成的代碼,可按 Esc 鍵取消,也可以忽略生成的代碼并繼續(xù)輸入。
插件對(duì)于給定的輸入,多次生成的結(jié)果可能不同。這是因?yàn)橥ㄟ^(guò)大模型進(jìn)行生成 ,結(jié)果帶有隨機(jī)性。這種隨機(jī)性可以從宏觀統(tǒng)計(jì)上提高生成的準(zhǔn)確率。如果希望降低隨機(jī)性,可以在插件設(shè)置中調(diào)整部分參數(shù)設(shè)置,但不建議一般用戶調(diào)整這些設(shè)置。
更多建議: