前言
2022年6月,隨着GitHub Copliot正式面向大衆發佈。讓許多開發者都感受到了AI輔助編程工具的魅力所在,Copilot實現了幫助開發者大大提高了編程開發效率,讓程序員朝九晚五成爲可能。Copilot近乎是完美的,但還是由於種種原因(比如需要魔法上網、需要花錢購買使用等)使得不少人開發者想要找到一款免費且功能強大的AI編程輔助工具,因此CodeGeeX來了。雖然說CodeGeeX沒有Copilot那麼強大、那麼智能,但是在一定的程度上還是能夠幫助我們提高不少工作開發效率的。假如您有更好的、免費的、好用的AI編程助手推薦,歡迎在評論區留言🤞。
什麼是CodeGeeX?
CodeGeeX是一款基於大模型的全能的智能編程助手。它可以實現代碼的生成與補全、自動添加註釋、代碼翻譯以及智能問答等功能,能夠幫助開發者顯著提高工作效率。CodeGeeX支持主流的編程語言,並適配多種主流IDE。
CodeGeeX2 模型
更強大的多語言代碼生成模型:https://github.com/THUDM/CodeGeeX2
CodeGeeX2 是多語言代碼生成模型 CodeGeeX (KDD’23) 的第二代模型。不同於一代 CodeGeeX(完全在國產華爲昇騰芯片平臺訓練) ,CodeGeeX2 是基於 ChatGLM2 架構加入代碼預訓練實現,得益於 ChatGLM2 的更優性能,CodeGeeX2 在多項指標上取得性能提升(+107% > CodeGeeX;僅60億參數即超過150億參數的 StarCoder-15B 近10%)。
支持的語言
支持的主流IDE
到這裏有的同學就會說了我是開發.NET的不支持Visual Studio我要怎麼體驗呢?告訴你一個好消息,現在使用Visual Studio Code開發.NET也是很香的哦,具體Visual Studio Code開發.NET環境配置可以參考我的這篇文章:Visual Studio Code安裝C#開發工具包並編寫ASP.NET Core Web應用
CodeGeeX的優勢
- CodeGeeX不需要魔法上網即可順暢使用。
- CodeGeeX插件對個人用戶完全免費。
- CodeGeeX支持主流的編程語言,並適配多種主流IDE。
- CodeGeeX對中文的支持非常友好,也可以給代碼逐行添加代碼註釋且有詳細的中文官方文檔。
CodeGeeX VS Code插件安裝
CodeGeeX 同樣擁有 VS Code 插件,不同於 GitHub Copilot 他是免費的。GitHub Copilot VS Code 插件在技術上是免費的,但是隻針對認證的學生,老師和相關開源項目的維護者。對於其他用戶則是以月租10美元或年租100美元的形式訂閱付費。CodeGeeX 插件不需要任何上述條件,你所需的僅僅是進入插件商店進行下載安裝即可使用。
1、VS Code安裝插件
2、首次需要註冊賬號
註冊地址:https://codegeex.cn/auth#signup
3、登錄賬號
首先創建一個.NET控制檯應用HelloCodeGeeX
1、打開VS Code,點擊VS Code菜單欄裏的終端=>新建終端
2、創建一個.NET 控制檯應用程序: HelloCodeGeeX 命令如下:
dotnet new console -n HelloCodeGeeX
具體作用如下:
dotnet new console
:這部分表示使用dotnet
命令行工具的new
命令來創建一個新的項目,類型是控制檯應用程序。-n HelloCodeGeeX
:這部分表示給新創建的項目指定一個名稱,此處名稱爲HelloCodeGeeX
。
通過執行該命令,將會在當前路徑下創建一個名爲 HelloCodeGeeX
的新控制檯應用程序項目。這個項目將包含一個初始的主程序文件,可以用於編寫和執行簡單的命令行程序邏輯。
3、打開控制檯程序編譯查看效果
運行命令:
dotnet run
代碼生成與自動補全
1、隱匿模式
該模式的工作方式與代碼生成工具相同,它查看你以前的代碼或代碼註釋,併爲你生成下一行代碼。這裏最好的部分是它不會干擾你的代碼,僅在你上次鍵入以來已有3秒鐘的情況下建議代碼,而建議的代碼則以佔位符的形式,僅在你按 Tab 鍵時纔會實現。
通過註釋自動定義用戶狀態枚舉
定義一個C#用戶類
實現一個C# MD5字符串編碼的公共方法
2、交互模式
CodeGeeX 插件的交互式模式也具有代碼生成的元素,載入該模式僅需要按下 Ctrl+Enter激活,你的VS Code 會分成兩個版面。一個版面編寫正常代碼,另一個版面顯示建議的代碼片段,你可以使用右邊建議的代碼如何就會自動添加到左邊實際文件中。
代碼註釋(再也不擔心看不懂源碼了)
在開發過程中,經常會遇到一些難以理解的代碼並且也沒有註釋,CodeGeeX提供了一個自動添加註釋的功能(Add Comment),讓你能夠快速熟悉並且理解代碼。
完全沒有註釋:
自動添加代碼註釋:
代碼轉換
將JS代碼轉換成C#:
智能問答(免費GPT使用)
最後總結
以下這段文案來源於CodeGeeX智能問答😁!
CodeGeeX 是一款功能強大的AI編程助手,它可以根據用戶的輸入和要求提供適當的答覆和支持,從而提高程序員的效率。對於程序員來說,CodeGeeX 可以幫助他們解決各種編程問題,例如代碼的複製粘貼、自動添加註釋、代碼翻譯以及智能問答等。通過使用 CodeGeeX,程序員可以減少花費在查找解決方案和編寫代碼上的時間,從而提高工作效率。然而,對於個人用戶來說,CodeGeeX 的使用可能會受到一些限制,例如註冊賬號、登錄限制等。因此,在使用 CodeGeeX 之前,請確保瞭解其使用規則和限制。總之,CodeGeeX 是一款功能強大的AI編程助手,它可以幫助程序員提高編程效率。對於個人用戶來說,在使用 CodeGeeX 之前,請確保瞭解其使用規則和限制。
相關地址
CodeGeeX官網地址
https://codegeex.cn/zh-CN?article=0001
VS Code插件安裝地址
https://marketplace.visualstudio.com/items?itemName=aminer.codegeex
參考文章
https://segmentfault.com/a/1190000043116653
https://zhuanlan.zhihu.com/p/606183277
加入DotNetGuide技術交流羣
1、提供.NET開發者分享自己優質文章的羣組和獲取更多全面的C#/.NET/.NET Core學習資料、視頻、文章、書籍,社區組織,工具和常見面試題資源,幫助大家更好地瞭解和使用 .NET技術。
2、在這個羣裏,開發者們可以分享自己的項目經驗、遇到的問題以及解決方案,傾聽他人的意見和建議,共同成長與進步。
3、可以結識更多志同道合的開發者,甚至可能與其他開發者合作完成有趣的項目。通過這個羣組,我們希望能夠搭建一個積極向上、和諧友善的.NET技術交流平臺,爲廣大.NET開發者帶來更多的價值。