Visual Studio 智慧程式碼外掛:CodeGeeX

DotNet-小码哥發表於2024-05-28

前言

在軟體開發領域,高效的程式設計助手一直是提升開發者效率和質量的關鍵。隨著人工智慧技術的不斷髮展,智慧程式設計助手逐漸成為開發者們不可或缺的工具。其中,CodeGeeX作為一款專為Visual Studio設計的免費智慧程式設計助手,憑藉其強大的功能和便捷的使用體驗,贏得了廣大開發者的青睞。

CodeGeeX透過深度學習技術,能夠理解開發者的程式設計意圖,提供智慧的程式碼補全、錯誤檢查、程式碼重構等功能,幫助開發者快速編寫出高質量、易維護的程式碼。同時,它還能夠與Visual Studio無縫整合,無需額外的配置和設定,即可輕鬆使用。

在本文中,將詳細介紹CodeGeeX的特點和優勢,以及如何使用它來提升程式設計效率和質量。無論你是經驗豐富的開發者,還是剛剛入門的初學者,CodeGeeX都將成為程式設計路上的得力助手。

CodeGeeX 是什麼?

CodeGeeX是一款基於大模型的智慧程式設計助手,它可以實現程式碼的生成與補全、自動為程式碼新增註釋、自動解釋程式碼、自動編寫單元測試、實現程式碼審查Code Review、自動修復程式碼fixbug、自動生成commit message完成git提交,以及在不同程式語言的程式碼間實現互譯、針對技術和程式碼問題的智慧問答等豐富的功能。

幫助開發者顯著提高工作效率,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的核心能力

功能描述
單行/多行程式碼續寫 根據上下文程式碼內容,推理出游標所在的當前行、當前段程式碼的內容。在實際開發場景中最常見也是提效最明顯的場景。
根據註釋生成程式碼 根據自然語言的註釋,自動生成所需要的程式碼,可以生成完整的方法級函式。
AskCodeGeeX智慧問答 透過側邊欄的智慧問答互動,可以將開發中遇到的技術問題,直接向CodeGeeX提問獲得快速解答。
自動新增註釋 給程式碼自動新增行級註釋,可以根據需要選擇英文或者中文。
程式碼翻譯 多種程式語言之間進行互譯。理解程式碼語義並在保留原始程式碼語義和功能的基礎上,翻譯成另一種程式語言的等效程式碼。
生成單元測試 根據函式、方法的內容和執行邏輯,生成相關的單元測試程式碼。支援Java、PythonGo、C/C++、JavaScript等,
NL2SQL 基於給定的SQL表結構和自然語言描述的查詢需求,生成SQL查詢語句。
函式重構 快速進行函式重構,梳理程式碼邏輯,降低出錯風險。
生成除錯日誌 透過理解程式碼執行邏輯,為程式碼自動生成除錯資訊,幫助使用者快速定位問題。
生成ReadMe文件 根據程式碼內容快速生成符合ReadMe格式的文件資訊,
Code Interpreter 工具箱接入了Code Interpreter的能力,可以實現批次處理檔案,分析多種格式的資料並進行視覺化,繪製數學函式,分析程式碼檔案等。

自動模式

當CodeGeeX外掛處於啟用狀態下,在編輯器中輸入停止時,會從當前游標處開始進行自動的程式碼生成與補全。此時,右下角CodeGeeX圖示轉圈表示正在生成。生成的程式碼以灰色顯示,按Tab鍵即可將生成結果在當前位置插入。如果不需要使用生成的程式碼,可按Esc鍵取消,也可以忽略生成的程式碼並繼續輸入。

互動模式

在需要獲取程式碼生成結果時,按Ctrl+Enter啟用互動模式。CodeGeeX外掛將生成若干段候選程式碼,並顯示在右側視窗中。若希望使用其中某段候選程式碼,點選候選程式碼上方的"use code",即可將程式碼插入編輯器中的游標位置候選程式碼數量可以在外掛設定中調整。

外掛會根據當前游標位置自動判斷生成一行或生成多行。CodeGeeX作為輔助工具,並不保證每次生成的是一段完整的程式碼。如果生成的程式碼沒有完成一項功能,只需要讓外掛再次呼叫模型,繼續向後生成,直到完成即可。

外掛對於給定的輸入,多次生成的結果可能不同。這是因為透過大模型進行生成,結果帶有隨機性。這種隨機性可以從宏觀統計上提高生成的準確率。如果希望降低隨機性,可以在外掛設定中調整部分引數設定,但不建議一般使用者調整這些設定。

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選單中的"登入”,也可以開啟聊天框開啟側邊欄進行登入,具體如下圖所示:

這裡透過CodeGeeX的側邊欄登入,可以選擇驗證碼登入,賬號登入,第三方賬號登入。透過第三方登入,然後繫結手機號,就可以使用CodeGeeX的全部功能,開啟倍速程式設計的體驗吧!

2、設定

可以透過點選側邊欄頂部的"更多"按鈕,下拉選單中直接進入"設定",修改更符合您的開發習慣的設定。

每一個選項點選後,下方會有相應的描述。

3、側邊欄

側邊欄可以透過拖拽的方式變寬,或是同其他visual視窗一樣進行停靠、錨定,或放在更習慣的左側或右側位置,確保在Visual Studio 上程式設計的絲滑體驗。

切換模型 Change Model

在邊欄的智慧問答輸入框中,使用“/”調出預設命令

Visual Studio 智慧程式碼外掛:CodeGeeX

核心功能

自動生成程式碼

在編碼過程中,CodeGeeX可以根據上下文程式碼的內容,推理出接下來可能的程式碼輸入。如果認為推理出的程式碼內容合適,使用快捷鍵Tab對生成的程式碼進行採納,被採納的程式碼即會高亮顯示並留存在游標後;

如果認為內容不合適,任意鍵可以取消推薦的內容,繼續手動編碼。可以使用Tab鍵接收建議,也可以透過開始編寫要使用的程式碼來接收建議。

根據註釋生成程式碼 將註釋轉換為程式碼

CodeGeeX可以針對一段自然語言的註釋內容,生成相關的程式碼片段 。

特別是對於能夠使用一句話描述清楚的、常見的演算法片段、函式段、方法段等。

自動為程式碼新增註釋

CodeGeeX可以輕鬆為程式碼新增中(英)文註釋。 在編輯器中選中程式碼,點選滑鼠右鍵。在右鍵選單中點選CodeGeeX ,然後點選下一級選單生成註釋即可。

生成單元測試

在編輯器中選中程式碼,點選滑鼠右鍵,選單中點選CodeGeeX,然後點選下一級選單生成單測。也可以透過側邊欄的對話方塊,輸入“/test”,生成其對應的單元測試程式碼。

智慧問答

CodeGeeX 的智慧問答支援模型選擇,你可以選擇Pro版模型或者Lite版的模型,點選CodeGeeX目錄,開啟 CodeGeeX 側邊欄(聊天窗),點選側邊欄上方的Ask CodeGeeX標籤, 即可進入問答模式。

程式碼解釋

程式碼解釋是開發者非常喜愛的功能之一,CodeGeeX設定了多個入口,在程式設計過程中可以更加便利的使用。

總結

CodeGeeX 是一款功能強大的AI程式設計助手,可以根據使用者的輸入和要求提供適當的答覆和支援,從而提高工作的效率。

快來開始免費使用 CodeGeeX!具體可訪問官方地址:https://codegeex.cn/

相關文章