De aantrekkingskracht van LLM kan ons verleiden om testen over te slaan, maar evaluaties zijn essentieel om met vertrouwen producten te lanceren.
Stel je voor dat je een prototype ontwikkelt voor een webgebaseerde themabuilder. Het is een leuk hulpmiddel: in een webapplicatie voert een gebruiker een bedrijfsnaam en -omschrijving in, een doelgroep en een gewenste toon en sfeer. De frontend stuurt dit naar je server. Je server gebruikt een groot taalmodel (LLM) om een creatieve slogan te genereren die aansluit bij de verwachte toon en sfeer, en een toegankelijk kleurenpalet dat past bij het merk. De server stuurt deze gegevens terug als een klein JSON-object.
We noemen deze applicatie ThemeBuilder.

Je kiest een basis-LLM en werkt de opdracht verder uit. Je interne ontwerper is gecharmeerd van de kleurenpaletten en de motto's klinken pakkend.
Nu heb je de volgende vragen:
- Is het klaar voor productie? Je weet niet zeker of de uitvoerkwaliteit van je applicatie consistent genoeg is. Sommige interne testers melden kapotte kleurenpaletten of slogans die niet bij het merk passen. Wanneer je één probleem oplost, duiken er twee nieuwe bugs op.
- Kan ik van model wisselen? U wilt wellicht upgraden naar de nieuwste versie van hetzelfde LLM-model om de latentie te verlagen, of overstappen van een beheerde service naar een zelfgehost model om de kosten te drukken. U weet echter niet of dit de prestaties van uw applicatie zal verbeteren of verslechteren, en u kunt niet testen op regressies.
- Is het veilig om te verzenden? Iemand meldde ooit een giftige uitstoot, maar u kunt dit niet reproduceren. Was het een incident of moet u de lancering tegenhouden?
Je team stopt de lancering omdat de kwaliteit van de output van de LLM te veel varieert. Het is moeilijk om voldoende vertrouwen te creëren om het product te lanceren zonder tests.
Waarom gokken in plaats van testen?
Wanneer je voor het eerst met AI aan de slag gaat, is het verleidelijk om naar een paar resultaten te kijken, te besluiten dat ze er goed uitzien en verder te gaan. Waarom zou je op je intuïtie vertrouwen in plaats van op metingen en data?

Je doet dit waarschijnlijk omdat LLM's probabilistisch in plaats van deterministisch zijn. Dit betekent dat zelfs als je dezelfde bedrijfsnaam, beschrijving, doelgroep en toon opgeeft, ThemeBuilder een andere slogan en kleurenpalette kan genereren.
Er is geen eenduidig juist antwoord op de vraag wat een pakkende slogan is of wat een kleurenpalet is dat bij een merk past.
De creativiteit van LLM-studenten is geweldig. Maar het niet-determinisme lijkt haaks te staan op het idee van engineering. Je zou dus kunnen concluderen dat op LLM gebaseerde toepassingen waarschijnlijk niet testbaar zijn.
Evaluaties schieten te hulp

In de LLM-wereld blijven de beste ontwikkelingspraktijken geldig. We kunnen en moeten onze op LLM gebaseerde applicaties testen. We hebben alleen andere technieken nodig. Deze technieken worden evaluaties genoemd, of kortweg evals. Evals brengen nieuwe workflows met zich mee, maar je bestaande testexpertise is direct toepasbaar op het bouwen van goede evals.
Evaluaties zijn tests voor je AI-functionaliteiten. Deze tests helpen je een belangrijke feedbackloop te creëren: als je een robuuste evaluatiepipeline bouwt, zullen je op LLM gebaseerde functionaliteiten goed werken voor je gebruikers. Vervolgens kan je team je functionaliteiten met vertrouwen lanceren.
Als je met LLM's werkt, is het leren implementeren van robuuste evaluaties een van de beste manieren om je tijd te besteden.
Leer nu meer over evaluaties!