GitHub e OpenAI presentano Copilot AI Assistant per la scrittura di codice

GitHub e OpenAI hanno creato un assistente virtuale basato sull'AI per assistere i developer mentre creano il codice di sviluppo. Gli algoritmi sono un'evoluzione di GPT-3 dedicata a questo contesto. Scopriamo come funziona!

GitHub e OpenAI presentano Copilot AI Assistant per la scrittura di codice

Cos'è GitHub Copilot?

Si tratta di un nuovo assistente virtuale che aiuterà gli sviluppatori a scrivere codice durante la creazione di software, sfruttando l'intelligenza artificiale.
Il sistema è basato su Codex, ovvero una versione migliorata del noto modello di linguaggio GPT-3 di OpenAI dedicata alla collaborazione in un progetto di sviluppo.

Come funziona?

GitHub Copilot sfrutta il concetto dell'elaborazione del linguaggio naturale (NLP) e lo applica al dominio dei linguaggi di programmazione.
L'idea è quella di imitare una tecnica agile si sviluppo del software definita "pair programming", che consiste in due developers nella stessa postazione: uno dei due conduce lo sviluppo e scrive il codice, mentre l'altro supervisiona e revisiona in tempo reale.

L'AI prende il ruolo dell'osservatore, e attraverso Codex cerca di comprendere gli obiettivi dello sviluppatore "conducente", fornendo suggerimenti per completarli.
Come GPT-3, Codex è costruito su un'enorme raccolta di dati per insegnare all'intelligenza artificiale come intervenire sul codice. Il sistema apprende dai suggerimenti che l'utente umano accetta o rifiuta, affinando la sua conoscenza e offrendo idealmente idee di codice sempre migliori.

GitHub Copilot comprende il contesto dal codice su cui stai lavorando, suggerendo righe di codice o intere funzioni,

ha spiegato il CEO di GitHub Nat Friedman in un post sul blog che presenta il nuovo strumento. E continua..

Ti aiuta a scoprire rapidamente modi alternativi per risolvere problemi, implementare test ed esplorare nuove API senza dover adattare noiosamente una soluzione trovata sul web. Durante la digitazione, si adatta al modo in cui scrivi il codice, per aiutarti a completare il tuo lavoro più velocemente.
GitHub Copilot, un esempio di completamento del codice
GitHub Copilot, un esempio di completamento del codice

Le versioni e i linguaggi

GitHub Copilot è disponibile in anteprima su Microsoft Visual Studio Code; la versione a pagamento sarà presto disponibile.
L'IA è già in grado di supportare la maggior parte dei linguaggi di programmazione ma è maggiormente "allenata" sui più diffusi, come JavaScript, Python, TypeScript, Ruby e Go.

Come per con GPT-3, Microsoft ha accesso esclusivo a Codex, ma OpenAI sta pianificando di estendere presto una versione del modello anche a sviluppatori di terze parti.

GitHub Copilot è basato su OpenAI Codex,

ha scritto Friedman.

OpenAI Codex ha un'ampia conoscenza di come le persone usano il codice ed è significativamente più capace di GPT-3 su questo, principalmente perché è stato addestrato su un set di dati che include una concentrazione molto più ampia di codice sorgente pubblico.

Quanto è performante GitHub Copilot?

Di recente è stato fatto un test per rispondere a questa domanda. È stato selezionato un insieme di funzioni Python ben testate all'interno delle repository open source. Sono stati cancellati i "corpi" delle funzioni, chiedendo a Copilot di completarle.

Il modello ha generato codice corretto il 43% delle volte al primo tentativo, e il 57% con tentativi.

GitHub Copilot scrive codice perfetto?

No! Il sistema cerca di comprendere l'intento dell'utente e di generare il miglior codice possibile, ma il codice che suggerisce potrebbe non funzionare sempre. Ciò che viene generato dai suggerimenti va sempre rivisto e testato: gli sviluppatori sono insostituibili, e rimangono al comando.


Per approfondire

GitHub Copilot · Your AI pair programmer
GitHub Copilot works alongside you directly in your editor, suggesting whole lines or entire functions for you.
Introducing GitHub Copilot: your AI pair programmer | The GitHub Blog
Today, we’re launching a technical preview of GitHub Copilot, a new AI pair programmer that helps you write better code.
GPT-3: dialoghi con l’intelligenza artificiale di OpenAI
Cos’è GPT-3 di OpenAI? Si tratta di un’intelligenza artificiale molto evoluta. Dopo un lungo periodo d’attesa sono stato abilitato all’utilizzo del programma beta delle API. Come funziona? Lo vediamo insieme!
Visual Studio Code - Code Editing. Redefined
Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.