Questo articolo è un estratto da una delle nostre riviste. Puoi scaricare gratuitamente il numero Applicazioni & Dati: Applicazioni e dati 25 – Gli editori francesi di fronte alla sfida dell’IA generativa, con contributi di Will Kelly e Gaétan Raoul per LeMagIT, pubblicato il 29 novembre 2024. L'illustrazione principale è fornita da Getty Images.
I sistemi di intelligenza artificiale generativa, pur offrendo un potenziale rivoluzionario per le imprese e numerosi settori, presentano una sfida significativa: la tendenza a produrre informazioni false o fuorvianti, un fenomeno noto come "allucinazione". Questo problema intrinseco può rappresentare un serio ostacolo all'adozione diffusa di questa tecnologia da parte delle aziende, che aspirano a delegare all'IA il trattamento di dati complessi e l'esecuzione di compiti specifici. Le conseguenze di tali allucinazioni possono essere gravi, potenzialmente erodendo l'integrità di un'organizzazione e comportando costi elevati e procedure complesse per riparare i danni causati da informazioni errate. Per scongiurare il rischio di disinformazione generata dall'IA e per accrescere l'affidabilità generale dei sistemi, è imperativo che i professionisti del settore non solo comprendano la natura delle allucinazioni, ma siano anche in grado di identificarle e di mettere in atto strategie efficaci per mitigarle.
Che cos'è un'allucinazione?
Le allucinazioni si manifestano quando un modello di IA genera informazioni che sono palesemente scorrette, ingannevoli o addirittura inventate di sana pianta. Questo comportamento indesiderato può verificarsi in una vasta gamma di sistemi di IA generativa, dai generatori di testo, come i grandi modelli linguistici (LLM), ai creatori di immagini, e ad altre applicazioni simili.
Generalmente, le allucinazioni sono involontarie. Esse derivano dalla natura stessa dell'IA generativa, che si basa su modelli e schemi appresi dai suoi vasti dati di addestramento piuttosto che sull'accesso diretto a database fattuali esterni o a informazioni in tempo reale. In pratica, il modello cerca di "completare il quadro" basandosi sulle probabilità statistiche apprese, e in assenza di un contesto sufficiente o di dati precisi, può finire per creare contenuti plausibili ma falsi. La gestione e la mitigazione di queste allucinazioni rappresentano una delle sfide più rilevanti nello sviluppo dell'IA, anche perché la capacità di "inventare" o generare creativamente è, in altri contesti, una caratteristica desiderabile e valorizzata dell'IA generativa. Il confine tra creatività utile e allucinazione dannosa è spesso sottile.
Esempi di allucinazioni
- Un'allucinazione tipica di un modello di IA generativa può coinvolgere la creazione di fatti storici o scientifici inesistenti o errati. Ad esempio, un ambiente di sviluppo integrato (IDE) assistito da un modello di IA potrebbe generare codice che, nonostante appaia sintatticamente corretto, non si esegue affatto o produce risultati imprevedibili.
- Con un assistente conversazionale come ChatGPT, le allucinazioni possono manifestarsi sotto forma di contenuti fattualmente inaccurati, attribuzioni errate di dichiarazioni a persone che non le hanno mai fatte, o la citazione di fonti e bibliografie completamente inesistenti.
- Nell'IA generatrice di immagini, questo comportamento può comportare la creazione di immagini con elementi visivamente distorti, figure irrealistiche o persino la generazione di contenuti tossici o inappropriati che non riflettono la realtà o le intenzioni dell'utente.
Strategie per attenuare le allucinazioni dell'IA
L'applicazione di strategie mirate all'attenuazione delle allucinazioni è fondamentale per migliorare la
La base: regolare la temperatura del modello
Questo è spesso un elemento sconosciuto ai neofiti, in quanto generalmente inaccessibile attraverso interfacce utente come quella di ChatGPT. Tuttavia, i ricercatori di IA che sviluppano i grandi modelli linguistici (LLM) hanno implementato un meccanismo cruciale per inibire o esacerbare la loro creatività, e di conseguenza la loro propensione ad allucinare: la
- Se il cursore è posizionato vicino allo zero (ad esempio, tra 0,2 e 0,5), il modello fornirà le previsioni più deterministiche e spesso le più precise. Questa impostazione è ideale per compiti che richiedono alta accuratezza e coerenza.
- Tuttavia, un'impostazione così bassa potrebbe non essere adeguata per domande più aperte o per compiti che richiedono un alto grado di creazione e originalità. In questi casi, è consigliabile scegliere una temperatura più vicina a 1, il che aumenta la probabilità di risposte creative ma statisticamente incrementa anche l'esposizione alle allucinazioni.
Spesso, un'impostazione automatica permette di selezionare questo valore in base al tipo di ricerca dell'utente, cercando di trovare un equilibrio ottimale.
La temperatura può essere combinata con il valore "top-p", anch'esso compreso tra 0,1 e 1. Questo strumento consente di restringere la risposta alle parole più probabili che si susseguano, cumulando una percentuale determinata dal valore "top-p". Una volta combinati, questi due meccanismi dovrebbero consentire di ottenere un equilibrio tra precisione e creatività, offrendo un maggiore controllo sulla natura delle risposte generate dal modello.
Prompt engineering
Data la difficoltà nel controllare il prompt scritto dagli utenti, può essere estremamente utile
Un
- "Sei un assistente benevolo incaricato di fornire le risposte più precise possibili. Rispondi unicamente in merito al marketing."
- Oppure: "Ecco la lista dei soggetti proibiti: [elenco di argomenti vietati]."
Ovviamente, un system prompt correttamente costituito è più voluminoso di questi esempi e sicuramente più sottile, incorporando una serie di regole e direttive che delineano con precisione l'ambito e lo stile delle risposte attese. Sebbene sia un approccio relativamente poco costoso, non impedisce completamente le allucinazioni, ma ne riduce la frequenza e la gravità orientando meglio il comportamento del modello.
Generazione aumentata da recupero (Retrieval Augmented Generation - RAG)
Questa è la
Un'architettura RAG prevede l'arricchimento delle risposte di un LLM fornendogli un
Per aiutare un LLM a comprendere il contesto che gli viene fornito, è necessario "codificare" il testo. Questo processo si chiama
Grazie alla loro concezione, le architetture RAG
Inoltre, uno dei grandi vantaggi del RAG è che le basi di dati su cui si appoggia l'architettura possono essere aggiornate indipendentemente dai moduli di ricerca, di embedding o dall'LLM stesso, garantendo così che le risposte siano sempre basate sulle informazioni più recenti e accurate.
Un'accurata pulizia dei dati è essenziale
L'architettura RAG ha dimostrato la sua efficacia, ma per massimizzare la qualità dei risultati e evitare le allucinazioni, un'attenta
- Se l'architettura RAG deve assistere un collaboratore nella ricerca di informazioni utili per l'esecuzione di un compito (ad esempio, la procedura dettagliata di un processo e le informazioni necessarie per la sua applicazione), allora ci si aspetta che l'intero insieme di documenti su cui si basa il sistema sia stato preventivamente verificato e convalidato.
- In alcuni casi, questo lavoro di verifica potrebbe essere già stato effettuato: ad esempio, se un agente umano viene interrogato su una condizione specifica del suo contratto, è molto probabile che questa informazione risieda nelle condizioni generali di vendita, un documento spesso pubblico e approvato da un team legale, quindi già affidabile.
- In altri casi, tuttavia, i dati potrebbero non essere così strutturati o pre-validati, e potrebbe essere necessario un lavoro di verifica e pulizia dei dati più approfondito e dedicato, prima che possano essere efficacemente integrati in un'architettura RAG. La qualità dei dati di base è sempre il fondamento della precisione e dell'affidabilità di qualsiasi sistema di intelligenza artificiale.