Introduzione della modalità agente per GitHub Copilot in VS Code, annuncio della disponibilità generale di Copilot Edits e anteprima del nostro agente SWE.
Dal lancio di GitHub Copilot nel 2021, l’obiettivo è stato chiaro: semplificare il lavoro degli sviluppatori con un assistente AI in grado di supportarli nella scrittura di codice migliore. Il nome stesso riflette la convinzione che l’intelligenza artificiale non debba sostituire lo sviluppatore, ma affiancarlo. Come ogni valido copilota, può operare in autonomia, ad esempio fornendo feedback sulle pull request, risolvendo vulnerabilità di sicurezza o suggerendo strategie per l’implementazione di una funzionalità.
Oggi GitHub Copilot si evolve con un’intelligenza ancora più agentica, introducendo la modalità agente e rendendo Copilot Edits disponibile per tutti gli utenti di VS Code. Inoltre, viene aggiunto Gemini 2.0 Flash al selettore di modelli e presentata un’anteprima del nuovo agente autonomo di Copilot, nome in codice Project Padawan. Dai completamenti di codice alla chat, dalle modifiche multi-file alla gestione dello spazio di lavoro, Copilot continua a mettere gli sviluppatori al centro del processo creativo, alleggerendo i compiti ripetitivi per lasciare più spazio alle attività che contano davvero.
Modalità agente disponibile in anteprima
La nuova modalità agente di GitHub Copilot è in grado di iterare sul proprio codice, individuare errori e correggerli automaticamente. Può anche suggerire comandi da terminale e chiedere di eseguirli, analizzando gli errori di runtime con capacità di auto-riparazione.
In questa modalità, Copilot non si limita a iterare sul proprio output, ma anche sul risultato di tale output, continuando a iterare fino a quando tutte le sottoattività necessarie per completare il prompt non saranno state eseguite. Copilot ora non si limita a completare l’attività richiesta, ma può dedurre attività aggiuntive non specificate, ma comunque essenziali per il corretto funzionamento della richiesta principale. Inoltre, è in grado di rilevare i propri errori, eliminando la necessità di copiare e incollare tra terminale e chat.
Un esempio concreto di utilizzo di GitHub Copilot in modalità agente potrebbe essere la creazione di un’app web per monitorare l’allenamento per una maratona. Per avviare la modalità agente, è necessario scaricare VS Code Insiders e abilitare l’impostazione relativa a GitHub Copilot Chat.
Nel pannello Modifiche Copilot, basta passare dalla modalità “Modifica” a “Agente” accanto al selettore modello.
La modalità agente cambierà il modo in cui gli sviluppatori lavorano all’interno del loro editor. Per questo motivo, verrà estesa a tutti gli IDE supportati da Copilot. Si riconosce che la versione Insiders attuale non è perfetta, ma si accoglie con favore il feedback degli utenti mentre vengono apportati miglioramenti sia a VS Code che alla tecnologia agentica nei prossimi mesi.
Copilot Edits, ora disponibile in VS Code
Annunciato al GitHub Universe nell’ottobre scorso, Copilot Edits unisce il meglio di Chat e Inline Chat, offrendo un flusso conversazionale e la possibilità di apportare modifiche inline su un set di file gestiti. Il feedback degli utenti fornito in passato ha giocato un ruolo cruciale nel rendere disponibile questa funzionalità come versione stabile (GA) in VS Code.
Con Copilot Edits, è possibile specificare un set di file da modificare e, successivamente, utilizzare il linguaggio naturale per comunicare a GitHub Copilot le proprie necessità. Copilot Edits applica modifiche in linea direttamente nell’area di lavoro, su più file simultaneamente, grazie a un’interfaccia utente progettata per un’iterazione rapida. In questo modo, gli sviluppatori possono rimanere concentrati sul codice, rivedendo le modifiche suggerite, accettando quelle valide e facendo iterazioni con richieste di follow-up.
Dietro le quinte, Copilot Edits sfrutta un’architettura a doppio modello per migliorare l’efficienza e l’accuratezza dell’editing. Un modello linguistico di base considera l’intero contesto della sessione di editing per generare i suggerimenti di modifica iniziali. È possibile scegliere tra vari modelli linguistici, come GPT-4o, o1, o3-mini di OpenAI, Claude 3.5 Sonnet di Anthropic e, ora, Gemini 2.0 Flash di Google. Per ottimizzare l’esperienza, è stato sviluppato un endpoint di decodifica speculativa, progettato per applicare rapidamente le modifiche ai file. Le modifiche suggerite dal modello linguistico vengono inviate all’endpoint di decodifica speculativa, che propone tali modifiche in linea nell’editor.
Copilot Edits funziona perché permette all’utente di essere sempre al comando, dall’impostazione del contesto giusto all’accettazione delle modifiche. L’esperienza è iterativa: se il modello commette un errore, è possibile rivedere le modifiche su più file, accettare quelle corrette e ripetere il processo finché non si arriva alla soluzione ottimale. Una volta accettate le modifiche, è possibile eseguire il codice per verificarle e, se necessario, annullare le modifiche in Copilot Edits per tornare a uno stato di lavoro precedente. Copilot Edits si trova nella barra laterale secondaria (di default a destra), permettendo di interagire con altre viste nella barra laterale primaria, come Explorer, Debug o Source Control, mentre si esaminano le modifiche proposte. Ad esempio, è possibile eseguire test unitari nella vista Testing a sinistra mentre si utilizza Copilot Edits a destra, per verificare se le modifiche proposte superano i test.
L’utilizzo vocale con Copilot Edits risulta naturale, facendo sembrare l’interazione fluida e colloquiale, come se si stesse collaborando con un collega esperto, seguendo lo stesso tipo di flusso iterativo tipico della programmazione in coppia.
Il prossimo passo sulla roadmap prevede il miglioramento delle prestazioni dell’endpoint di decodifica speculativa per applicare le modifiche, supportare le transizioni in Copilot Edits da Copilot Chat preservando il contesto, suggerire file per il set di lavoro e consentire l’annullamento dei blocchi di modifiche suggerite. Per provare questi miglioramenti in anticipo, è possibile utilizzare la versione Insiders di VS Code e la versione pre-release dell’estensione GitHub Copilot Chat. Per contribuire a migliorare la funzionalità, è possibile segnalare eventuali problemi nel repository.
Oltre alla disponibilità generale in VS Code, Copilot Edits è ora disponibile in anteprima anche per Visual Studio 2022.
Fonte: Thomas Dohmke.
Leave a comment