GitHub Copilot: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Etichette: Modifica da mobile Modifica da web per mobile
FrescoBot (discussione | contributi)
m Bot: numeri di pagina nei template citazione e modifiche minori
 
(9 versioni intermedie di 7 utenti non mostrate)
Riga 1:
{{Software
|Sviluppatore = [[GitHub]], [[Open AIOpenAI]]
|SistemaOperativo = [[Microsoft Windows]], [[Linux]], [[macOS]], [[Web]]
|Linguaggio =
Riga 6:
|Licenza =
|SoftwareLibero = sì
|SitoWeb = [https://copilot.github.com/ copilot.github.com]
}}
 
Line 12 ⟶ 11:
 
==Storia==
Il [[29 giugno]] 2021 GitHub annunciò il lancio di GitHub Copilot per l'anteprima tecnica nell'ambiente di sviluppo di Visual Studio Code.<ref name=":0" /><ref>{{Cita web|data=29 giugno 2021 |titolo=Introducing GitHub Copilot: your AI pair programmer |url=https://github.blog/2021-06-29-introducing-github-copilot-ai-pair-programmer/ |lingua=en}}</ref> Il [[29 ottobre]] 2021 GitHub Copilot fu rilasciato come [[plugin (informatica)|plug-in]] nel negozio elettronico di JetBrains.<ref>{{Cita web|titolo=GitHub Copilot - IntelliJ IDEs Plugin - Marketplace |url=https://plugins.jetbrains.com/plugin/17718-github-copilot/versions/stable}}</ref> Il [[27 ottobre]] 2021 GitHub pubblicò il plug-in GitHub Copilot Neovim come [[repository]] pubblico.<ref>{{Cita web|titolo=Copilot.vim |data=7 aprile 2022 |url=https://github.com/github/copilot.vim}}</ref> Il [[29 marzo]] 2022 fu annunciata la versione per Visual Studio.<ref>{{Cita web|data=29 marzo 2022 |titolo=GitHub Copilot now available for Visual Studio 2022 |url=https://github.blog/2022-03-29-github-copilot-now-available-for-visual-studio-2022/ |lingua=en}}</ref> Il [[21 giugno]] 2022 GitHub dichiarò che Copilot non era più nella fase di "[[anteprima]] tecnica" e che era disponibile come [[servizio web|servizio]] in abbonamento per sviluppatori singoli.<ref>{{Cita web|data=21 giugno 2022 |titolo=GitHub Copilot is generally available to all developers |url=https://github.blog/2022-06-21-github-copilot-is-generally-available-to-all-developers/ |lingua=en}}</ref>
 
==Caratteristiche==
Codex è in grado di generare codice risolutivo di problemi di programmazione viene formulati in [[linguaggio naturale]].<ref name=":1">{{Cita pubblicazione|cognome1=Finnie-Ansley |nome1=James |cognome2=Denny |nome2=Paul |cognome3=Becker |nome3=Brett A. |cognome4=Luxton-Reilly |nome4=Andrew |cognome5=Prather |nome5=James |data=14 febbraio 2022 |titolo=The Robots Are Coming: Exploring the Implications of OpenAI Codex on Introductory Programming |rivista=Australasian Computing Education Conference |serie=ACE '22 |città=New York, NY, USA |editore=Association for Computing Machinery |pp=10–1910-19 |doi=10.1145/3511861.3511863 |isbn=978-1-4503-9643-1}}</ref> È anche in grado di documentare il codice sorgente in inglese e di tradurlo in [[linguaggio di programmazione|linguaggi di programmazione]] differenti.<ref name=":1" />
 
Secondo il [[sito web]], GitHub Copilot include funzionalità di supporto per i programmatori, come la possibilità di convertire i commenti del codice in [[codice eseguibile]] e il completamento automatico per [[Codice a blocchi|blocchi di codice]], sezioni ripetitive di codice e interi [[Metodo (programmazione)|metodi]] e/o [[Funzione (informatica)|funzioni]].<ref name=":2" /><ref>{{Cita pubblicazione|cognome1=Sobania |nome1=Dominik |cognome2=Schweim |nome2=Dirk |cognome3=Rothlauf |nome3=Franz |data=2022 |titolo=A Comprehensive Survey on Program Synthesis with Evolutionary Algorithms |url=https://ieeexplore.ieee.org/abstract/document/9743417?casa_token=2vffB_1z0UsAAAAA:7YGw6NRDYQE9UBDPUdv7Ij7EwySLOMENhzzRmIYo5erRHv0qtESQn-lCkMAh35cWn-DVrcP69Q |rivista=IEEE Transactions on Evolutionary Computation |volume=27 |pp=82–9782-97 |doi=10.1109/TEVC.2022.3162324 |issn=1941-0026}}</ref> GitHub riferisce che la funzione di completamento automatico di Copilot è accurata al 50%; ad esempio, con un codice di intestazione di una funzione in Python, Copilot ha completato correttamente in automatico il resto del codice del corpo della funzione il 43% delle volte al primo tentativo e il 57% delle volte dopo dieci tentativi.<ref name=":2" />
 
GitHub afferma che le funzionalità di Copilot consentono ai programmatori di navigare al'interno di [[framework]] e [[Linguaggio macchina|linguaggi di codifica]] sconosciuti, riducendo la quantità di tempo dedicata alla lettura della documentazione.<ref name=":2" />
Line 24 ⟶ 23:
GitHub Copilot è alimentato da [[OpenAI Codex]]<ref>{{Cita web|cognome=Krill |nome=Paul |data=12 agosto 2021 |titolo=OpenAI offers API for GitHub Copilot AI model |url=https://www.infoworld.com/article/3629469/openai-offers-api-for-github-copilot-ai-model.html|lingua=en}}</ref>, una versione di produzione modificata del Generative Pre-addestrato Transformer 3 ([[GPT-3]]), un modello linguistico che utilizza il [[deep learning]] per produrre testo simile a quello umano.<ref>{{Cita web|data=3 giugno 2020 |titolo=OpenAI Releases GPT-3, The Largest Model So Far |url=https://analyticsindiamag.com/open-ai-gpt-3-language-model/|lingua=en}}</ref>
 
Il modello Codex è inoltre addestrato su [[byte|gigabyte]] di codice sorgente in una dozzina di linguaggi di programmazione diversi. Esso è addestrato su una selezione di [[lingua inglese]], atingendoattingendo a repository di GitHub pubblici e ad altro codice sorgente pubblicamente disponibile.<ref name=":2">{{Cita web|titolo=GitHub Copilot · Your AI pair programmer |url=https://copilot.github.com/}}</ref> In particolare, è incluso un [[dataset]] [[Filtro (software)|filtrato]] di 159 gigabyte di codice Python proveniente da 54 milioni di repository GitHub pubblici.<ref>{{Cita web|titolo=OpenAI Announces 12 Billion Parameter Code-Generation AI Codex |url=https://www.infoq.com/news/2021/08/openai-codex/ |lingua=en}}</ref>
GPT-3 di Open AI è concesso in licenza esclusivamente a [[Microsoft]], la casa madre di GitHub.<ref>{{Cita web|titolo=OpenAI is giving Microsoft exclusive access to its GPT-3 language model |url=https://www.technologyreview.com/2020/09/23/1008729/openai-is-giving-microsoft-exclusive-access-to-its-gpt-3-language-model/|lingua=en}}</ref>
 
Line 31 ⟶ 30:
 
===Controversie sulla licenza===
Nel giugno 2021 l'[[amministratore delegato]] di GitHub Nat Friedman affermò che "addestrare i sistemi [[machine learning|ML]] sui dati pubblici rientra nel [[fair use]]".<ref>{{Cita tweet|utente=natfriedman|numero=1409914420579344385|autore=Nat Friedman|titolo=In general: (1) training ML systems on public data is fair use|lingua=en|urlarchivio=https://web.archive.org/web/20210630043243/https://twitter.com/natfriedman/status/1409914420579344385}}</ref> Una [[class action|causa legale collettiva]] intentata nel novembre 2022 replicò che si trattava di "pura speculazione", asserendo che "nessun tribunale ha considerato la questione del fatto che "addestrare i sistemi di ML sui dati pubblici sia una forma di fair use".<ref name="class action suit">{{cita web|cognome1=Butterick |nome1=Matthew |titolo=GitHub Copilot litigation |url=https://githubcopilotlitigation.com/ |sito=githubcopilotlitigation.com |data=3 novembre 2022|urlarchivio=https://web.archive.org/web/20221103204107/https://githubcopilotlitigation.com/pdf/1-0-github_complaint.pdf}}</ref> La causa intentata dallo studio legale Joseph SavericontestaSaveri contesta diversi aspetti legali, che vanno dalla violazione del contratto con gli utenti di GitHub alla violazione della [[privacy]] ai sensi del [[California]] Consumer Privacy Act per quanto atiene alla condivisione dei [[dati personali]].<ref name="class action suit"/><ref name="Verge class action">{{Cita web|cognome=Vincent |nome=James |data=8 novembre 2022 |titolo=The lawsuit that could rewrite the rules of AI copyright |url=https://www.theverge.com/2022/11/8/23446821/microsoft-openai-github-copilot-class-action-lawsuit-ai-copyright-violation-training-data|lingua=en}}</ref>
 
GitHub ha confessato che una piccola parte dell'output può risultare letteralmente copiata, cosa che ha fatto temere che il codice di output non sia sufficientemente trasformativo per essere classificato come fair use e possa violare il [[copyright]] del proprietario originale.<ref name="Verge legal" >{{cita news|url=https://www.theverge.com/2021/7/7/22561180/github-copilot-legal-copyright-fair-use-public-code|titolo=GitHub's automatic coding tool rests on untested legal ground|data=7 luglio 2021|opera=[[The Verge (sito web)|The Verge]]}}</ref> Nel giugno 2022, la [[Software Freedom Conservancy]] notificò il divieto di usare GitHub all'interno dei propri progetti<ref>{{Cita web|titolo=Give Up GitHub: The Time Has Come! |url=https://sfconservancy.org/blog/2022/jun/30/give-up-github-launch/|lingua=en}}</ref>, accusando Copilot di ignorare le licenze di rilascio del codice presenti nei dati di addestramento.<ref>{{Cita web|titolo=If Software is My Copilot, Who Programmed My Software? |url=https://sfconservancy.org/blog/2022/feb/03/github-copilot-copyleft-gpl/ |lingua=en}}</ref> In un messaggio di assistenza clienti, GitHub sostenne che "l'addestramento di modelli di machine learning su dati pubblicamente disponibili è considerato fair use da parte della comunità del machine learning. L'azione legale collettiva definì ciò "falso", osservando altresì che "indipendentemente dal livello di accettazione di questo concetto nella 'comunità del machine learning', secondo la legge federale, è illegale".<ref name="class action suit" />
 
===Libri bianchi della FSF===
Il [[28 luglio]] 2021, la [[Free Software Foundation]] (FSF) pubblicò un bancobando retribuito per la presentazione di un [[libro bianco]] relativo a questioni filosofiche e legali relative a Copilot.<ref name=FSFCall>{{cita web|url=https://www.fsf.org/blogs/licensing/fsf-funded-call-for-white-papers-on-philosophical-and-legal-questions-around-copilot |titolo=FSF-funded call for white papers on philosophical and legal questions around Copilot |editore=Free Software Foundation |data=28 luglio 2021}}</ref> Donald Robertson, Licensing and Compliance Manager della FSF, disse che "Copilot solleva molte [...] domande che richiedono un esame più approfondito".<ref name=FSFCall /> Il [[24 febbraio]] 2022, la FSF comunicò di aver ricevuto 22 documenti sull'argomento e di averne selezionato 5 a conclusione di un processo di revisione anonimo.<ref>{{cita web|url=https://www.fsf.org/news/publication-of-the-fsf-funded-white-papers-on-questions-around-copilot |titolo=Publication of the FSF-funded white papers on questions around Copilot |data=24 febbraio 2022}}</ref>
 
===Problemi di privacy===
Il servizio Copilot è basato sul cloud e richiede una comunicazione continua con i [[server]] di GitHub Copilot.<ref>{{cita web|titolo=GitHub Copilot - Your AI pair programmer |url=https://github.com/features/copilot/#faq-privacy}}</ref> Questa [[Architettura (computer)|architettura]] opaca ha alimentato preoccupazioni circa il rischio di [[telemetria]] e [[data mining|estrazione di dati]] a fronte di eventi asincroni azionati dal mondo esterno e ricnosciutiriconosciuti dal programma.<ref>{{cita web|titolo=CoPilot: Privacy & DataMining |url=https://github.com/community/community/discussions/7263}}</ref><ref>{{cita web|titolo=Who does that server really serve?|url=https://www.gnu.org/philosophy/who-does-that-server-really-serve.en.html}}</ref>
 
===Problemi di sicurezza===
Un documento accettato per la pubblicazione nell'[[IEEE]] Symposium on Security and Privacy nel 2022 ha valutato la sicurezza del codice generato da Copilot per i 25 principali di punti di debolezza del codice enumerati dal protocollo MITRE (ad es. il cross-site scripting, [[Directory traversal attack|path traversal]]), nell'ambito di 89 diversi [[Scenario di test|scenari]] e 1.689 programmi.<ref name=":4" /> Ciò fu fatto lungo gli [[asse cartesiano|assi]] della diversità dei punti deboli (la sua capacità di risposta a scenari che possono introdurre vari punti deboli nel codice), diversità dei [[prompt]] (la sua capacità di rispondere ad una stessa debolezza del codice con variazioni minime, [[analisi di sensitività]]) e diversità di [[Dominio (informatica)|domini]] (la sua capacità di generare specifiche [[hardware]] a livello di trasferimento del [[Security log|registro]] in [[Verilog]]).<ref name=":4" /> Lo studio rilevò che attraverso questi assi in molteplici lingue, il 39,33% dei migliori suggerimenti e il 40,73% dei suggerimenti totali avevano condotto a [[Vulnerabilità informatica|vulnerabilità]] del codice. Inoltre, rivelarono che anche piccole modifiche non semantiche (ovvero commenti) apportate al codice riuscivano a incidere sulla sicurezza di quest'ultimo.<ref name=":4" />
 
===Problemi relativi al mondo della scuola===
Line 52 ⟶ 51:
In VS Code e Visual Studio il programma integra una [[chat]] simile a [[ChatGPT]], oltre al supporto vocale per la dettatura diretta del codice.<ref>{{cita web|url=https://www.punto-informatico.it/github-copilot-x/|titolo=GitHub Copilot X: GPT-4 per gli sviluppatori}}</ref>
 
== Replit Ghostwriter ==
[[Replit Ghostwriter]] il concorrente diretto di Google che offre funzionalità di testing, software collaborativo e distribuzione delle app.<ref>{{cita web|url=https://www.punto-informatico.it/google-replit-sfida-github-copilot/|titolo=Google si allea con Replit per sfidare GitHub Copilot}}</ref>
 
Line 59 ⟶ 58:
 
==Collegamenti esterni==
* {{Collegamenti esterni}}
* {{Cita web|lingua=en|url=https://copilot.github.com/|titolo=Sito ufficiale}}
 
{{controllo di autorità}}
 
{{portale|informatica}}
 
[[Categoria:Elaboratori di linguaggio naturale liberi]]
[[Categoria:Software scientifici]]