GitHub lëshon sistemin e mësimit të makinerisë Copilot që gjeneron kodin

GitHub njoftoi se ka përfunduar testimin e asistentit inteligjent GitHub Copilot, i cili mund të gjenerojë konstruksione gjenerike gjatë shkrimit të kodit. Sistemi u zhvillua në bashkëpunim me projektin OpenAI dhe përdor platformën e mësimit të makinerisë OpenAI Codex, të trajnuar në një grup të madh kodesh burimore të vendosura në depot publike të GitHub. Shërbimi është falas për mirëmbajtësit e projekteve të njohura me burim të hapur dhe studentët. Për kategori të tjera përdoruesish, aksesi në GitHub Copilot paguhet (10 dollarë në muaj ose 100 dollarë në vit), por qasja në provë falas ofrohet për 60 ditë.

Gjenerimi i kodit mbështetet në gjuhët e programimit Python, JavaScript, TypeScript, Ruby, Go, C# dhe C++ duke përdorur korniza të ndryshme. Modulet janë të disponueshme për të integruar GitHub Copilot me Neovim, JetBrains IDE, Visual Studio dhe Visual Studio Code. Duke gjykuar nga telemetria e mbledhur gjatë procesit të testimit, shërbimi ju lejon të gjeneroni kod me cilësi mjaft të lartë - për shembull, 26% e rekomandimeve të propozuara në GitHub Copilot u pranuan nga zhvilluesit ashtu siç janë.

GitHub Copilot ndryshon nga sistemet tradicionale të plotësimit të kodit në aftësinë për të formuar blloqe kodi mjaft komplekse, deri në funksione të gatshme të sintetizuara duke marrë parasysh kontekstin aktual. GitHub Copilot përshtatet me mënyrën se si një zhvillues shkruan kodin dhe merr parasysh API-të dhe kornizat e përdorura në program. Për shembull, nëse ka një shembull të një strukture JSON në koment, kur filloni të shkruani një funksion për të analizuar këtë strukturë, GitHub Copilot do të ofrojë kod të gatshëm dhe kur shkruan numërime rutinë të përshkrimeve të përsëritura, ai do të formojë pjesën e mbetur. pozicionet.

GitHub lëshon sistemin e mësimit të makinerisë Copilot që gjeneron kodin

Aftësia e GitHub Copilot për të gjeneruar blloqe kodesh të para-ndërtuara ka çuar në polemika mbi shkeljen e mundshme të licencës së copyleft. Gjatë formimit të modelit të mësimit të makinerisë, u përdorën tekste burimore reale nga depot e projekteve të hapura të pritura në GitHub. Shumë prej këtyre projekteve dërgohen me licenca të kopjimit, të tilla si GPL, të cilat kërkojnë që kodi i veprave të derivuara të dërgohet nën një licencë të përputhshme. Ngjitja e kodit ekzistues të ofruar nga Copilot mund të shkelë padashur licencën e projektit nga i cili është huazuar kodi.

Nuk është ende e qartë nëse një punë e krijuar nga një sistem i mësimit të makinerive mund të konsiderohet një derivat. Gjithashtu lindin pyetje nëse një model i mësimit të makinës i nënshtrohet të drejtës së autorit dhe, nëse po, kush i zotëron këto të drejta dhe si lidhen ato me të drejtat për kodin mbi të cilin është ndërtuar modeli.

Nga njëra anë, blloqet e krijuara mund të përsërisin pasazhe të tekstit nga projektet ekzistuese, por nga ana tjetër, sistemi rikrijon strukturën e kodit dhe nuk kopjon vetë kodin. Sipas një studimi të GitHub, vetëm 1% e rekomandimeve të sugjeruara të Copilot përfshijnë copa kodi nga projektet ekzistuese më të mëdha se 150 karaktere. Në shumicën e situatave, përsëritjet ndodhin kur Copilot nuk arrin të përcaktojë saktë kontekstin ose të sigurojë zgjidhje të përgjithshme për një problem.

Për të parandaluar zëvendësimin e kodit ekzistues, një filtër special është shtuar në Copilot që nuk lejon mbivendosje me projektet ekzistuese. Gjatë konfigurimit, zhvilluesi mund ta aktivizojë ose çaktivizojë këtë filtër sipas gjykimit të tij. Ndër problemet e tjera, vihet re mundësia që kodi i sintetizuar të përsërisë gabimet dhe dobësitë e pranishme në kodin e përdorur për të trajnuar modelin.

Burimi: opennet.ru

Shto një koment