GitHub Copilot

GitHub Copilot
Type SaaS
Udvikler GitHub , OpenAI
Operativ system Microsoft Windows , Linux , macOS , web
nyeste version 1.28.6134
Test version 1.28.6136
Internet side copilot.github.com

GitHub Copilot er et AI -  værktøjudviklet i fællesskab afGitHub og OpenAI for at hjælpe brugere af IDE'er som Visual Studio Code , Visual Studio , Neovim og JetBrains med kodefuldførelse [1] . Værktøjet blev først annonceret den 29. juni 2021 og var kun tilgængeligt som forhåndsvisning indtil den 21. juni 2022 . Det er bedst egnet til brugere, der koder i Python , JavaScript , TypeScript , Ruby og Go [2] [3] .

Historie

Den 29. juni 2021 annoncerede GitHub GitHub Copilot som en udvidelse i preview til Visual Studio Code [4] [5] .

Den 26. oktober 2021 blev dette værktøj udgivet som et plugin på JetBrains Marketplace [6] .

Den 27. oktober 2021 udgav GitHub GitHub Copilot-pluginet til Neovim som et offentligt lager [7] .

Den 29. marts 2022 blev tilgængeligheden af ​​Copilot til Visual Studio 2022 [8] officielt annonceret .

Den 21. juni var der en officiel meddelelse om Copilots udtræden af ​​den foreløbige test og dens tilgængelighed for alle via et abonnementssystem [9] .

Funktioner

GitHub Copilot drevet af OpenAI Codex, en kunstig intelligens-model skabt af OpenAI  , et forskningslaboratorium for kunstig intelligens [10] . OpenAI Codex  er en modificeret produktionsversion af den Generative Pre-trained Transformer 3 ( GPT-3 ) sprogmodel, der bruger dyb læring til at skabe menneskelignende tekst [11] . For eksempel, givet et naturligt sprog programmeringsproblem, kan Codex generere kode for at løse det [12] . Den kan også beskrive inputkode på engelsk og oversætte kode mellem programmeringssprog [12] . Codex GPT-3- licensen gives udelukkende til Microsoft , GitHubs moderselskab [13] .

OpenAI Codex i Copilot trænes på udvalgte offentlige GitHub -depoter på engelsk og anden offentlig kildekode [14] . Dette inkluderer et filtreret datasæt på 159 gigabyte Python -kode hentet fra 54 millioner offentlige GitHub -depoter [15] .

Ifølge sin egen hjemmeside indeholder GitHub Copilot hjælpefunktioner til programmører, såsom at konvertere kommentarer til eksekverbar kode og autofuldførelse for kodestykker, gentagne sektioner af kode og hele metoder eller funktioner [14] [16] . GitHub rapporterer, at Copilots autofuldførelsesfunktion er nøjagtig omkring halvdelen af ​​tiden; for eksempel, med en eller anden kode indstillet til en Python -funktionsheader , autofuldførte Copilot korrekt resten af ​​funktionstekstkoden 43 % af tiden ved første forsøg og 57 % af gangene efter ti forsøg [3] .

GitHub hævder, at Copilot-funktioner tillader programmører at navigere i ukendte rammer og sprog, hvilket reducerer mængden af ​​tid brugt på at læse dokumentation [14] .

Accept

Siden udgivelsen af ​​Copilot er der begyndt at opstå bekymringer om dens sikkerhed og pædagogiske indvirkning, såvel som kontroverser om licenseringen af ​​den kode, den skaber [17] [18] .

Licenskontrovers

Mens det meste af kodeoutputtet af Copilot kan klassificeres som transformationsarbejde, anerkender GitHub , at en lille del af den blev kopieret ordret, hvilket førte til bekymring over det faktum, at den resulterende kode ikke var tilstrækkeligt konverteret til at blive klassificeret som rimelig brug og kunne krænke den oprindelige ejers ophavsret [2] . Denne kendsgerning efterlader Copilot på et ubekræftet juridisk grundlag, selvom GitHub siger, at "træning af maskinlæringsmodeller på offentlige data betragtes som rimelig brug i maskinlæringsfællesskabet" [17] .

FSF officielle dokumenter

Den 28. juli 2021 udgav Free Software Foundation ( FSF ) en finansieret opfordring til hvidbøger om filosofiske og juridiske spørgsmål relateret til Copilot [19] . Donald Robertson , Licensing and Compliance Manager for FSF , udtalte, at " Copilot rejser en masse […] spørgsmål, som skal undersøges mere dybt" [19] . Den 24. februar 2022 meddelte FSF, at de havde modtaget 22 artikler om emnet og udvalgte 5 af dem til at fremhæve gennem en anonym gennemgangsproces [20] .

Sikkerhedsproblemer

Accepteret til offentliggørelse af Institute of Electrical and Electronics Engineers '2022 Security and Privacy Symposium, sikkerheden af ​​Copilot-genereret kode blev vurderet for 25 store MITER -kodesårbarheder (f.eks. cross-site scripting, stigennemgang) i 89 forskellige scenarier og 1.689 programmer [21] . Dette blev gjort langs akserne af svaghedsdiversitet (evnen til at reagere på scenarier, der kunne føre til forskellige kodesårbarheder), hintdiversitet (evnen til at reagere på den samme kodesårbarhed med små variationer) og domænediversitet (evnen til at generere register transfer layer hardware specifikationer) i Verilog ) [21] . Undersøgelsen fandt, at på tværs af sprog, langs disse akser, fører 39,33 % af de bedste forslag og 40,73 % af de samlede forslag til skabelsen af ​​sårbarheder i koden. Derudover har det vist sig, at små ikke-semantiske (som kommentarer) ændringer i koden kan påvirke dens sikkerhed [21] .

Uddannelsesmæssige spørgsmål

Et papir udgivet i februar 2022 af Association for Computing Machinery , vurderer virkningen af ​​Codex , teknologien brugt af Github Copilot , til at undervise uerfarne programmører [18] . Undersøgelsen bruger vurderingsspørgsmål fra en indledende programmeringsklasse ved University of Auckland og sammenligner Codex -svar med elevernes præstationer [12] . Forskerne fandt ud af, at Codex i gennemsnit klarede sig bedre end de fleste studerende; dens ydeevne blev dog langsommere på spørgsmål med begrænsede muligheder, der kan bruges i løsningen (f.eks. betingede udsagn , samlinger og loops ) [12] . I betragtning af problemet var "kun 2 ud af 10 [ Codex ] beslutninger korrekte, men begge […] overtrådte de etablerede begrænsninger." Papiret konkluderer, at Codex kan være nyttigt til at give eleverne en række forskellige løsninger, men kan også føre til overmod og plagiat [12] .

Se også

Noter

  1. Gershhorn, Dave. GitHub og OpenAI lancerer et nyt AI-værktøj, der genererer sin egen  kode . The Verge (29. juni 2021). Hentet 13. juni 2022. Arkiveret fra originalen 7. juli 2021.
  2. ↑ 1 2 GitHub Copilot Din AI-  parprogrammør . GitHub Copilot . Hentet 13. juni 2022. Arkiveret fra originalen 19. juni 2022.
  3. Gershgorn. GitHub og OpenAI lancerer et nyt AI-værktøj, der genererer sin egen kode . The Verge (29. juni 2021). Hentet 6. juli 2021. Arkiveret fra originalen 7. juli 2021.
  4. Introduktion til GitHub Copilot: din AI-  parprogrammør . GitHub-bloggen (29. juni 2021). Hentet 13. juni 2022. Arkiveret fra originalen 21. juni 2022.
  5. GitHub Copilot - IntelliJ IDEs Plugin | Markedsplads  (engelsk) . JetBrain Marketplace . Hentet 7. april 2022. Arkiveret fra originalen 27. juni 2022.
  6. Neovim-plugin til GitHub  Copilot . GitHub (27. oktober 2021). Hentet 13. juni 2022. Arkiveret fra originalen 13. juni 2022.
  7. GitHub Copilot nu tilgængelig til Visual Studio   2022 ? . GitHub-bloggen (29. marts 2022). Hentet 7. april 2022. Arkiveret fra originalen 14. juni 2022.
  8. GitHub Copilot er generelt tilgængelig for alle  udviklere . GitHub-bloggen (21. juni 2022). Hentet 23. juni 2022. Arkiveret fra originalen 23. juni 2022.
  9. Crill. OpenAI tilbyder API til GitHub Copilot AI-model  . InfoWorld (12. august 2021). Hentet 7. april 2022. Arkiveret fra originalen 17. april 2022.
  10. OpenAI udgiver GPT-3, den  hidtil største model . Analytics India Magazine (3. juni 2020). Hentet 13. juni 2022. Arkiveret fra originalen 4. august 2020.
  11. ↑ 1 2 3 4 5 Finney-Ansley, James (14. februar 2022). "Robotterne kommer: Udforskning af implikationerne af OpenAI Codex om indledende programmering" . Australasian Computing Education Conference . Foreningen for Datamaskiner: 10-19. DOI : 10.1145/3511861.3511863 . ISBN  978-1-4503-9643-1 .
  12. ↑ OpenAI giver Microsoft eksklusiv adgang til sin GPT -3 sprogmodel  . MIT Technology Review . Hentet 7. april 2022. Arkiveret fra originalen 5. februar 2021.
  13. 1 2 3 GitHub Copilot · Din AI-parprogrammør . GitHub Copilot . Hentet 7. april 2022. Arkiveret fra originalen 19. juni 2022.
  14. Alford, Anthony. OpenAI annoncerer 12 milliarder Parameter Code-Generation AI  Codex . InfoQ . Hentet 13. juni 2022. Arkiveret fra originalen 9. juli 2022.
  15. Sobania, Dominic (2022). "En omfattende undersøgelse af programsyntese med evolutionære algoritmer" . IEEE-transaktioner på evolutionær beregning : 1. DOI : 10.1109/TEVC.2022.3162324 . ISSN  1941-0026 . Arkiveret fra originalen 2022-04-01 . Hentet 2022-06-13 . Forældet parameter brugt |deadlink=( hjælp )
  16. 1 2 GitHubs automatiske kodningsværktøj hviler på uprøvet juridisk grundlag , The Verge  (7. juli 2021). Arkiveret fra originalen den 11. juli 2021. Hentet 11. juli 2021.
  17. 1 2 Finnie-Ansley, James (14. februar 2022). "Robotterne kommer: Udforskning af implikationerne af OpenAI Codex om indledende programmering" . Australasian Computing Education Conference . Foreningen for Datamaskiner: 10-19. DOI : 10.1145/3511861.3511863 . ISBN  978-1-4503-9643-1 .
  18. 1 2 FSF-finansieret opfordring til hvidbøger om filosofiske og juridiske spørgsmål omkring Copilot . Free Software Foundation (28. juli 2021). Hentet 11. august 2021. Arkiveret fra originalen 11. august 2021.
  19. ↑ Udgivelse af de FSF-finansierede hvidbøger om spørgsmål omkring Copilot  . Free Software Foundation (24. februar 2022). Hentet 13. juni 2022. Arkiveret fra originalen 16. juni 2022.
  20. ↑ 1 2 3 Hammond Pierce, Bali Ahmad, Benjamin Tan, Brendan Dolan-Gavitt, Ramesh Curry. Sover du ved tastaturet? Vurdering af sikkerheden af ​​GitHub Copilots kodebidrag  //  arXiv:2108.09293 [cs]. — 2021. Arkiveret den 21. juni 2022.