I chatbot sono il caso d'uso più diffuso per sfruttare le potenti capacità di chat e ragionamento dei modelli linguistici di grandi dimensioni (LLM). L'architettura RAG (retrieval-augmented generation) sta rapidamente diventando lo standard di settore per lo sviluppo di chatbot perché combina i vantaggi di una base di conoscenza (tramite un vector store) e di modelli generativi (ad es. GPT-3.5 e GPT-4) per ridurre le allucinazioni, mantenere informazioni aggiornate e sfruttare la conoscenza specifica del dominio. Tuttavia, la valutazione della qualità delle risposte dei chatbot rimane oggi un problema irrisolto. In assenza di standard di settore definiti, le organizzazioni ricorrono alla valutazione umana (etichettatura), un processo che richiede molto tempo ed è difficile da scalare.
Abbiamo applicato la teoria alla pratica per contribuire a definire le best practice per la valutazione automatizzata degli LLM, in modo da poter implementare applicazioni RAG in produzione rapidamente e con sicurezza. Questo blog è il primo di una serie di approfondimenti che stiamo conducendo in Databricks per fornire informazioni sulla valutazione degli LLM. Tutte le ricerche in questo post sono state condotte da Quinn Leng, Senior Software Engineer presso Databricks e creatore del Databricks Documentation AI Assistant.
Recentemente, la community LLM ha iniziato a esplorare l'uso di "LLM come giudice" per la valutazione automatizzata e in molti utilizzano potenti LLM come GPT-4 per valutare i propri output LLM. L'articolo di ricerca del gruppo lmsys esplora la fattibilità e i pro e i contro dell'utilizzo di vari LLM (GPT-4, ClaudeV1, GPT-3.5) come giudici per attività di scrittura, matematica e conoscenza generale.
Nonostante tutta questa ottima ricerca, ci sono ancora molte domande senza risposta su come applicare i giudici LLM in pratica:
Abbiamo esplorato le possibili opzioni per le domande descritte sopra nel contesto della nostra applicazione chatbot in Databricks. Riteniamo che i nostri risultati siano generalizzabili e possano quindi aiutare il tuo team a valutare in modo efficace i chatbot basati su RAG a un costo inferiore e con maggiore velocità:
Sulla base della nostra ricerca, raccomandiamo la seguente procedura quando si utilizza un giudice LLM:
Il resto di questo post illustrerà la serie di esperimenti che abbiamo condotto per definire queste best practice.

L'esperimento prevedeva tre passaggi:
Generare il set di dati di valutazione: abbiamo creato un set di dati a partire da 100 domande e contesti dai documenti di Databricks. Il contesto rappresenta (parti di) documenti pertinenti alla domanda.

Inoltre, sono state utilizzate le seguenti tecniche per evitare il bias posizionale e migliorare l'affidabilità:
Per confermare il grado di accordo tra gli annotatori umani e i giudici LLM, abbiamo inviato le schede di risposta (scala di valutazione 0-3) di gpt-3.5-turbo e vicuna-33b a una società di etichettatura per raccogliere etichette umane e abbiamo quindi confrontato il risultato con l'output di valutazione di GPT-4. Di seguito sono riportati i risultati:
I giudici umani e GPT-4 possono raggiungere un accordo superiore all'80% sul punteggio di correttezza e leggibilità. E se abbassiamo il requisito a una differenza di punteggio minore o uguale a 1, il livello di accordo può superare il 95%.
![]() | ![]() |
La metrica Completezza ha meno allineamento, il che corrisponde a quanto abbiamo sentito dagli stakeholder aziendali, i quali hanno condiviso che "completo" sembra più soggettivo rispetto a metriche come Correttezza o Leggibilità.
Il paper di lmsys utilizza questo prompt per istruire il giudice LLM a valutare in base a utilità, pertinenza, accuratezza, profondità, creatività e livello di dettaglio della risposta. Tuttavia, il paper non fornisce dettagli specifici sulla rubrica di valutazione. Dalla nostra ricerca, abbiamo scoperto che molti fattori possono influenzare in modo significativo il punteggio finale, ad esempio:
Abbiamo sviluppato una rubrica per istruire un giudice LLM per una determinata scala di valutazione, provando quanto segue:
|
Abbiamo adattato il prompt originale del paper lmsys per emettere le nostre metriche su correttezza, completezza e leggibilità e anche per chiedere al giudice di fornire una giustificazione di una riga prima di assegnare ogni punteggio (per beneficiare del ragionamento chain-of-thought). Di seguito sono riportate la versione zero-shot del prompt, che non fornisce alcun esempio, e la versione few-shot del prompt, che fornisce un esempio per ogni punteggio. Quindi abbiamo utilizzato gli stessi fogli di risposta come input e confrontato i risultati valutati dei due tipi di prompt.
Da questo esperimento abbiamo imparato diverse cose:




Il paper LLM-as-judge utilizza una scala non intera da 0 a 10 (ovvero float) per la scala di valutazione; in altre parole, utilizza una rubrica ad alta precisione per il punteggio finale. Abbiamo riscontrato che queste scale ad alta precisione causano problemi a valle con quanto segue:
Abbiamo sperimentato varie scale di valutazione a bassa precisione per fornire una guida sulla "migliore" da utilizzare; in definitiva, raccomandiamo una scala intera da 0 a 3 o da 0 a 4 (se si desidera attenersi alla scala Likert). Abbiamo provato 0-10, 1-5, 0-3 e 0-1 e abbiamo imparato:


Come mostrato nei grafici precedenti, sia GPT-4 che GPT-3.5 possono mantenere una classificazione coerente dei risultati utilizzando diverse scale di valutazione a bassa precisione, pertanto l'utilizzo di una scala di valutazione più bassa come 0~3 o 1~5 può bilanciare la precisione con la spiegabilità)
Pertanto consigliamo una scala di valutazione da 0 a 3 o da 1 a 5 per facilitare l'allineamento con le etichette umane, il ragionamento sui criteri di punteggio e la fornitura di esempi per ogni punteggio nell'intervallo.
Il paper LLM-as-judge mostra che sia il giudizio dell'LLM che quello umano classificano il modello Vicuna-13B come un concorrente diretto di GPT-3.5:
(La figura è tratta dalla Figura 4 del paper LLM-as-judge: https://arxiv.org/pdf/2306.05685.pdf )
Tuttavia, quando abbiamo eseguito il benchmark del set di modelli per i nostri casi d'uso di Q&A su documenti, abbiamo riscontrato che anche il modello Vicuna-33B, molto più grande, ha prestazioni notevolmente peggiori rispetto a GPT-3.5 nel rispondere a domande basate sul contesto. Questi risultati sono verificati anche da GPT-4, GPT-3.5 e da giudici umani (come menzionato nell'Esperimento 1), i quali concordano tutti sul fatto che Vicuna-33B ha prestazioni peggiori rispetto a GPT-3.5.

Abbiamo esaminato più da vicino il set di dati di benchmark proposto dall'articolo e abbiamo scoperto che le 3 categorie di attività (scrittura, matematica, conoscenza) non riflettono né contribuiscono direttamente alla capacità del modello di sintetizzare una risposta sulla base di un contesto. Invece, intuitivamente, i casi d'uso di Q&A su documenti richiedono benchmark sulla comprensione del testo e sul seguire le istruzioni. Pertanto, i risultati della valutazione non possono essere trasferiti tra i casi d'uso e dobbiamo creare benchmark specifici per i casi d'uso al fine di valutare correttamente in che misura un modello sia in grado di soddisfare le esigenze dei clienti.
Con gli esperimenti di cui sopra, abbiamo esplorato come diversi fattori possano influire in modo significativo sulla valutazione di un chatbot e abbiamo confermato che un LLM come giudice può rispecchiare in gran parte le preferenze umane per il caso d'uso di Q&A sui documenti. In Databricks, stiamo evolvendo l'API di valutazione di MLflow per aiutare il tuo team a valutare in modo efficace le tue applicazioni LLM sulla base di questi risultati. MLflow 2.4 ha introdotto l'API di valutazione per LLM per confrontare fianco a fianco l'output di testo di vari modelli, MLflow 2.6 ha introdotto metriche di valutazione basate su LLM come tossicità e perplessità e stiamo lavorando per supportare LLM-as-a-judge nel prossimo futuro!
Nel frattempo, abbiamo compilato di seguito l'elenco delle risorse a cui abbiamo fatto riferimento nella nostra ricerca:
IA generativa
January 7, 2025/8 min de leitura
Engenharia
December 3, 2025/11 min de leitura


