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