Oltre il prompting manuale: l’IA di Aubay che funziona in produzione

Oltre il prompting manuale: l'IA di Aubay che funziona in produzione

Come l’ottimizzazione dei prompt riduce i costi, abilita la privacy e accelera il time-to-market dei sistemi GenAI. Perché questo tema è oggi una priorità per CIO, CTO, CDO e responsabili AI? La risposta sta nei numeri: mentre quasi il 95% dei progetti fatica ad arrivare in produzione a causa di prompt manuali fragili e non scalabili, un nuovo approccio ingegneristico sta cambiando le regole del gioco. Attraverso l’ottimizzazione automatica diventa possibile utilizzare modelli più piccoli on-premise, abbattendo i costi fino al 90% e garantendo finalmente affidabilità e privacy

È passato solo qualche anno dalla disponibilità globale dei sistemi di intelligenza artificiale generativa eppure, dal punto di vista del dietro le quinte, del prompt, sembra passato un secolo. In una fase iniziale, quasi pionieristica, l’interazione e la “programmazione” dei potenti sistemi avvenivano quasi esclusivamente attraverso quello che Aubay definisce “prompt engineering manuale”. Un approccio, che potremmo definire “artigianale”, che ha visto la nascita di sistemi, anche molto complessi, che facevano totale affidamento su un unico, lungo e spesso monolitico prompt. L’intero successo dell’applicazione dipendeva dall’abilità dell’LLM di interpretare correttamente quella complessa serie di istruzioni e fornire una risposta adeguata. Questo, ha creato la pericolosa illusione che l’IA fosse diventata “facile” da programmare e governare, che bastasse assumere un “artista delle parole” per risolvere magicamente complessi problemi di business.

TI PIACE QUESTO ARTICOLO?

Iscriviti alla nostra newsletter per essere sempre aggiornato.

“Oggi non è più possibile” ci dice Alkid Zenuni, Specialist AI del Competence Center Data & Artificial Intelligence di Aubay. “Ciò che funziona per un prototipo o un PoC si scontra con la realtà. Con la crescente complessità delle applicazioni e la loro migrazione verso ambienti live, i limiti di questo approccio artigianale sono emersi in maniera evidente. Si è finalmente compreso che un progetto di GenAI non è diverso da qualsiasi altro progetto software: deve soddisfare requisiti rigorosi, tra cui affidabilità, sicurezza e manutenibilità per poter funzionare in un contesto aziendale reale”.

Diverse analisi di settore indicano che una percentuale altissima di progetti AI, dall’80% fino al 95%, fallisce nel passaggio alla produzione o non genera valore misurabile. “Il motivo?” continua Zenuni. “Un prompt scritto a mano è come codice hard-coded: non è scalabile, non è sicuro e si ‘rompe’ non appena l’input del mondo reale varia minimamente, o non appena il modello sottostante viene aggiornato. Non è un approccio affidabile”

Leggi anche:  Var Group: Data Science debutta in Spagna e si consolida in Italia con una nuova business combination

La creazione manuale è un processo lento, interamente basato su tentativi ed errori, molto più simile a un lavoro di bottega che a uno sviluppo software. Questo può andar bene per un singolo caso d’uso, ma diventa ingestibile quando si devono costruire sistemi complessi con decine di prompt interconnessi che dipendono l’uno dall’altro, ad esempio nell’agenti IA.

Una nuova era

La soluzione, che è il cuore della filosofia adottata dal Competence Center Data & AI di Aubay, è un cambio di paradigma: “Dobbiamo trattare i progetti di GenAI esattamente come i progetti software, applicando gli stessi principi rigorosi di ingegneria” continua Zenuni. Framework moderni, come quello sviluppato internamente da Aubay, introducono un approccio completamente nuovo che si basa sulla separazione netta tra l’intento e l’implementazione.

In questo approccio, l’ingegnere AI non scrive più la stringa di testo del prompt (l’implementazione, il “come”). Scrive invece codice dichiarativo che definisce la struttura logica del programma e l’obiettivo (l’intento, il “cosa”). “Il prompt smette di essere codice sorgente scritto a mano,” aggiunge Zenuni, “e diventa un parametro che il sistema deve ottimizzare, esattamente come i pesi di una rete neurale. Il prompt finale inviato all’LLM è solo un artefatto di compilazione, generato automaticamente per massimizzare le performance.”

Questo processo trasforma il prompt engineering da un’arte oscura e manuale a un processo scientifico, automatizzato e ripetibile. Per avviarlo servono due elementi fondamentali: il primo è un piccolo set di dati di training, che può essere composto anche solo da poche decine di esempi di input e output corretti. Il secondo è una metrica di valutazione, ovvero una funzione che assegna un punteggio alla qualità dell’output.

A questo punto entra in gioco il “compilatore”, ovvero l’ottimizzatore. “Questo sistema esplora automaticamente un vasto spazio di possibili prompt, testando sistematicamente diverse istruzioni, provando a inserire diversi esempi few-shot e sperimentando diverse catene di ragionamento”. Al termine di questo processo di esplorazione, il sistema compila e restituisce l’artefatto finale: il prompt, o un’intera catena di prompt per sistemi agentici, che massimizza la metrica di valutazione su quel compito specifico e per quel modello LLM specifico.

Leggi anche:  Price-to-Bill, l’infrastruttura per la servitization

Algoritmi avanzati come GEPA (Genetic-Pareto) rappresentano il motore del procedimento. “Questo algoritmo si ispira a quelli genetici,” chiarisce Zenuni. “Invece di testare variazioni casuali, ‘evolve’ i prompt in modo iterativo. Ma il suo vero punto di forza è la riflessione in linguaggio naturale. A differenza di altri metodi che ricevono solo un punteggio numerico, l’ottimizzatore GEPA analizza perché un prompt ha fallito. Utilizza un LLM ‘giudice’ per leggere le tracce di esecuzione e chiedersi: ‘L’errore è dovuto a un passo di ragionamento mancante? L’istruzione era ambigua?’

Sulla base di questa riflessione, GEPA genera “mutazioni” intelligenti, ovvero nuove versioni del prompt mirate a correggere l’errore specifico. Questo approccio non è solo efficiente, risultando fino a 35 volte più efficiente in termini di campioni necessari, ma anche capace di raggiungere prestazioni finali superiori del 10-20% rispetto a metodi basati su Reinforcement Learning come GRPO.

Ma perché l’ottimizzazione funziona così bene? “La risposta è affascinante,” afferma Zenuni. “Questi LLM possiedono una conoscenza latente vastissima, ma non sanno come attivarla finché non glielo chiediamo nel modo giusto. Un prompt manuale è un’istruzione ambigua, imprecisa. L’ottimizzazione, invece, non insegna nuove informazioni al modello; progetta un processo ottimale affinché il modello utilizzi la conoscenza che già possiede. Scopre algoritmicamente la formulazione e la struttura di ragionamento che attivano in modo affidabile i percorsi neurali corretti“.

Secondo Aubay, l’adozione di un approccio programmatico all’ottimizzazione dei sistemi GenAI sblocca un valore di business tangibile e immediato. Il primo è una riduzione significativa dei costi. “L’ottimizzazione spinta consente infatti di utilizzare gli SLM (Small Language Models), spesso open-source, per ottenere performance che sono confrontabili a quelle di modelli proprietari molto più grandi, potenti e costosi”.

Un esempio reale chiarisce la portata di questo cambiamento: un importante retailer europeo aveva sviluppato un sistema di categorizzazione prodotti basato su GPT-4, scontrandosi però con costi insostenibili e problemi di privacy legati al cloud. Applicando l’ottimizzazione automatica, l’azienda è riuscita a migrare il sistema su un modello open-source. Il risultato? Ha mantenuto la stessa accuratezza del modello originale, ma ha ridotto i costi del 92% e ha potuto spostare l’intera infrastruttura on-premise, garantendo la totale sovranità sui propri dati.

Leggi anche:  QLIK aggiunge il supporto nativo per le tabelle Iceberg gestite da Snowflake

Questo caso dimostra come l’ottimizzazione abiliti direttamente il secondo grande vantaggio: la privacy. Potendo usare modelli più piccoli, il deploy on-premise diventa fattibile; i dati sensibili non lasciano mai l’infrastruttura aziendale e si evita il vendor lock-in.

Oltre ai costi, c’è un guadagno in affidabilità e qualità. I sistemi “compilati” sono ottimizzati specificamente per essere coerenti e robusti su un compito, eliminando l’inaffidabilità e l’imprevedibilità dei prompt manuali e migliorando drasticamente la fiducia dell’utente finale. Questo porta anche a un’accelerazione del time-to-market. “Si elimina il ciclo manuale, lento e imprevedibile, di tentativi ed errori e lo sviluppo di applicazioni IA diventa un processo ingegneristico, rapido, iterabile e prevedibile”. Infine, questo approccio garantisce manutenibilità e robustezza futura. Quando si vuole usare un nuovo modello, o anche una nuova versione dello stesso modello, non è più necessario ricominciare da zero a riscrivere i prompt manualmente. È sufficiente “ricompilare” il programma, ovvero rieseguire l’ottimizzatore, che troverà automaticamente i nuovi prompt ottimali per il nuovo modello.

Un futuro “prompt-free”

Guardando al futuro, l’evoluzione della GenAI in produzione sta andando in una direzione molto chiara: la completa astrazione del prompt. Stiamo assistendo alla fine del “prompt engineering” manuale come lo conosciamo? “Si, è probabile” conclude Zenuni “anzi lo spero. I veri AI Engineers del futuro si concentreranno sulla progettazione di sistemi complessi, sulla definizione di metriche di valutazione accurate e sulla costruzione di flussi di dati, non sulla scrittura di stringhe di testo. Il prompt diventerà un semplice artefatto di compilazione. Proprio come oggi nessuno sviluppatore scrive più in linguaggio macchina o in assembly, presto smetteremo di scrivere prompt a mano. Scriveremo codice dichiarativo di alto livello per esprimere il nostro intento, e un compilatore di GenAI gestirà l’interazione con qualsiasi LLM, che si tratti di testo, immagini o altri tool, in modo completamente trasparente.