GitHub paziÅoja par viedÄ palÄ«ga GitHub Copilot testÄÅ”anas pabeigÅ”anu, kas spÄj Ä£enerÄt standarta konstrukcijas, rakstot kodu. SistÄma tika izstrÄdÄta kopÄ ar OpenAI projektu, un tajÄ tiek izmantota OpenAI Codex maŔīnmÄcÄ«Å”anÄs platforma, kas ir apmÄcÄ«ta lielam avota kodu klÄstam, kas tiek mitinÄts publiskajÄs GitHub krÄtuvÄs. Pakalpojums ir bezmaksas populÄru atvÄrtÄ pirmkoda projektu uzturÄtÄjiem un studentiem. Citu kategoriju lietotÄjiem piekļuve GitHub Copilot tiek apmaksÄta (10 USD mÄnesÄ« vai 100 USD gadÄ), bet bezmaksas izmÄÄ£inÄjuma versija tiek nodroÅ”inÄta 60 dienas.
Kodu Ä£enerÄÅ”ana tiek atbalstÄ«ta programmÄÅ”anas valodÄs Python, JavaScript, TypeScript, Ruby, Go, C# un C++, izmantojot dažÄdus ietvarus. Ir pieejami moduļi, lai integrÄtu GitHub Copilot ar Neovim, JetBrains IDE, Visual Studio un Visual Studio Code izstrÄdes vidÄm. Spriežot pÄc testÄÅ”anas laikÄ savÄktÄs telemetrijas, pakalpojums ļauj Ä£enerÄt diezgan augstas kvalitÄtes kodu - piemÄram, 26% no GitHub Copilot piedÄvÄtajiem ieteikumiem izstrÄdÄtÄji pieÅÄma tÄdus, kÄdi tie ir.
GitHub Copilot atŔķiras no tradicionÄlajÄm koda pabeigÅ”anas sistÄmÄm ar spÄju Ä£enerÄt diezgan sarežģītus kodu blokus, lÄ«dz pat gatavÄm funkcijÄm, kas sintezÄtas, Åemot vÄrÄ paÅ”reizÄjo kontekstu. GitHub Copilot pielÄgojas tam, kÄ izstrÄdÄtÄjs raksta kodu, un Åem vÄrÄ programmÄ izmantotos API un ietvarus. PiemÄram, ja komentÄrÄ ir JSON struktÅ«ras piemÄrs, kad sÄkat rakstÄ«t funkciju Ŕīs struktÅ«ras parsÄÅ”anai, GitHub Copilot piedÄvÄs gatavu kodu, un, rakstot regulÄrus atkÄrtotu aprakstu sarakstus, tas Ä£enerÄs atlikuÅ”o. pozÄ«cijas.
GitHub Copilot spÄja Ä£enerÄt gatavus kodu blokus ir izraisÄ«jusi strÄ«dus saistÄ«bÄ ar iespÄjamiem copyleft licenÄu pÄrkÄpumiem. Veidojot maŔīnmÄcÄ«Å”anÄs modeli, tika izmantoti reÄli avota teksti no atvÄrtÄ pirmkoda projektu krÄtuvÄm, kas atrodas GitHub. Daudzi no Å”iem projektiem tiek nodroÅ”inÄti ar copyleft licencÄm, piemÄram, GPL, kas prasa, lai atvasinÄto darbu kods tiktu izplatÄ«ts saskaÅÄ ar saderÄ«gu licenci. Ievietojot esoÅ”o kodu, kÄ ieteica Copilot, izstrÄdÄtÄji var netÄ«Å”i pÄrkÄpt tÄ projekta licenci, no kura kods tika aizgÅ«ts.
VÄl nav skaidrs, vai maŔīnmÄcÄ«Å”anÄs sistÄmas radÄ«to darbu var uzskatÄ«t par atvasinÄtu. Rodas arÄ« jautÄjumi par to, vai uz maŔīnmÄcÄ«Å”anÄs modeli attiecas autortiesÄ«bas un, ja jÄ, tad kam Ŕīs tiesÄ«bas pieder un kÄ tÄs ir saistÄ«tas ar tiesÄ«bÄm uz kodu, uz kura modelis ir veidots.
No vienas puses, Ä£enerÄtie bloki var atkÄrtot teksta fragmentus no esoÅ”ajiem projektiem, bet, no otras puses, sistÄma atjauno koda struktÅ«ru, nevis kopÄ paÅ”u kodu. SaskaÅÄ ar GitHub pÄtÄ«jumu tikai 1% gadÄ«jumu Copilot ieteikumÄ var bÅ«t ietverti koda fragmenti no esoÅ”ajiem projektiem, kas ir garÄki par 150 rakstzÄ«mÄm. VairumÄ gadÄ«jumu atkÄrtojumi rodas, ja Copilot nevar pareizi noteikt kontekstu vai piedÄvÄ standarta risinÄjumus problÄmai.
Lai novÄrstu esoÅ”Ä koda aizstÄÅ”anu, Copilot ir pievienots Ä«paÅ”s filtrs, kas neļauj krustoties ar esoÅ”ajiem projektiem. IestatÄ«Å”anas laikÄ izstrÄdÄtÄjs var aktivizÄt vai atspÄjot Å”o filtru pÄc saviem ieskatiem. Starp citÄm problÄmÄm pastÄv iespÄja, ka sintezÄtais kods var atkÄrtot kļūdas un ievainojamÄ«bas, kas atrodas modeļa apmÄcÄ«Å”anai izmantotajÄ kodÄ.
Avots: opennet.ru