A giugno 2022 GitHub Copilot è uscito dalla fase di beta testing ed è diventato un servizio fruibile da parte di chiunque per scrivere codice di programmazione usando l’intelligenza artificiale.
Gratuito per docenti e studenti, a pagamento per tutti gli altri (è prevista una tria di 60 giorni), Copilot è diventato talmente popolare che sarebbe responsabile della stesura del 40% del codice ospitato su GitHub.
Amazon poteva rimanere a guardare (GitHub è di proprietà di Microsoft)? Certamente no. Ed ecco quindi che la società guidata da Jeff Bezos ha presentato il suo CodeWhisperer, uno strumento che come Copilot si basa sull’intelligenza artificiale e che consente agli sviluppatori di ottenere codice funzionante già pronto semplicemente scrivendo il nome di una funzione o descrivendo ciò che si desidera con il linguaggio naturale.
Anche CodeWhisperer è stato addestrato con milioni di righe di codice pubblicamente accessibili e per adesso supporta Java, JavaScript e Python.
Per ora disponibile in anteprima come parte di AWS IDE Toolkit può essere utilizzato da ogni sviluppatore all’interno di qualunque IDE, inclusi Visual Studio Code, IntelliJ IDEA, PyCharm, WebStorm e Amazon AWS Cloud 9. Non è ancora supportato da AWS Lambda, la console della piattaforma cloud di Amazon, ma lo sarà in futuro.
Nella presentazione di CodeWhisperer, Amazon ha voluto chiarire che lo strumento in realtà non vuole essere una risposta a Copilot. Un’interessante differenza tra CodeWhisperer e Copilot è che se il sistema di Amazon riproduce un codice simile a quello che già visto durante la sua fase di addestramento lo farà presente all’utente in modo che il programmatore possa decidere se utilizzarlo o meno.
Diversamente rispetto a Copilot, CodeWhisperer effettua una scansione del codice proposto all’utente per rilevare eventuali problemi di sicurezza.
Durante la presentazione, inoltre, è stato messo in evidenza come il team di Amazon abbia lavorato per garantire che il codice generato da CodeWhisperer non contenga problemi. Il sistema dovrebbe essere in grado di riconoscerli e di rimuovere il codice imperfetto.