A GitHub bejelentette, hogy befejezte a tesztelést a GitHub intelligens asszisztensről pilóta, hogy kódírás közben generikus konstrukciókat generálhat. A rendszert az OpenAI projekttel együttműködésben fejlesztették ki, és az OpenAI Codex gépi tanulási platformot használja, amely a nyilvános GitHub-tárolókban tárolt forráskódok széles skálájára készült.
A kód generálása támogatja a programozási nyelveket Python, JavaScript, TypeScript, Ruby, Go, C# és C++ több keretrendszer használatával. Modulok állnak rendelkezésre a GitHub Copilot és a Neovim, a JetBrains IDE, a Visual Studio és a Visual Studio Code integrálásához.
A tesztelési folyamat során gyűjtött telemetriai adatokból ítélve, a szolgáltatás lehetővé teszi kellően jó minőségű kód generálását; például a fejlesztők a GitHub Copilotban javasolt ajánlások 26%-át elfogadták.
GitHub A Copilot eltér a hagyományos kódkiegészítő rendszerektől abban a képességben, hogy meglehetősen bonyolult kódblokkokat képezzenek, egészen az aktuális kontextus figyelembevételével szintetizált, használatra kész függvényekig.
GitHub A másodpilóta alkalmazkodik a fejlesztő kódírási módjához és figyelembe veszi a programban használt API-kat és keretrendszereket. Például, ha van példa egy JSON-struktúrára a megjegyzésben, amikor elkezd írni egy függvényt ennek a struktúrának az elemzéséhez, a GitHub Copilot használatra kész kódot ad, és az ismétlődő leírások rutin felsorolásának írásával létrehozza. a maradék.
Egy blogbejegyzésben – mondta Thomas Dohmke, a GitHub vezérigazgatója hogy a GitHub Copilot a szerkesztő bővítményeként készült, hogy biztosítsa, semmi sem akadályozza a fejlesztők tevékenységét.
„A GitHub Copilot a világ minden tájáról származó fejlesztők kollektív tudását egy szerkesztőbővítménybe gyűjti össze, amely valós időben kódot javasol, hogy segítsen a legfontosabbra összpontosítani: a nagyszerű szoftverek létrehozására” – magyarázta.
Dohmke szerint körülbelül 1,2 millió fejlesztő próbálta ki a Copilotot az előnézeti szakaszban. Nyilvánvalóan ez is nagyon hasznos volt, mivel Dohmke azt állítja, hogy a fejlesztői kódok akár 40%-át olyan népszerű nyelveken írta, mint a Python.
„A fordítóprogramok és a nyílt forráskód térnyeréséhez hasonlóan úgy gondoljuk, hogy a mesterséges intelligencia által támogatott kódolás alapvetően megváltoztatja a szoftverfejlesztés természetét, új eszközt adva a fejlesztőknek a kód egyszerűbb és gyorsabb írására” – mondta Dohmke.
A GitHub Copilot azon képessége, hogy képes előre elkészített kódblokkokat generálni, vitákat váltott ki a copyleft licenc esetleges megsértésével kapcsolatban. A gépi tanulási modell kialakításakor valódi forrásszövegeket használtak a GitHubon tárolt nyílt projekttárakból.
Ezek közül a projektek közül sok copyleft licenc alatt áll rendelkezésre, mint például a GPL, amely megköveteli, hogy a származékos művek kódját kompatibilis licenc alatt biztosítsák. Ha a Copilot meglévő kódot illeszt be, a fejlesztők véletlenül megsérthetik annak a projektnek a licencét, amelyből a kódot kölcsönözték.
Egyelőre nem világos, hogy létrejött-e munkahely gépi tanulási rendszerrel származéknak tekinthető. Kérdések merülnek fel azzal kapcsolatban is, hogy egy gépi tanulási modell szerzői jogi védelem alatt áll-e, és ha igen, kinek a tulajdonosa ezek a jogok, és hogyan kapcsolódnak azok a modellt alapozó kódhoz fűződő jogokhoz.
Egyrészt a generált blokkok meg tudják ismételni a meglévő projektekből származó szövegrészeket, másrészt a rendszer újraalkotja a kódstruktúrát, és magát a kódot nem másolja.
Egy GitHub tanulmány szerint A Copilot által javasolt ajánlások mindössze 1%-a tartalmaz meglévő projektekből származó kódrészleteket több mint 150 karakterből áll. A legtöbb esetben az ismétlés akkor fordul elő, ha a másodpilóta nem határozza meg megfelelően a kontextust, vagy nem ad általános megoldásokat egy problémára.
A meglévő kód lecserélésének elkerülése érdekében egy speciális szűrőt adtunk a Copilothoz, amely nem teszi lehetővé a meglévő projektekkel való átfedést. A konfigurálás során a fejlesztő saját belátása szerint be- vagy kikapcsolhatja ezt a szűrőt. Egyéb problémák mellett megjegyzik annak lehetőségét, hogy a szintetizált kód megismételheti a modell betanításához használt kódban található hibákat és sebezhetőségeket.
Végül érdemes megemlíteni, hogy a szolgáltatás ingyenes a népszerű nyílt forráskódú projektek fenntartói és a hallgatók számára. Míg más felhasználói kategóriák számára a GitHub Copilothoz való hozzáférés fizetős (10 USD havonta vagy 100 USD évente), de ingyenes próba-hozzáférés biztosított 60 napig.
Végül, ha többet szeretne megtudni róla, akkor tanulmányozza a részleteket A következő linken.