AI generativa

AI generativa e AI causale per aumentare la produttività nello sviluppo del software

La tecnologia GPT (Generative Pre-Trained Transformer) ha il potenziale per trasformare i settori industriali, compreso lo sviluppo del software; in combinazione con l’AI causale, le organizzazioni possono aumentare l’impatto e garantire un uso più sicuro di ChatGPT e di altre tecnologie di intelligenza artificiale generativa

Pubblicato il 23 Ago 2023

Bernd Greifeneder

fondatore e Chief Technology Officer di Dynatrace

kepleriA

Sebbene la tecnologia GPT (Generative Pre-Trained Transformer) sia nelle sue fasi iniziali e presenti dei rischi, ha il potenziale per trasformare i settori industriali, compreso lo sviluppo del software. In combinazione con l’AI causale, le organizzazioni possono aumentare l’impatto e garantire un uso più sicuro di ChatGPT e di altre tecnologie di intelligenza artificiale generativa

La tecnologia GPT e i sistemi di intelligenza artificiale basati su LLM che la guidano hanno enormi implicazioni e potenziali vantaggi per molte attività, dal miglioramento del servizio clienti all’aumento della produttività dei dipendenti.

In Dynatrace, abbiamo esplorato i molti modi di utilizzare i GPT per accelerare la nostra innovazione per conto dei nostri clienti e la produttività dei nostri team. Al Perform, la nostra conferenza annuale degli utenti, nel febbraio 2023, abbiamo dimostrato come le persone possono utilizzare il linguaggio naturale o umano per interrogare il nostro data lakehouse. Questo è un esempio dei molti casi d’uso che stiamo esplorando. Sottolinea il potenziale della tecnologia GPT per promuovere ulteriormente la “democrazia dell’informazione”. Come altri, stiamo solo iniziando a grattare la superficie di queste opportunità, poiché la tecnologia è nelle sue fasi iniziali.

ChatGPT e AI generativa: un nuovo mondo di innovazione

Lo sviluppo e la distribuzione del software sono aree chiave in cui la tecnologia GPT come ChatGPT mostra del potenziale. Ad esempio, può aiutare e i team DevOps e di ingegneria della piattaforma a scrivere snippet di codice attingendo alle informazioni dalle librerie software. Inoltre, può accelerare il modo in cui i team risolvono i problemi nel codice personalizzato inserendo il contesto della causa principale in un GPT, arricchendo i ticket o gli avvisi del problema con questo contesto e utilizzandolo come base per correzioni generate automaticamente.

Questi esempi riflettono notevoli miglioramenti rispetto ai processi manuali esistenti e dispendiosi in termini di tempo, inclusa la scrittura di routine e codice facilmente replicabile o la ricerca in innumerevoli pagine di Stack Overflow prima di trovare una risposta.

I GPT possono anche aiutare rapidamente i membri del team a integrare nuove piattaforme e set di strumenti di sviluppo. La tecnologia consente alle persone di conoscere le soluzioni digitando domande in una barra di ricerca, ad esempio “Come posso importare ed esportare casi di test tra i miei ambienti”? e “Qual è il modo migliore per integrare questa soluzione con la mia toolchain”?

Ancora una volta, questo approccio GPT rappresenta un significativo miglioramento della produttività e della soddisfazione degli utenti rispetto al modello attuale, in cui gli utenti cercano i documenti manualmente e la capacità di trovare risposte dipende dalla qualità e dalla struttura delle risorse fornite dai fornitori.

Stabilire barriere per proteggere la proprietà intellettuale e la riservatezza dei dati

Poiché i team DevOps e di ingegneria della piattaforma utilizzano i GPT per accelerare lo sviluppo del software, i Site Reliability Engineers (SRE) e i team che si occupano di privacy devono garantire che queste tecnologie dispongano dei controlli adeguati per evitare di creare più problemi di quelli che stanno risolvendo.

Innanzitutto, gli SRE devono assicurarsi che i team riconoscano i diritti di proprietà intellettuale (PI) su qualsiasi codice condiviso da e con GPT e altre AI generative, inclusi i contenuti protetti da copyright, marchi registrati o brevettati. Sarà altrettanto fondamentale per le organizzazioni impedire a ChatGPT e tecnologie simili di condividere inavvertitamente il proprio IP o dati riservati poiché utilizzano sempre più repository come GitHub nello sviluppo del software.

Le organizzazioni dovrebbero anche prendere in considerazione le normative sulla privacy e sulla sicurezza specifiche per paese e regione, come il GDPR o il proposto European AI Act, per garantire che i loro team non utilizzino le tecnologie GPT in un modo che potrebbe inavvertitamente portare a violazioni dei dati o multe.

Comprendere i rischi delle GPT e dell’AI generativa

Le organizzazioni devono essere particolarmente consapevoli del fatto che l’AI generativa basata su LLM che alimenta ChatGPT e tecnologie simili è suscettibile di errori e manipolazioni. Si basa sull’accuratezza e sulla qualità delle informazioni pubblicamente disponibili e degli input da cui attinge, che possono essere inaffidabili o distorti.

Nei casi d’uso di sviluppo e delivery del software, tali fonti potrebbero includere librerie di codici legalmente protette o contenere errori di sintassi o vulnerabilità innestate dai criminali informatici per perpetuare anomalie che creano maggiori opportunità di exploit. I team di ingegneri dovranno quindi sempre controllare il codice che ricevono dai GPT per assicurarsi che non metta a rischio l’affidabilità, le prestazioni, la conformità o la sicurezza del software.

AutoGPT

Padroneggiare il concetto di prompt engineering: la crescente importanza dell’AI causale

Mentre gli sviluppatori forniscono il codice e le osservazioni come contesto per gli strumenti GPT, i team DevOps, SRE e di ingegneria della piattaforma alimentano questo contesto nell’AI generativa utilizzando tecniche di prompt engineering. Per farlo in modo efficace, l’input di prompt engineering deve essere affidabile e attuabile. Ad esempio, se gli strumenti GPT hanno accesso solo a input generali su un picco della CPU, forniranno solo risposte generali sulla necessità di ulteriori CPU o scalabilità. Ma se gli strumenti GPT hanno accesso a dettagli precisi sulle condizioni alla base del picco della CPU, possono fornire una risposta specifica con una causa principale dettagliata. Raggiungere questa precisione richiede un altro tipo di intelligenza artificiale: l’AI causale.

L’intelligenza artificiale causale, come quella alla base della piattaforma Dynatrace, trae informazioni precise in tempo quasi reale da relazioni e dipendenze osservate continuamente all’interno di un ecosistema tecnologico o attraverso il ciclo di vita del software. Questi grafi o topologie di dipendenza consentono all’IA causale di generare risposte completamente spiegabili, ripetibili e affidabili che descrivono in dettaglio la causa, la natura e la gravità di qualsiasi problema rilevato. La combinazione dell’AI causale con i GPT consentirà ai team di automatizzare l’analisi che esplora l’impatto del codice, delle applicazioni e dell’infrastruttura sottostante, pur mantenendo il contesto completo.

prompt chatGPT

Aumentare l’impatto di ChatGPT e dell’AI generativa

In futuro, la combinazione di intelligenza artificiale generativa e intelligenza artificiale causale per aumentare l’impatto e il valore di ChatGPT e delle tecnologie correlate potrebbe diventare ancora più potente e sbloccare ulteriori casi d’uso per favorire la produttività e l’efficienza nella distribuzione del software. Ad esempio, integrando i GPT nella piattaforma di sicurezza e osservabilità unificata, possiamo combinare query in linguaggio naturale con risposte causali basate sull’intelligenza artificiale per fornire un contesto accurato e chiaro. Questa precisa ingegneria degli input rende le proposte di GPT più precise e attuabili per la correzione e l’automazione.

I team DevOps e della piattaforma possono utilizzare questa funzionalità per porre domande del tipo “Come posso migliorare i tempi di risposta della mia applicazione?” o eseguire comandi come “Crea un flusso di lavoro automatizzato che ridimensioni il mio cluster in base all’esperienza utente effettiva e al mio livello di servizio” e ottenere consigli precisi per una soluzione.

AI generativa e AI causale, meglio insieme

L’impatto della tecnologia GPT sarà senza dubbio profondo e il rapido ritmo con cui le persone in tutto il mondo la stanno adottando influenzerà notevolmente come molti di noi lavorano. Tuttavia, l’adagio “garbage in, garbage out” è molto pertinente.

ChatGPT e tecnologie simili non forniscono soluzioni da sole. Le loro proposte sono valide solo quanto la qualità, la profondità e la precisione delle informazioni e del contesto che le organizzazioni forniscono loro.

Le organizzazioni si troveranno in una posizione di gran lunga migliore per massimizzare l’impatto dell’AI generativa se la combineranno con l’AI causale per evitare di ottenere risposte altamente generiche o inadeguate. Questo approccio combinato fornisce risposte attendibili per due scopi fondamentali. In primo luogo, guidare un’automazione affidabile che sia deterministica e ripetibile attraverso l’AI causale. In secondo luogo, l’intelligenza artificiale causale deve fornire un contesto profondo e ricco per liberare il pieno potenziale di GPT per i casi d’uso di delivery del software e di produttività.

Dopo aver affrontato i problemi di sicurezza e privacy, i team DevOps e di ingegneria della piattaforma possono sfruttare la prompt engineering automatizzata per alimentare il proprio GPT con dati in tempo reale e contesto causale basato sull’intelligenza artificiale. Ciò consentirà ai GPT di supportare la produttività con suggerimenti adeguati e significativi.

La combinazione di intelligenza artificiale causale e intelligenza artificiale generativa alla fine darà origine alla fase successiva dell’innovazione basata su GPT. I team DevOps e di ingegneria della piattaforma utilizzeranno l’AI causale per verificare l’output della loro AI generativa, come gli snippet di codice, per garantire che non introducano problemi di affidabilità o sicurezza. Utilizzeranno anche l’automazione intelligente per eseguire automaticamente il loro codice affidabile e sicuro.

Conclusioni

Man mano che i team di ingegneri avanzano lungo questo percorso, le organizzazioni possono creare un vantaggio competitivo duraturo ottenendo significativi guadagni in termini di produttività e accelerando la velocità dell’innovazione del software a livelli che molte persone avrebbero considerato in precedenza impossibili.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 4