GitHub másodpilóta | |
---|---|
Típusú | SaaS |
Fejlesztő | GitHub , OpenAI |
Operációs rendszer | Microsoft Windows , Linux , macOS , web |
legújabb verzió | 1.28.6134 |
Teszt verzió | 1.28.6136 |
Weboldal | copilot.github.com |
A GitHub Copilot a GitHub és az OpenAI által közösen kifejlesztett mesterséges intelligencia eszköz, amely segíti az olyan IDE-k felhasználóit, mint a Visual Studio Code , a Visual Studio , a Neovim ésa JetBrains a kódkiegészítésben [1] . Az eszközt először 2021. június 29-én jelentették be, és csak előnézetben volt elérhető 2022. június 21-ig . A Python , JavaScript , TypeScript , Ruby és Go [2] [3] nyelven kódoló felhasználók számára a legalkalmasabb.
2021. június 29-én a GitHub bejelentette , hogy a GitHub Copilot a Visual Studio Code előzetes verziója [4] [5] .
2021. október 26-án ez az eszköz pluginként jelent meg a JetBrains Marketplace -en [6] .
2021. október 27-én a GitHub nyilvános adattárként kiadta a GitHub Copilot bővítményt a Neovimhoz [7] .
2022. március 29- én hivatalosan is bejelentették a Copilot for Visual Studio 2022 [8] elérhetőségét .
Június 21-én hivatalos bejelentés érkezett arról, hogy a Copilot kilép az előzetes tesztelésből, és előfizetéses rendszeren keresztül mindenki számára elérhető lesz [9] .
Az OpenAI Codex által működtetett GitHub Copilot, az OpenAI mesterséges intelligencia kutatólaboratóriuma által létrehozott mesterséges intelligencia modell [10] . Az OpenAI Codex a Generative Pre-trained Transformer 3 ( GPT-3 ) nyelvi modell módosított éles változata, amely mély tanulást használ emberszerű szöveg létrehozásához [11] . Például egy természetes nyelvű programozási probléma esetén a Codex kódot generálhat annak megoldására [12] . Leírhatja a bemeneti kódot angolul , és lefordíthatja a kódot a programozási nyelvek között [12] . A Codex GPT-3 licencet kizárólag a Microsoft , a GitHub anyavállalata kapja [13] .
Az OpenAI Codex a Copilotban kiválasztott nyilvános GitHub -tárolókon van kiképezve angol nyelven és más nyilvános forráskódokon [14] . Ez magában foglal egy 159 gigabájtnyi Python kódot tartalmazó szűrt adatkészletet, amely 54 millió nyilvános GitHub -tárolóból származik [15] .
Saját weboldala szerint a GitHub Copilot segédfunkciókat tartalmaz a programozók számára, például a megjegyzések konvertálását futtatható kóddá és az automatikus kiegészítést kódrészletekhez, ismétlődő kódrészletekhez és teljes metódusokhoz vagy függvényekhez [14] [16] . A GitHub jelentése szerint a Copilot automatikus kiegészítési funkciója az idő felében pontos; Például egy Python -függvényfejlécre beállított kóddal a Copilot az esetek 43%-ában az első próbálkozáskor, 57%-ban pedig tíz próbálkozás után helyesen fejezte be automatikusan a függvénytörzskód fennmaradó részét [3] .
A GitHub azt állítja, hogy a Copilot funkciói lehetővé teszik a programozók számára, hogy ismeretlen keretrendszerekben és nyelveken navigáljanak, így csökken a dokumentáció olvasásával töltött idő [14] .
A Copilot megjelenése óta aggodalomra ad okot a biztonsági és oktatási hatásai, valamint az általa létrehozott kód engedélyezése körüli viták [17] [18] .
Míg a Copilot által kibocsátott kód nagy része átalakítási munkának minősíthető, a GitHub elismeri, hogy egy kis részét szó szerint másolták le, ami aggodalmakhoz vezetett amiatt, hogy az eredményül kapott kódot nem alakították át kellőképpen ahhoz, hogy méltányos használatnak minősüljön, és sértheti az eredeti tulajdonos szerzői jogait [2] . Ez a tény a Copilotot ellenőrizetlen jogi alapon hagyja, bár a GitHub kijelenti, hogy „a gépi tanulási modellek nyilvános adatokon történő képzése méltányos használatnak minősül a gépi tanulási közösségben” [17] .
FSF Official Documents2021. július 28-án a Free Software Foundation ( FSF ) finanszírozott felhívást tett közzé a Copilothoz kapcsolódó filozófiai és jogi kérdésekről szóló fehér könyvekre [19] . Donald Robertson , az FSF engedélyezési és megfelelőségi menedzsere kijelentette, hogy " a Copilot sok […] kérdést vet fel, amelyeket alaposabban meg kell vizsgálni" [19] . 2022. február 24-én az FSF bejelentette, hogy 22 dolgozatot kaptak a témában, és közülük 5-öt kiválasztottak kiemelésre egy névtelen felülvizsgálati eljárás során [20] .
Az Institute of Electrical and Electronics Engineers ' 2022 Security and Privacy Symposium által közzétételre elfogadott , a másodpilóta által generált kód biztonságát 25 fő MITER -kód sérülékenység (pl. cross-site scripting, path bejárás) szempontjából értékelték 89 különböző forgatókönyvben és 1689 esetben. programok [21] . Ez a gyengeség-diverzitás (az olyan forgatókönyvekre való reagálás képessége, amelyek különböző kódsebezhetőségekhez vezethetnek), a hint-diverzitás (az a képesség, hogy ugyanarra a kód sebezhetőségére enyhe eltérésekkel) és a tartománydiverzitás (generálási képesség) tengelye mentén történt. regiszter átviteli réteg hardverspecifikációi). a Verilogban ) [21] . A tanulmány megállapította, hogy az egyes nyelveken, ezen tengelyek mentén a legjobb javaslatok 39,33%-a és az összes javaslat 40,73%-a vezet sebezhetőséghez a kódban. Ezenkívül azt találták, hogy a kódon végrehajtott kis nem szemantikai (például megjegyzések) változtatások hatással lehetnek a kód biztonságára [21] .
Az Association for Computing Machinery által 2022 februárjában közzétett tanulmány a Codex , a Github Copilot által használt technológia hatását értékeli a kezdő programozók oktatásában [18] . A tanulmány az Aucklandi Egyetem bevezető programozási osztályának értékelő kérdéseit használja, és összehasonlítja a Codex válaszait a tanulók teljesítményével [12] . A kutatók azt találták, hogy a Codex átlagosan jobban teljesített, mint a legtöbb diák; teljesítménye azonban lelassult a megoldásban használható korlátozott képességű kérdéseknél (pl. feltételes utasítások , gyűjtemények és ciklusok ) [12] . Tekintettel a problémára, „10 [ Codex ]-döntésből csak 2 volt helyes, de mindkettő […] megsértette a megállapított korlátokat”. A tanulmány arra a következtetésre jut, hogy a Codex hasznos lehet abban, hogy különféle megoldásokat kínáljon a hallgatóknak, de túlzott önbizalomhoz és plágiumhoz is vezethet [12] .