ChatGPT不是唯一:自動(dòng)編寫(xiě)程序的另七個(gè)選擇!
譯文譯者 | 布加迪
審校 | 重樓
ChatGPT并不是唯一可以幫助編寫(xiě)代碼的AI工具。不妨使用這些工具,將你的編程效率提升一個(gè)檔次。
ChatGPT是一種出色的AI工具,可以根據(jù)提示自動(dòng)生成代碼。然而,它并不特別關(guān)注代碼,可能無(wú)法無(wú)縫地集成到你的工作流程中。以下是更多注重代碼的AI工具方面的幾個(gè)選擇。
1、GitHub Copilot
圖片
GitHub Copilot是GitHub與OpenAI合作開(kāi)發(fā)的一款A(yù)I助手。當(dāng)您擊鍵輸入時(shí),它會(huì)建議各種編程語(yǔ)言的完整代碼行。Copilot是使用GitHub上可用的公共代碼庫(kù)進(jìn)行訓(xùn)練的。
GitHub Copilot的一些主要功能:
- 可以分析代碼,根據(jù)上下文建議代碼片段??梢越ㄗh變量名、函數(shù)和整行代碼。
- 可以根據(jù)用自然語(yǔ)言編寫(xiě)的注釋生成代碼。
- 可以支持多種編程語(yǔ)言,包括Python、JavaScript、TypeScript、Ruby、Go、PHP、C++、C#、Java、HTML、CSS、SQL和Shell。
- 可以作為Visual Studio Code(VS Code)、Visual Studio、Neovim和JetBrains的IDE套件中的擴(kuò)展來(lái)使用。
GitHub Copilot不是免費(fèi)的,但有30天的免費(fèi)試用期。到期后,需要訂閱個(gè)人或企業(yè)套餐才能使用它。
GitHub還發(fā)布了使用GPT4的Copilot X。它引入了更多的AI輔助功能,比如生成的合并請(qǐng)求、上下文感知對(duì)話、自動(dòng)化測(cè)試和命令行AI。
2、Codeium
圖片
Codeium是一種免費(fèi)的基于AI的代碼生成工具,可以由自然語(yǔ)言注釋或以前的代碼片段生成代碼。
它的一些主要功能:
- 支持40多種編程語(yǔ)言,包括C++、Go、Java、JavaScript、Rust、Python和PHP等。
- 使用龐大的公共代碼數(shù)據(jù)集進(jìn)行訓(xùn)練。
- 與流行的IDE集成,比如VSCode、JetBrains、Jupyter/Colab Notebook、Neovim、Emacs和VSCode Web IDE(如Gitpod)。
- Codeium通過(guò)為你生成測(cè)試用例簡(jiǎn)化測(cè)試驅(qū)動(dòng)的開(kāi)發(fā)。
- Codeium可以根據(jù)編寫(xiě)的上下文或注釋在代碼中搜索和插入API端點(diǎn)。
- 企業(yè)套餐允許公司將Codeium部署在自己的服務(wù)器或云端,以確保代碼保持私密。
可以在Codeium游戲場(chǎng)(https://codeium.com/playground)上看到它是如何工作的。
3、CodeWhisperer
圖片
CodeWhisperer是亞馬遜創(chuàng)建的代碼生成工具。與Copilot和Codeium一樣,它根據(jù)上下文和注釋生成代碼建議。主要區(qū)別在于CodeWhisperer主要致力于為AWS服務(wù)支持代碼。
它的一些主要功能:
- 與現(xiàn)代IDE集成,比如Visual Studio Code(通過(guò)AWS Toolkit for Visual Studio Code)、JetBrains(通過(guò)AWS Toolkit for JetBrains)、AWS Lambda控制臺(tái)和AWS Cloud9。
- 掃描代碼以高亮顯示和定義安全問(wèn)題。
- 選擇不讓CodeWhisperer與AWS共享你的數(shù)據(jù)。
- 使用內(nèi)部的亞馬遜代碼和開(kāi)源代碼進(jìn)行訓(xùn)練。
- 支持Java、JavaScript、Python、C#和TypeScript。
CodeWhisperer對(duì)個(gè)人用戶免費(fèi),但專業(yè)套餐每個(gè)用戶每月需收費(fèi)19美元。
4、Tabnine
圖片
Tabnine也是一款在IDE中工作的自動(dòng)代碼生成工具。它根據(jù)之前的代碼和注釋生成代碼。
它的一些主要功能:
- 支持30余種編程語(yǔ)言,包括JavaScript、Python、TypeScript、Rust、Go和Bash。
- 如果使用專業(yè)版,能夠托管和訓(xùn)練自己的AI模型,專業(yè)版確保代碼仍然是你的。
- 能夠根據(jù)你的合規(guī)和安全要求在本地或云端運(yùn)行。
- 單元測(cè)試生成(目前僅限于beta版)。
- 與主要的IDE集成,比如VS Code、Neovim、Rider和Android Studio。
Tabnine有三個(gè)版本:免費(fèi)版、專業(yè)版和企業(yè)版。免費(fèi)版非常有限,只提供簡(jiǎn)短的代碼補(bǔ)全。然而企業(yè)版有更多的功能。你可以在本地或VPC上部署Tabnine,確保你的代碼保持私密。它還有IDE中的聊天功能。
5、Codex
圖片
Codex是OpenAI開(kāi)發(fā)的一種語(yǔ)言模型,它根據(jù)問(wèn)題描述等自然語(yǔ)言提示生成代碼。這是驅(qū)動(dòng)GitHub Copilot的模型。
它的一些主要功能:
- 支持多種語(yǔ)言,包括Python、JavaScript、Java和C++。
- 可以使用自然語(yǔ)言和數(shù)十億行代碼進(jìn)行訓(xùn)練。
- 可以通過(guò)OpenAI Codex API來(lái)使用,API允許開(kāi)發(fā)人員將其集成到自己的應(yīng)用程序和工作流中。
在測(cè)試期間,Codex可以免費(fèi)使用。如果在JavaScript代碼沙箱(https://platform.openai.com/codex-javascript-sandbox)中輸入提示,可以了解它是如何工作的。
6、Intellicode
圖片
Intellicode是面向Visual Studio的免費(fèi)AI代碼生成工具。它可以檢測(cè)代碼的上下文,并生成建議。目前它支持Python、TypeScript/JavaScript和Java編程語(yǔ)言。
以下是它的一些主要功能:
- 使用GitHub上擁有高星評(píng)級(jí)的開(kāi)源項(xiàng)目進(jìn)行訓(xùn)練的。
- 為10萬(wàn)多個(gè)API提供了API使用示例。
- 它只適用于Visual Studio IDE。
Intellicode支持非常有限的編程語(yǔ)言,只在一種IDE中工作。使用本文中討論的其他更靈活的工具可能會(huì)更好。
7、AskCodi
圖片
AskCodi提供了一種全面的工具來(lái)幫助開(kāi)發(fā)人員快速生成代碼。它有不同的應(yīng)用程序來(lái)生成不同類型的代碼。比如說(shuō),它可以回答有關(guān)前端語(yǔ)法、測(cè)試用例、數(shù)據(jù)庫(kù)的SQL和NoSQL查詢以及Python代碼的文檔字符串等問(wèn)題。
以下是它的主要功能:
- 支持30多種編程語(yǔ)言和框架,比如Kotlin、JavaScript、Angular、Ruby、Swift、Ruby、Python和Rust等。它還提供WordPress和Powershell問(wèn)題的答案。
- 可以在終端上使用,可以與VS Code和PyCharm等IDE集成。
- 支持除英語(yǔ)之外的多種自然語(yǔ)言,比如德語(yǔ)、波蘭語(yǔ)和西班牙語(yǔ)。
- 可以將代碼片段從一種編程語(yǔ)言轉(zhuǎn)換成另一種編程語(yǔ)言。
- 有工作簿,可以在其中生成測(cè)試、將代碼記入文檔。
AskCodi有免費(fèi)版和付費(fèi)版,前者積分有限,后者有更多的積分。
8、應(yīng)該依賴代碼生成器嗎?
諸如此類的AI代碼生成器對(duì)于減少編寫(xiě)的代碼量非常有幫助。然而,開(kāi)發(fā)者不應(yīng)該完全依賴它們來(lái)編寫(xiě)整個(gè)應(yīng)用程序。它們生成的代碼可能并不總是正確的。在將生成的代碼與生產(chǎn)級(jí)代碼集成之前,徹底測(cè)試和檢查一番非常重要。
最好將代碼助手視為補(bǔ)充編程知識(shí)的工具。比如說(shuō),依賴它們生成樣板代碼,或者當(dāng)使用一種新的編程語(yǔ)言或框架、希望學(xué)習(xí)其語(yǔ)法時(shí)可以借助它們。
原文鏈接:https://www.makeuseof.com/chatgpt-alternative-for-coding-programs-automatically/





























