GitHub ha svelato la technical preview di GitHub Copilot, un nuovo “programmatore virtuale” che, grazie all’intelligenza artificiale, aiuta gli sviluppatori a scrivere codice migliore.
GitHub Copilot estrae il contesto dal codice su cui lo sviluppatore sta lavorando, suggerendo intere righe di codice o intere funzioni.
Lo strumento aiuta a scoprire rapidamente modi alternativi per risolvere i problemi, scrivere codice ed esplorare nuove API, senza dovere fare noiose ricerche su Internet per trovare le risposte ai dubbi.
Mentre lo sviluppatore è impegnato nella programmazione, GitHub Copilot si adatta al suo modo di scrivere codice per aiutarlo a completare il suo lavoro in modo più veloce.
Sviluppato in collaborazione con OpenAI, GitHub Copilot è alimentato da OpenAI Codex, un nuovo sistema di intelligenza artificiale creato da OpenAI.
OpenAI Codex ha un’ampia conoscenza di come le persone usano il codice ed è significativamente più efficace di GPT-3 nella generazione di codice. Ciò, in parte, perché è stato addestrato su un set di dati che include una concentrazione molto maggiore di codice sorgente pubblico.
Questo “assistente programmatore”, che aiuta a scrivere codice in modo più veloce e facendo meno lavoro, funziona con un ampio set di framework e lingue, ma questa anteprima tecnica funziona particolarmente bene per Python, JavaScript, TypeScript, Ruby e Go.
Lo strumento espande il proprio editor di codice: GitHub Copilot è al momento disponibile come estensione di Visual Studio Code. Funziona ovunque Visual Studio Code funzioni, mette in evidenza GitHub: sulla propria macchina o nel cloud su GitHub Codespaces. Ed è abbastanza veloce da essere usato mentre si scrive.
Seguendo la metafora di GitHub, se lo strumento è il “copilota”, il pilota rimane sempre lo sviluppatore, che conserva il pieno controllo del codice.
Lo sviluppatore può scorrere i suggerimenti alternativi, scegliere quali accettare o rifiutare e modificare manualmente il codice suggerito.
GitHub Copilot si adegua alle modifiche che fa lo sviluppatore, adattandosi al suo stile di codifica.