Visual Studio 智能代碼插件:CodeGeeX
共 4657字,需瀏覽 10分鐘
·
2024-07-15 01:45
前言
在軟件開發(fā)領(lǐng)域,高效的編程助手一直是提升開發(fā)者效率和質(zhì)量的關(guān)鍵。
隨著人工智能技術(shù)的不斷發(fā)展,智能編程助手逐漸成為開發(fā)者們不可或缺的工具。其中,CodeGeeX作為一款專為Visual Studio設(shè)計的免費智能編程助手,憑借其強大的功能和便捷的使用體驗,贏得了廣大開發(fā)者的青睞。
CodeGeeX通過深度學習技術(shù),能夠理解開發(fā)者的編程意圖,提供智能的代碼補全、錯誤檢查、代碼重構(gòu)等功能,幫助開發(fā)者快速編寫出高質(zhì)量、易維護的代碼。同時,它還能夠與Visual Studio無縫集成,無需額外的配置和設(shè)置,即可輕松使用。
在本文中,將詳細介紹CodeGeeX的特點和優(yōu)勢,以及如何使用它來提升編程效率和質(zhì)量。無論你是經(jīng)驗豐富的開發(fā)者,還是剛剛?cè)腴T的初學者,CodeGeeX都將成為編程路上的得力助手。
CodeGeeX 是什么?
CodeGeeX是一款基于大模型的智能編程助手,它可以實現(xiàn)代碼的生成與補全、自動為代碼添加注釋、自動解釋代碼、自動編寫單元測試、實現(xiàn)代碼審查Code Review、自動修復代碼fixbug、自動生成commit message完成git提交,以及在不同編程語言的代碼間實現(xiàn)互譯、針對技術(shù)和代碼問題的智能問答等豐富的功能。
幫助開發(fā)者顯著提高工作效率,CodeGeeX支持100+種編程語言,適配多種主流IDE平臺,包括Visual Studio Code,JetBrains IDEs,Visual Studio,HBuilderX,DeepIn-IDE等。
CodeGeeX支持的常見語言/框架
| 序號 | 分類 | 支持語言 |
|---|---|---|
| 1 | 前端 | VUE、Javascript、TypeScript、HTML、CSS、React |
| 2 | 后端 | C、C++、C#、Java、Python、Go、PHP、Rust、SQL |
| 3 | APP端 | ObjectC、Kotlin、Swift、Uni-App |
| 4 | 其他 | Peal、Ruby.GraphQL、Cobol |
注意:支持語言完整列表 https://github.com/THUDM/CodeGeeX2/blob/main/evaluation/utils.py#L14
CodeGeeX的核心能力
| 功能 | 描述 |
|---|---|
| 單行/多行代碼續(xù)寫 | 根據(jù)上下文代碼內(nèi)容,推理出光標所在的當前行、當前段代碼的內(nèi)容。在實際開發(fā)場景中最常見也是提效最明顯的場景。 |
| 根據(jù)注釋生成代碼 | 根據(jù)自然語言的注釋,自動生成所需要的代碼,可以生成完整的方法級函數(shù)。 |
| AskCodeGeeX智能問答 | 通過側(cè)邊欄的智能問答交互,可以將開發(fā)中遇到的技術(shù)問題,直接向CodeGeeX提問獲得快速解答。 |
| 自動添加注釋 | 給代碼自動添加行級注釋,可以根據(jù)需要選擇英文或者中文。 |
| 代碼翻譯 | 多種編程語言之間進行互譯。理解代碼語義并在保留原始代碼語義和功能的基礎(chǔ)上,翻譯成另一種編程語言的等效代碼。 |
| 生成單元測試 | 根據(jù)函數(shù)、方法的內(nèi)容和運行邏輯,生成相關(guān)的單元測試代碼。支持Java、PythonGo、C/C++、JavaScript等, |
| NL2SQL | 基于給定的SQL表結(jié)構(gòu)和自然語言描述的查詢需求,生成SQL查詢語句。 |
| 函數(shù)重構(gòu) | 快速進行函數(shù)重構(gòu),梳理代碼邏輯,降低出錯風險。 |
| 生成調(diào)試日志 | 通過理解代碼運行邏輯,為代碼自動生成調(diào)試信息,幫助用戶快速定位問題。 |
| 生成ReadMe文檔 | 根據(jù)代碼內(nèi)容快速生成符合ReadMe格式的文檔信息, |
| Code Interpreter | 工具箱接入了Code Interpreter的能力,可以實現(xiàn)批量處理文件,分析多種格式的數(shù)據(jù)并進行可視化,繪制數(shù)學函數(shù),分析代碼文件等。 |
當CodeGeeX插件處于激活狀態(tài)下,在編輯器中輸入停止時,會從當前光標處開始進行自動的代碼生成與補全。此時,右下角CodeGeeX圖標轉(zhuǎn)圈表示正在生成。生成的代碼以灰色顯示,按Tab鍵即可將生成結(jié)果在當前位置插入。如果不需要使用生成的代碼,可按Esc鍵取消,也可以忽略生成的代碼并繼續(xù)輸入。
交互模式
在需要獲取代碼生成結(jié)果時,按Ctrl+Enter激活交互模式。CodeGeeX插件將生成若干段候選代碼,并顯示在右側(cè)窗口中。若希望使用其中某段候選代碼,點擊候選代碼上方的"use code",即可將代碼插入編輯器中的光標位置候選代碼數(shù)量可以在插件設(shè)置中調(diào)整。
插件會根據(jù)當前光標位置自動判斷生成一行或生成多行。CodeGeeX作為輔助工具,并不保證每次生成的是一段完整的代碼。如果生成的代碼沒有完成一項功能,只需要讓插件再次調(diào)用模型,繼續(xù)向后生成,直到完成即可。
插件對于給定的輸入,多次生成的結(jié)果可能不同。這是因為通過大模型進行生成,結(jié)果帶有隨機性。這種隨機性可以從宏觀統(tǒng)計上提高生成的準確率。如果希望降低隨機性,可以在插件設(shè)置中調(diào)整部分參數(shù)設(shè)置,但不建議一般用戶調(diào)整這些設(shè)置。
Visual Studio 插件安裝
CodeGeeX適配了Visual Studio 2022之后所有的最高版本。
插件安裝方式
1.在Visual Studio 2022的擴展->管理擴展中搜索CodeGeeX。
2、在Visual Studio窗口頂部的"擴展"菜單中,點擊下拉菜單中選擇"管理擴展"。或者直接用快捷鍵組合"Alt+Shift+X“訪問擴展管理器。
3、搜索CodeGeeX,然后單擊"下載"或"安裝"按鈕,具體如下圖所示:
4、重新啟動Visual Studio,就完成了安裝,可以在Visual Studio 的擴展看到CodeGeeX目錄,具體如下圖所示:
使用方式
CodeGeex 在Visual Studio 中的使用方式,保持了它在Visual Studio Code 和 JetBrains IDEs 全家桶的使用方式,您可以無縫的拓展到不同IDE平臺來使用。
1、登錄
啟動后進行登錄,有三種登錄方式,可以點擊左上角的 登錄 鏈接,也可以點CodeGeeX菜單中的"登錄”,也可以打開聊天框打開側(cè)邊欄進行登錄,具體如下圖所示:
這里通過CodeGeeX的側(cè)邊欄登錄,可以選擇驗證碼登錄,賬號登錄,第三方賬號登錄。通過第三方登錄,然后綁定手機號,就可以使用CodeGeeX的全部功能,開啟倍速編程的體驗吧!
2、設(shè)置
可以通過點擊側(cè)邊欄頂部的更多按鈕,下拉菜單中直接進入設(shè)置,修改更符合開發(fā)習慣的設(shè)置。
每一個選項點擊后,下方會有相應的描述。
3、側(cè)邊欄
側(cè)邊欄可以通過拖拽的方式變寬,或是同其他visual窗口一樣進行停靠、錨定,或放在更習慣的左側(cè)或右側(cè)位置,確保在Visual Studio 上編程的絲滑體驗。
切換模型 Change Model
在邊欄的智能問答輸入框中,使用“/”調(diào)出預設(shè)命令:
自動生成代碼
在編碼過程中,CodeGeeX可以根據(jù)上下文代碼的內(nèi)容,推理出接下來可能的代碼輸入。如果認為推理出的代碼內(nèi)容合適,使用快捷鍵Tab對生成的代碼進行采納,被采納的代碼即會高亮顯示并留存在光標后;
如果認為內(nèi)容不合適,任意鍵可以取消推薦的內(nèi)容,繼續(xù)手動編碼。可以使用Tab鍵接收建議,也可以通過開始編寫要使用的代碼來接收建議。
根據(jù)注釋生成代碼 將注釋轉(zhuǎn)換為代碼
CodeGeeX可以針對一段自然語言的注釋內(nèi)容,生成相關(guān)的代碼片段 。
特別是對于能夠使用一句話描述清楚的、常見的算法片段、函數(shù)段、方法段等。
自動為代碼添加注釋
CodeGeeX可以輕松為代碼添加中(英)文注釋。在編輯器中選中代碼,點擊鼠標右鍵。在右鍵菜單中點擊CodeGeeX ,然后點擊下一級菜單生成注釋即可。
生成單元測試
在編輯器中選中代碼,點擊鼠標右鍵,菜單中點擊CodeGeeX,然后點擊下一級菜單生成單測。也可以通過側(cè)邊欄的對話框,輸入“/test”,生成其對應的單元測試代碼。
智能問答
CodeGeeX 的智能問答支持模型選擇,你可以選擇Pro版模型或者Lite版的模型,點擊CodeGeeX目錄,打開 CodeGeeX 側(cè)邊欄(聊天窗),點擊側(cè)邊欄上方的Ask CodeGeeX標簽, 即可進入問答模式。
代碼解釋
代碼解釋是開發(fā)者非常喜愛的功能之一,CodeGeeX設(shè)置了多個入口,在編程過程中可以更加便利的使用。
總結(jié)
CodeGeeX 是一款功能強大的AI編程助手,可以根據(jù)用戶的輸入和要求提供適當?shù)拇饛秃椭С郑瑥亩岣吖ぷ鞯男省?/span>
快來開始免費使用 CodeGeeX!
具體可訪問官方地址:https://codegeex.cn/。
轉(zhuǎn)自:DotNet-小碼哥
鏈接:cnblogs.com/1312mn/p/18211377
