Förra året släppte GitHub Copilot, en förhandsvisning av deras "AI-parprogrammerare", ett verktyg av typen kodkomplettering som ger linje- eller funktionsrekommendationer i din IDE.
Det har utan tvekan gjort krusningar i programmeringsbranschen och utanför, och du har med största sannolikhet hört något om det.
Copilot "förstår" dussintals språk och är nu tillgänglig för Visual Studio Code och system som stöds av en VS Code-backend, såsom GitHubs Codespaces.
Den tekniska förhandsvisningen kännetecknas av att den fungerar "särskilt bra för Python, JavaScript, TypeScript, Ruby och Go."
Acceptera standardkodidéer, bläddra igenom ytterligare förslag, redigera koden du accepterar eller avvisa Copilot-förslag helt på en specifik plats i din kod.
Copilot är för närvarande endast tillgänglig via auktoriserad begäran. Men oroa dig inte; alternativ med olika specifikationer finns.
I det här stycket tar vi en djup titt på GitHub Copilot och de bästa alternativen som du kan använda direkt.
Så, vad är det GitHub Copilot?
GitHub Copilot är ett kodkompletteringsverktyg utvecklat av OpenAI och GitHub. Den använder OpenAIs Codex, en transformator som tränas på miljarder rader kod på GitHub, för att generera kod baserat på innehållet i den aktuella filen och platsen för din markör.
Copilot stöder Python, JavaScript, TypeScript, Ruby och Go och fungerar med populära kodredigerare som Visual Studio Code, Visual Studio, Neovim och JetBrains IDE.
Copilot kan producera hela kodlinjer, funktioner, tester och dokumentation, enligt GitHub och användarfeedback. Allt det kräver är sammanhang och ansträngning från utvecklare som har skickat in sin kod till GitHub, oavsett deras mjukvarulicenser.
När Copilot-testet avslutades gjorde GitHub prissättningen tillgänglig för enskilda användare. Medlemskapet erbjöd en 60-dagars gratis provperiod, varefter det skulle kosta $10 per månad eller $100 per år per användare.
Bästa GitHub Copilot-alternativen
1. Visual Studio IntelliCode
Ett Microsoft-verktyg som är exklusivt tillgängligt via Visual Studio, IntelliCode är en experimentell AI-kodningshjälp som tränas på ett urval av GitHub-projekt. Din kompletteringslista prioriteras av IntelliCode så att de objekt som du med största sannolikhet kommer att använda ligger längst fram.
Tusentals open source-projekt på GitHub, vart och ett med mer än 100 stjärnor, fungerar som grunden för IntelliCodes förslag. Kompletteringslistan är gjord med målet att främja standardpraxis när den paras ihop med sammanhanget för ditt arbete.
Fullbordandet av team är bland IntelliCodes mer lockande möjligheter. För företag vars arkitektur är byggd på Microsoft och för ingenjörer som är vana vid Visual Studio i en tidevarv av distansarbete, kan det vara fördelaktigt att slutföra team.
IntelliCode ger hjälp med komplettering av uttalanden och signaturer, samt förslag på de bästa argumenten att använda. I Visual Studio 2022 kommer IntelliCode förinstallerad med alla uppgifter som stöder C#, C++, TypeScript/JavaScript eller XAML.
2. Tabnin
Tabnine var ett av de tidigaste kodkompletterande programmen som kom ut på marknaden (en gång känd som Codota). I dina föredragna IDE:er stöder Tabnine kodkompletteringsplugin alla de mest populära språken, biblioteken och ramverken.
Tabnine AI-modeller tränas endast på tillåtande öppen källkod, vilket säkerställer att ditt arbete förblir ditt.
Tabnine Pro-medlemskapet inkluderar möjligheten att träna din egen privata AI-modell baserat på din kod och få anpassade kodkompletteringar som passar din stil och dina mönster.
Du behöver inte förlita dig på kod som producerats av någon annan än dig själv i ditt arkiv.
Möjligheten att vara värd för och träna dina egna AI-modeller möjliggör kollaborativ autokomplettering över IDE:er för team och organisationer. Det förbättrar också kodsäkerheten eftersom du kan underhålla kodbasen och AI-modellen på dina säkra företagsservrar.
Dessutom kräver Tabnine mycket mindre sammanhang än Copilot för att producera kod åt dig. I verkligheten ger Tabnine mittlinjeidéer när du skriver snarare än förslag på nästa rad med kod efter att du är klar med den föregående.
3. AiXcoder
AiXcoder är en stark kodkompletterande och sökmotor som använder banbrytande djupinlärningsteknologi.
Den har kapacitet att föreslå en hel rad kod, vilket gör att du kan utvecklas snabbare. AiXcoder har också en kodsökmotor som kan hjälpa dig att hitta API-användningsfall på GitHub.
AiXcoder fungerar lokalt och smidigt genom att använda banbrytande djupinlärningsmodellkompressionsalgoritmer. En betydande mängd öppen källkod används för att träna modellerna.
Ett sökfönster integreras enkelt med IDE och låter dig söka öppen källkod på GitHub.
Djup lärning används i sökresultat för att filtrera bort högkvalitativ kod. Leta efter API-prover och använd dem. Sök efter jämförbar kod för att förhindra duplicering av kod.
4. Svart låda
Blackbox låter dig välja koden från valfri video och sedan kopiera den till din textredigerare. Det fungerar som magi.
Det låter dig extrahera kod från vilken video som helst, oavsett om du tittar på kodningskurser på YouTube, Coursera eller Udemy eller arbetar med ditt team på Zoom, Google Meet eller Teams.
Den är kompatibel med alla programmeringsspråk och bevarar korrekt kodindrag. Det är inte nödvändigt att lämna din kodningsmiljö för att leta efter en lösning för att utveckla en viss funktion.
Utan att lämna din omgivning, öppna flera flikar eller bläddra igenom sidor med dokumentation, gör Blackbox det enkelt att identifiera rätt kodsnutt.
Dessutom kan den producera det kodavsnitt du vill ha i vilket programmeringsspråk som helst. Ange bara din fråga.
5. Amazon CodeWishperer
Amazon CodeWhisperer är en maskininlärning (ML) - ett motordrivet verktyg som ökar utvecklarens produktivitet genom att producera kodrekommendationer baserade på naturliga språkkommentarer och kod i den integrerade utvecklingsmiljön (IDE).
Utvecklare kan etiskt anställa artificiell intelligens (AI) för att konstruera säkra och syntaktisk korrekta appar. Generera fullständiga funktioner och logiska bitar av kod utan att behöva surfa på internet efter och anpassa kodavsnitt.
Du kan vara fokuserad och inte lämna IDE med anpassade kodrekommendationer i realtid för Java-, Python- eller JavaScript-applikationer.
Amazon CodeWhisperer, driven av maskininlärning (ML), hjälper utvecklare att öka produktiviteten genom att producera kodrekommendationer baserade på deras naturliga språkkommentarer och kod i den integrerade utvecklingsmiljön (IDE).
Automatiska kodförslag gör det möjligt för utvecklare att påskynda utvecklingen av frontend och backend. CodeWhisperer kan skapa kod för att bygga och träna ML-modeller.
6. Jedien
Jedi är ett plugin för redaktörer och en IDE som gör statisk analys av Python-kod. Jedi betonar bland annat autokomplettering och goto-funktioner. Kodsökning, refactoring och lokaliseringsreferenser är ytterligare funktioner. Jedi tillhandahåller ett användarvänligt API.
Som en VIM-plugin är en referensimplementering tillgänglig. Du kan få ditt REPL-autoslutförande. Det används naturligt av IPython.
Dessutom kan den installeras för CPython REPL. Med tanke på dess omfattande testning bör den ha några problem.
Ett manus fungerar som grunden för Jedi-kompletteringar, gotos och allt annat du kan behöva. I denna klass ingår även en tolk.
Det fungerar med en verklig ordbok såväl som en REPL. Denna klass ska användas när du ändrar kod i en editor. De flesta metoder innehåller både en rad- och en kolumnparameter.
Jedi-linjer är alltid en-baserade, medan kolumner alltid är noll-baserade. De är vanligtvis inte dokumenterade för att undvika dubbelarbete.
7. Koda
Codiga är en plattform som gör det möjligt för utvecklare att skriva bättre kod snabbare. Utvecklare kan använda Codiga Coding Assistant för att generera, distribuera och återanvända kodavsnitt direkt från sin IDE.
Istället för att slösa tid på att leta kan utvecklare söka efter återanvändbar kod direkt i sin IDE. Codiga Code Analysis och Automated Cod Review kan omedelbart upptäcka kodningsproblem i varje pull-begäran eller push.
Codiga identifierar säkerhet, sårbarhet, komplicerade funktioner och koddupliceringsproblem. Den rapporterar också CVE- och CWE-sårbarheter, såväl som eventuella inaktuella beroenden.
Codiga integreras med GitHub, GitLab och Bitbucket och kan ställas in på några sekunder. Den är kompatibel med alla CI/CD-leverantörer.
Det stöder officiellt GitHub Actions, Circle CI och AWS CodeBuild, och tillhandahåller verktyg för att integrera med anpassade pipelines. Codiga stöder över 2,000 12 regler och fungerar på över XNUMX språk.
8. JetBrains Datalore
Det är den bästa plattformen för Jupyter anteckningsböcker. I Jupyter-anteckningsböcker är intelligent kodningshjälp för Python tillgängligt.
Du kan köra kod på potenta CPU:er eller GPU:er, arbeta i realtid med kamrater, utbyta resultaten och till och med dela dem.
En förinställd miljö gör att du kan börja jobba direkt. Med hjälp av potenta CPU- och GPU-datorer laddar du upp data till permanent lagring, utvärderar det och tränar maskininlärningsmodeller.
Kraftfulla enheter och obegränsade funktioner kommer att vara fördelaktiga för avancerade datavetare och analytiker.
9. Kapten Stack
Stackoverflow och utvecklare liknar LinkedIn och HR-proffs. En open source VSCode-plugin som heter Captain Stack kombinerar delar av båda.
Captain Stack är ett kodrekommendationsverktyg som lånar från Copilot men använder Google snarare än AI.
Kodrekommendationsfunktionen på GitHub Copilot är ganska jämförbar med den här.
Den använder dock Google för att överföra din sökfråga, samlar sedan in svar från StackOverflow och Github Gist och fyller sedan i dem automatiskt åt dig – AI används inte i denna process.
10. Drake
Koda snabbare. Behåll ditt flöde. Kite ger utvecklare kraft genom att integrera AI-drivna kodkompletteringar i deras kodredigerare. Draken kan installeras för att erbjuda AI-drivna kodkompletteringar till alla dina kodredigerare.
Kite stöder över 16 språk samt 16 kodredigerare. Du kommer att märka kontextmedvetna kodkompletteringar som är blixtsnabba. Din kodredigerare är en superhjälte som kan slutföra rader med flera rader snabbare än du kan.
Visa Python-dokumentation med bara ett klick. Det finns också praktiska guider och exempel.
Sök i din kodbas efter filer som kan kopplas till den du nu skriver i. Detta kommer att öka produktiviteten för tusentals utvecklare.
Slutsats
Det är ganska häftigt att se ett AI-drivet verktyg producera kod.
Målet med GitHub är inte att ersätta programmerare, utan att hjälpa dem att öka sin effektivitet när de utvecklar, särskilt med repetitiva kodningsjobb som att producera lämpliga docstrings i funktioner eller klasser.
För närvarande är Copilot en unik teknik. Om allt du behöver är ett bra AI-kompletteringssystem finns det flera ytterligare val att överväga.
Förhoppningsvis kommer den här lilla mängden alternativ att få dig tills Copilot distribueras till allmänheten. Du kan till och med upptäcka att en av dem är tillräckligt fördelaktig för att fungera för dig i det långa loppet.
Kommentera uppropet