Ti presentiamo AI Evals: non indovinare, misura

La magia degli LLM potrebbe indurci a saltare i test, ma le valutazioni sono la chiave per rilasciare le app con sicurezza.

Immagina di creare un prototipo di uno strumento per la creazione di temi basato sul web. È uno strumento divertente: in un'applicazione web, un utente inserisce il nome dell'azienda e la descrizione, un pubblico di destinazione e un tono e uno stato d'animo. Il frontend invia questo valore al tuo server. Il tuo server utilizza un modello linguistico di grandi dimensioni (LLM) per generare un motto creativo che corrisponda al tono e all'atmosfera previsti e una tavolozza di colori accessibile in linea con il brand. Restituisce questi dati come un piccolo oggetto JSON.

Chiameremo questa applicazione ThemeBuilder.

Input e output di ThemeBuilder.
ThemeBuilder mostra un tema di esempio per l'azienda Midnight Coffee. L'applicazione utilizza il nome, la descrizione, il pubblico e il tono dell'azienda per generare un motto e una tavolozza di colori.

Scegli un LLM di base e itera sul prompt. Al tuo designer interno piacciono le tavolozze dei colori e gli slogan sono orecchiabili.

Ora hai le seguenti domande:

  1. È pronto per la produzione? Non sai se la qualità dell'output della tua applicazione è sufficientemente coerente. Alcuni tester interni segnalano tavolozze non funzionanti o motti fuori brand. Quando risolvi un problema, ne compaiono altri due.
  2. Posso cambiare i modelli? Potresti voler eseguire l'upgrade all'ultima versione dello stesso LLM per ridurre la latenza o passare da un servizio gestito a un modello self-hosted per ridurre i costi. Non sai se ciò migliorerà o peggiorerà l'output dell'applicazione e non hai modo di testare le regressioni.
  3. È sicuro spedire il dispositivo? Qualcuno ha segnalato un output tossico una volta, ma non riesci a riprodurlo. È un caso isolato o dovresti bloccare il lancio?

Il tuo team interrompe il lancio perché la qualità dell'output del LLM varia troppo. È difficile acquisire la sicurezza necessaria per spedire senza test.

Perché indovinare invece di testare?

Quando si inizia a creare contenuti con l'AI, è facile dare un'occhiata a un paio di output, decidere che vanno bene e passare oltre. Perché potresti affidarti all'intuizione anziché alle misurazioni e ai dati?

Gli algoritmi deterministici hanno un output per ogni input. Gli algoritmi probabilistici hanno più output possibili per input.

Probabilmente lo fai perché gli LLM sono probabilistici anziché deterministici. Ciò significa che anche se fornisci lo stesso nome dell'azienda, la stessa descrizione, lo stesso pubblico e lo stesso tono, ThemeBuilder potrebbe generare un motto e una tavolozza dei colori diversi.

Non esiste una risposta univoca e corretta per definire uno slogan incisivo o una palette di colori in linea con il brand.

La creatività dei modelli LLM è fantastica. Ma il non determinismo sembra in contrasto con l'idea di ingegneria. Pertanto, potresti concludere che le applicazioni basate su LLM sono probabilmente impossibili da testare.

Evals in soccorso

Nel mondo dei LLM, le best practice di sviluppo rimangono valide. Possiamo e dobbiamo testare le nostre applicazioni basate su LLM. Ci servono solo tecniche diverse. Queste tecniche sono chiamate valutazioni o, in breve, valutazioni. Le valutazioni comportano nuovi workflow, ma la tua esperienza di test esistente si trasferisce direttamente alla creazione di valutazioni efficaci.

Le valutazioni sono test per le tue funzionalità di AI. Questi test ti aiutano a creare un ciclo di feedback fondamentale: se crei una pipeline di valutazione solida, le funzionalità basate su LLM funzioneranno bene per i tuoi utenti. In questo modo, il tuo team potrà rilasciare le funzionalità con sicurezza.

Se crei con LLM, imparare a implementare valutazioni solide è uno dei migliori modi per impiegare il tuo tempo.

Ora scopri di più sulle valutazioni.