Intelligenza ArtificialeDXC Technology

L'IA è matura come assistente per la scrittura di codice? Il punto di vista di DXC Technology

di , Vittorio Manti pubblicata il , alle 16:01 nel canale data L'IA è matura come assistente per la scrittura di codice? Il punto di vista di DXC Technology

Abbiamo intervistato Remo Dentato, Italy Applications Service line Manager di DXC Technology, per capire come l'azienda utilizza l'IA e, nello specifico, su come questa tecnologia - che definisce dirompente - può essere di supporto per velocizzare la scrittura di codice

 

L’IA generativa sta entrando in sempre più ambiti, ma uno di quelli dove il suo impatto è più dirompente è la scrittura di codice. Secondo Remo Dentato, Italy Applications Service line Manager di DXC Technology è a tutti gli effetti “una tecnologia disruptive. Il vantaggio che può portare ai programmatori è che li rende molto più produttivi”. Non sostituirà, come si può erroneamente pensare, la necessità di programmatori, ma può accelerare i “processi di comprensione”, soprattutto in ambiti completamente nuovi. Dentato cita l’utilizzo di CodeWhisperer, il generatore di codice basato su IA di AWS, sottolineando anche che i vantaggi sono evidenti “quando lo scopo è molto limitato”. Come, per esempio, gli script per automatizzare attività su AWS.

L’IA per scrivere codice: vantaggi e limiti

remo dentato

L’IA sarebbe in grado di scrivere un videogioco? Assolutamente sì, se per videogioco si intende un semplice clone di Snake senza grandi pretese. Se però chiediamo all’IA di scrivere il codice per un gioco AAA, i limiti emergono immediatamente. Dentato spiega come in DXC Technologies l’IA viene utilizzata come se fosse copilota nella gestione di progetti complessi, anche nelle fasi che non richiedono necessariamente di programmare. Un’IA può indicarti subito se i requisiti indicati sul progetto sono ben pensati o, al contrario, risultano ambigui. “Un caso d’uso che abbiamo sviluppato e testato”, afferma Dentato, sottolineando anche che in caso di dubbi, l’IA è anche in grado di generare le domande da porre al cliente così da evitare di perdere tempo e risolvere il più rapidamente la questione, senza ambiguità.

Un altro caso di utilizzo indicato da Dentato è il supporto alla comprensione del codice. “Capita di trovarsi clienti che ti chiedono di lavorare su un software e scoprire che la maggior parte del codice è scritto utilizzando un framework proprietario, inserito da un precedente fornitore”. In questi casi, nonostante l’intelligenza artificiale non conosca minimamente il framework in questione, è comunque in grado di utilizzarne le funzioni. L’IA, secondo Dentato, è in grado di adattarsi a situazioni nuove, anche se i programmatori poi dovranno lavorare manualmente sul codice grezzo generato. “È anche in grado di realizzare diagrammi e flowchart da aggiungere alla documentazione del prodotto”, afferma, aggiungendo però che sicuramente i risultati generati dall’IA non saranno quelli che poi andranno nella versione finale, ma sono un ottimo punto di partenza che permette di risparmiare molto tempo.

Fine tuning o addestramento aggiuntivo del modello?

I modelli di IA generici, come facilmente intuibili, hanno i loro limiti, e per adattarli alle specifiche esigenze di ogni realtà è possibile fare un fine tuning del modello, adeguandolo, o riaddestrarlo interamente coi dati proprietari. Quest’ultima opzione sarebbe la più efficace, ma ha un costo “molto rilevante”. Ma come si gestisce in questi contesti la privacy? Non stiamo parlando di un database, dove è possibile “cancellare” dei dati: nel caso dei modelli di IA, una volta addestrati questi rimangono lì, e questo rappresenta un grosso problema per le imprese che utilizzano i propri dati e non desiderano farli uscire dai propri sistemi. Per ovviare a questo problema, hyperscaler come Azure o AWS hanno realizzato strumenti per consentire di integrare informazioni riservate ma tenendole “segregate” all’interno dell’istanza del cliente stesso, inaccessibili da chiunque altro.

figure-1-4-improving-efficacy-of-ai-models

Questi strumenti possono rivelarsi utili per ottimizzare gli LLM su specifici domini. Dentato spiega come a suo avviso a oggi GPT-4 sia il miglior modello attualmente disponibile, ma essendo generico, utilizza milioni di parametri per dettagli che spesso non sono utili in uno specifico ambito. “Sa tutto sui gattini”, ironizza il manager, per far capire come parte del potenziale sia utilizzata per fornire anche risposte che non serviranno a uno sviluppatore. Si può ottimizzare riaddestrando il modello con dati legati al contesto in cui si vuole operare, ma bisogna valutare bene la convenienza, visti i costi non certo trascurabili di una simile operazione. I risultati i termini di produttività possono essere davvero significativi, ma devono essere funzioni estremamente specifiche per una singola azienda, perché “se si parla di funzioni più generali, il rischio è che qualcuno le introduca nei modelli a un prezzo molto più basso” rispetto a quello necessario per riaddestrare il LLM.

Ma cosa ci faccio?

Un aspetto che impensierisce Dentato è che “l’IA diventi come la blockchain, cioè una soluzione in cerca di un problema”. Questo perché tolto il caso d’uso iniziale (le cryptovalute) abbiamo assistito negli anni a tentativi talvolta forzati di integrare la blockchain e adattarla ad altri casi d’uso. Per questo motivo DXC lavora coi propri clienti a capire le loro esigenze e a creare strumenti basati su IA che portino reale valore aggiunto. Qualcosa in più delle risposte generiche che può generare un ChatGPT, per intenderci.

4 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
supertigrotto11 Dicembre 2023, 18:13 #1
Bellissimo l'esempio della blockchain,che in effetti,ci azzecca pure.
Tasslehoff11 Dicembre 2023, 19:28 #2
Madonna santa, già leggere DXC nel titolo di un articolo dovrebbe far fuggire tutti quelli che sanno di chi si sta parlando, a prescindere dal tema (la solita supercazzola sull'IA tra l'altro).

Io in 23 anni di lavoro nell'IT come consulente ho lavorato un po' con tutti i principali attori, tra questi DXC e proprio su di loro ho stabilito il mio termine di paragone negativo.

Tra sviluppatori senior che sapevano meno di un ragazzino appena uscito da un istituto tecnico, PM che facevano lavorare gli sviluppatori indiani condividendo il desktop via Lynk per non chiedere al cliente di creare una vpn site-to-site e obbligando l'indiano di turno a lavorare fino a mezzanotte inoltrata a causa del fuso orario, tipiche genialate DXC e manager che non hanno la più pallida idea di cosa siano i progetti che portano a casa.

In pratica per chi non lo sapesse DXC è la bad company creata da HP quando è stato dismesso il ramo consulting della società, le figure meritevoli sono state tutte spostate in HPE, il resto di cui non sapevano che fare è stato buttato dentro il calderone DXC.

Girateci alla larga se li sentite nominare nella vostra azienda.
itLovers13 Dicembre 2023, 10:38 #3
L'articolo può piacere o meno, ma leggere un commento del genere in cui si sentenzia brutalmente sull'operato e la professionalità di migliaia di persone che lavorano in questa azienda, me compreso, basata senza dubbio su una o più sue esperienze negative, dispiace.

Sinceramente non lo trovo un commento pertinente, ne tanto meno elegante.

Cordialmente saluti.
Tasslehoff13 Dicembre 2023, 11:01 #4
Originariamente inviato da: itLovers
L'articolo può piacere o meno, ma leggere un commento del genere in cui si sentenzia brutalmente sull'operato e la professionalità di migliaia di persone che lavorano in questa azienda, me compreso, basata senza dubbio su una o più sue esperienze negative, dispiace.

Sinceramente non lo trovo un commento pertinente, ne tanto meno elegante.

Cordialmente saluti.
Mi spiace che te la sia presa, se può consolarti ho avuto il medesimo feedback io stesso dalle persone di DXC con cui ho lavorato (tecnici non certo venditori o "manager", naturalmente "off the records".

Se può consolarti però DXC è un buona compagnia, nel senso che la gran parte delle aziende grandi e multinazionali con cui ho collaborato si comportano nello stesso identico modo, chi più chi meno, ma la sostanza è sempre la stessa, scaricando poi sulle PMI il peso delle commesse e spesso pagandole solo quando il committente ha pagato loro (scaricando quindi tutto il rischio d'impresa sull'ultimo anello della catena, che tra l'altro spesso è l'unico produttivo).

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
^