DataHour Riduzione delle allucinazioni di ChatGPT dell’80%

Riduzione dell'80% delle allucinazioni di ChatGPT

Introduzione

I modelli di Elaborazione del Linguaggio Naturale (NLP) sono diventati sempre più popolari negli ultimi anni, con applicazioni che vanno dai chatbot alla traduzione linguistica. Tuttavia, una delle sfide più grandi nell’NLP è ridurre le allucinazioni di ChatGPT o le risposte errate generate dal modello. In questo articolo, discuteremo delle tecniche e delle sfide coinvolte nella riduzione delle allucinazioni nei modelli di NLP.

Osservabilità, Tuning e Testing

Il primo passo per ridurre le allucinazioni è migliorare l’osservabilità del modello. Ciò comporta la creazione di loop di feedback per catturare i feedback degli utenti e le prestazioni del modello in produzione. Il tuning comporta il miglioramento delle risposte scadenti aggiungendo più dati, correggendo problemi di recupero o modificando le prompt. Il testing è necessario per garantire che le modifiche migliorino i risultati e non causino regressioni. Le sfide affrontate nell’osservabilità includono i clienti che inviano screenshot di risposte errate, causando frustrazione. Per affrontare questo problema, è possibile monitorare i log giornalmente utilizzando l’ingestione di dati e un codice segreto.

Debugging e Tuning di un Modello di Linguaggio

Il processo di debugging e tuning di un modello di linguaggio comporta la comprensione dell’input e della risposta del modello. Per il debugging, è necessario registrare i log per identificare la prompt grezza e filtrarla in chunk o riferimenti specifici. I log devono essere azionabili e facili da capire per chiunque. Il tuning comporta la determinazione di quanti documenti devono essere inseriti nel modello. I numeri predefiniti non sono sempre accurati e una ricerca di similarità potrebbe non restituire la risposta corretta. L’obiettivo è capire perché qualcosa è andato storto e come correggerlo.

Ottimizzazione degli Embedding di OpenAI

Gli sviluppatori di un’applicazione di query per un database di vettori hanno affrontato sfide nell’ottimizzazione delle prestazioni degli embedding di OpenAI utilizzati nell’applicazione. La prima sfida era determinare il numero ottimale di documenti da passare al modello, che è stato risolto controllando la strategia di suddivisione in chunk e introducendo un iperparametro controllabile per il numero di documenti.

La seconda sfida era la variazione delle prompt, che è stata affrontata utilizzando una libreria open-source chiamata Better Prompt che valuta le prestazioni di diverse versioni di prompt in base alla perplessità. La terza sfida era migliorare i risultati degli embedding di OpenAI, che si sono rivelati migliori dei sentence transformer in scenari multilingue.

Tecniche nello Sviluppo di AI

L’articolo discute tre diverse tecniche utilizzate nello sviluppo di AI. La prima tecnica è la perplessità, che viene utilizzata per valutare le prestazioni di una prompt in un determinato compito. La seconda tecnica è la creazione di un pacchetto che consente agli utenti di testare facilmente diverse strategie di prompt. La terza tecnica è l’esecuzione di un indice, che comporta l’aggiornamento dell’indice con dati aggiuntivi quando manca qualcosa o non è ideale. Ciò consente una gestione più dinamica delle domande.

Utilizzo dell’API GPT-3 per Calcolare la Perplessità

Il relatore discute la sua esperienza nell’utilizzo dell’API GPT-3 per calcolare la perplessità in base a una query. Spiega il processo di esecuzione di una prompt attraverso l’API e il ritorno delle log-probabilità per il miglior token successivo. Fa anche riferimento alla possibilità di raffinare un grande modello di linguaggio per imitare uno stile di scrittura particolare, anziché incorporare nuove informazioni.

Valutazione delle Risposte a Più Domande

Il testo discute delle sfide nella valutazione di risposte a più di 50 domande contemporaneamente. Valutare manualmente ogni risposta richiede molto tempo, quindi l’azienda ha considerato l’utilizzo di un sistema di valutazione automatica. Tuttavia, un semplice sistema di decisione sì/no era insufficiente perché ci sono molteplici motivi per cui una risposta potrebbe non essere corretta. L’azienda ha suddiviso la valutazione in diversi componenti, ma ha scoperto che una singola esecuzione del sistema di valutazione automatica era erratico e inconsistente. Per risolvere questo problema, hanno eseguito più test per ogni domanda e classificato le risposte come perfette, quasi perfette, errate ma contenenti alcune informazioni corrette o completamente errate.

Riduzione delle Allucinazioni nei Modelli di NLP

Il relatore discute il suo processo per ridurre le allucinazioni nei modelli di elaborazione del linguaggio naturale. Ha suddiviso il processo decisionale in quattro categorie ed ha utilizzato una funzionalità automatica per la categoria di oltre 50. Ha anche implementato il processo di valutazione nel prodotto principale, consentendo l’esecuzione e l’esportazione delle valutazioni in CSB. Il relatore menziona un repository GitHub per ulteriori informazioni sul progetto. Successivamente, discute i passi intrapresi per ridurre le allucinazioni, inclusa l’osservabilità, il tuning e il testing. Sono riusciti a ridurre il tasso di allucinazione dal 40% a meno del 5%.

Conclusion

La riduzione delle allucinazioni di ChatGPT nei modelli di NLP è un processo complesso che coinvolge l’osservabilità, la taratura e il testing. Gli sviluppatori devono anche considerare la variazione della richiesta, l’ottimizzazione degli embedding e la valutazione delle risposte a più domande. Tecniche come la perplessità, la creazione di un pacchetto per testare strategie di richiesta e l’esecuzione di un indice possono essere utili nello sviluppo dell’IA. Il futuro dello sviluppo dell’IA risiede in elementi piccoli, privati o specifici per compiti.

Punti chiave

  • La riduzione delle allucinazioni di ChatGPT nei modelli di NLP richiede osservabilità, taratura e testing.
  • Gli sviluppatori devono considerare la variazione della richiesta, l’ottimizzazione degli embedding e la valutazione delle risposte a più domande.
  • Tecniche come la perplessità, la creazione di un pacchetto per testare strategie di richiesta e l’esecuzione di un indice possono essere utili nello sviluppo dell’IA.
  • Il futuro dello sviluppo dell’IA risiede in elementi piccoli, privati o specifici per compiti.

Domande frequenti