Prompttests mislukken onopgemerkt wanneer de “zelfde” prompt niet daadwerkelijk onder dezelfde omstandigheden wordt uitgevoerd. Een gestroomlijnde workflow voor het testen van sessieprompts minimaliseert de invloed van verborgen variabelen, zoals chatgeschiedenis, modusvlaggen en personalisatie, zodat herhalingen vergelijkbaar zijn en eventuele afwijkingen verklaarbaar zijn.
Wat een “schone sessie” werkelijk inhoudt bij het testen van chatbots
Een ‘schone’ sessie is een testrun waarbij het model geen eerdere gesprekscontext heeft en je omgeving zo goed onder controle is dat verschillen in de uitvoer waarschijnlijk worden veroorzaakt door de prompt (of een opzettelijke wijziging in de configuratie). Dit betekent niet dat het antwoord elke keer identiek zal zijn.
Zie het als een soort ‘QA-hygiëne’ voor prompts: je probeert de relatie tussen invoer en uitvoer te isoleren, niet om perfect determinisme na te streven.
[knuffel]
Waarom het testen van de ‘clean session’-prompt in de praktijk niet werkt
De meeste teams beginnen met “nieuwe chat, prompt plakken, uitvoer beoordelen”. Vervolgens schommelen de resultaten bij de tweede run en weet niemand wat er is veranderd.
[p]
De meest voorkomende oorzaken zijn saai, en daarom worden ze over het hoofd gezien:
- Resterende context uit eerdere beurtjes (zelfs als je denkt dat je helemaal opnieuw bent begonnen).
- Verschillen in modus zoals schakelaars voor bladeren/zoeken, het in- of uitschakelen van bronvermeldingen of tool-plug-ins.
- Personalisatie op accountniveau en geheugenfuncties.
- Tijdgevoeligheid wanneer bij het ophalen van gegevens van uur tot uur verschillende documenten worden opgehaald.
- Variatie in testresultaten waarbij twee mensen dezelfde output verschillend “beoordelen”.
Checklist vóór de start voor een schone testomgeving
Doorloop deze checklist voordat je een testbatch start. Dat gaat sneller dan achteraf proberen afwijkingen op te sporen.
1) Maak elke keer op dezelfde manier een nieuwe sessie aan
Kies één methode en houd je daar bij de basislijnmetingen aan.
- Begin een nieuwe chat bij elke run.
- Sluit extra tabbladen/vensters die ertoe zouden kunnen leiden dat je een sessie opnieuw gebruikt.
- Als het hulpprogramma de functies “geheugen” of “personalisatie” ondersteunt, schakel deze dan uit voor basistests.
- Plak geen prompt in een chat waarin al systeemachtige instructies uit eerdere opdrachten staan.
2) Bevries je modusvlaggen
Modusvlaggen zijn een van de belangrijkste bronnen van verborgen variabelen, omdat ze het zoek- en citeergedrag beïnvloeden.
- Beslis of surfen op het web / bronnen aan of uit staan, laat deze instelling dan gedurende de hele cyclus ongewijzigd.
- Geef aan of u gebruik hebt gemaakt van een “zoek”-ervaring of een “alleen-chat”-ervaring.
- Als de tool beschikt over functies voor het uploaden van bestanden, een code-interpreter of plug-ins, schakel deze dan uit, tenzij ze voor de test nodig zijn.
Als je verschillende tools test, zorg er dan eerst voor dat de doelstelling op elkaar is afgestemd, zodat je een tool niet onterecht afkeurt omdat deze bronnen niet weergeeft in een modus waarin ze verborgen zijn. Het protocol in Hoe kun je prompts testen in ChatGPT, Gemini en Perplexity? is een goed uitgangspunt om deze omstandigheden consistent te houden.
3) Taal- en regio-instellingen vergrendelen
Kleine wijzigingen in de locatie kunnen invloed hebben op de veiligheidsbeperkingen, de gebruikte voorbeelden en de bronnen waaraan de zoekfunctie de voorkeur geeft.
- Kies één taal voor het pakket (bijvoorbeeld alleen Engels).
- Zorg ervoor dat de regio consistent blijft (of draai de regio’s expliciet om als een afzonderlijk experiment met labels).
- Gebruik waar mogelijk hetzelfde apparaattype (bij een verschil tussen desktop en mobiel kunnen instellingen op UI-niveau veranderen).
4) Tijdsvenster voor opvragingsafhankelijke aanwijzingen
Als browsen is ingeschakeld, test je prompt gedeeltelijk het live web.
- Voer de volledige reeks testopdrachten uit binnen een kort tijdsbestek (indien mogelijk binnen hetzelfde uur).
- Noteer bij elke hardloopsessie de datum en het geschatte tijdstip.
- Als een test afhankelijk is van de “meest recente” informatie, beschouw deze dan als een andere categorie test dan ‘evergreen’-opdrachten.
Stapsgewijze werkwijze voor het testen van schone sessies
Deze workflow is bedoeld om herhalingen vergelijkbaar te maken en je voldoende logbestanden te bieden om afwijkingen te verklaren zonder te hoeven gissen.
Stap 1: Leg een reeks prompts met ID’s vast
Gebruik een vast promptdocument. Wijs aan elke prompt een ID toe, zodat je versies kunt aanpassen zonder de geschiedenis kwijt te raken.
- Prompt-ID (bijvoorbeeld: DEF-03, COMP-07, HOW-12)
- Exacte prompttekst (woordelijk overgenomen tijdens de testruns)
- Beoogd doel (nauwkeurigheid, naleving van opmaakvoorschriften, vermelding van het merk, bronvermeldingen)
Stap 2: Voer (opzettelijk) gecontroleerde herhalingen uit
Eén testrun is slechts een anekdotisch voorbeeld. Herhaalde testruns laten zien of er variatie is en of je beperkingen streng genoeg zijn.
- Voer elke opdracht uit 3 keer per gereedschap in afzonderlijke reinigingsbeurten.
- Plak elke keer precies dezelfde prompttekst.
- Probeer de prompt niet halverwege de cyclus te “aanpassen”. Noteer de problemen en werk er in de volgende versie aan.
Stap 3: Leg elke keer dezelfde artefacten vast
Sla onbewerkte transcripties en gestructureerde metagegevens op. Een spreadsheet is prima, mits de velden consistent zijn.
- Datum/tijd, naam van de tester
- Vlaggen voor tools en modi (bladeren/bronnen aan of uit)
- Prompt-ID + exacte tekst
- Loopnummer (1–3)
- Volledige tekst (of een link naar het opgeslagen transcript)
- Aantekeningen met de tag ‘mislukt’ (niet-nageleefde voorwaarde, niet ter zake, fantasie, zwakke structuur)
Stap 4: Beoordeel aan de hand van een rubriek die ook bij overdrachten zijn waarde behoudt
Een beoordelingsschema voorkomt dat je “trend” verandert in een persoonlijke voorkeur.
Deze tabel is bedoeld om twee testers in staat te stellen dezelfde uitvoer met minder argumenten te beoordelen.
| Afmeting | 1 (Onvoldoende) | 3 (OK) | 5 (Sterk) |
|---|---|---|---|
| Nauwkeurigheid van de taak | Verkeerd of onveilig | Grotendeels juist, maar er ontbreken belangrijke details | Correct, duidelijk, geen inhoudelijke hiaten |
| Volledigheid | Slaat belangrijke stappen/criteria over | Behandelt de basisbegrippen | Behandelt uitzonderingsgevallen en beperkingen |
| Naleving van het formaat | Negeert de vereiste structuur | Voldoet gedeeltelijk aan de beperkingen | Houdt zich strikt aan de beperkingen |
| Bronvermeldingen (indien vereist) | Er werden geen bronnen verwacht | Sommige bronnen, van wisselende bruikbaarheid | De bronnen zijn duidelijk en relevant |
| Juistheid van entiteiten | Leidt tot verwarring tussen merken of beweringen | Grotendeels correct | Juiste positionering en beperkingen |
Milieucontroles die de vergelijkbaarheid snel verbeteren
Als je maar twee dingen doet, doe dan deze: zorg dat de omgeving niet verandert en geef elke run een label.
Gebruik een “basisbaan” en een “experimentbaan”
Het is een veelvoorkomende valkuil om de basislijn en experimenten in dezelfde batch te mengen.
- Basisbaan: sessies opgeschoond, vlaggen aangepast, prompt-suite aangepast. Hier meet je de afwijking.
- Experimentbaan: verander één ding tegelijk (tekst van de prompt, browsen aan/uit, toegevoegde beperking).
Schrijf opdrachten die het aantal vrijheidsgraden tot een minimum beperken
Een hoge variantie is vaak het gevolg van prompts waarbij het model zelf de doelgroep, de reikwijdte en de structuur mag bepalen.
- Geef in één regel de doelgroep en de context aan (functie, branche, beperkingen).
- Een bepaalde weergavevorm afdwingen (genummerde stappen, opsommingstekens, tabel).
- Voeg “aannames” en “niet-doelstellingen” toe om te voorkomen dat de reikwijdte afdwaalt.
Houd bij wanneer wijzigingen buiten uw invloedssfeer liggen
Soms veranderde het model, werd de tool bijgewerkt of werden er nieuwe bronnen opgehaald. Het is niet de bedoeling om alle veranderingen te voorkomen, maar om ze te markeren.
Om een neutrale definitie te krijgen die als uitgangspunt kan dienen voor interne discussies over wat deze systemen precies doen, biedt het overzicht op Wikipedia van generatieve kunstmatige intelligentie kan ervoor zorgen dat teams niet langs elkaar heen praten.
Hoe ‘clean sessions’ verband houden met het testen van merkzichtbaarheid
Als het voor je belangrijk is of assistenten je bedrijf noemen of ernaar verwijzen, zijn “schone” sessies nog belangrijker. Eén enkele ‘toevallige’ vermelding in één chat is geen meetbare indicator.
Door te testen met een ‘schone’ sessie-prompt krijg je herhaalbaarheid, waardoor je de vermeldings- en citatiegraad in de loop van de tijd kunt meten zonder dat je deze verwart met effecten van de sessiegeschiedenis. Als je een meetkader zoekt dat bij deze werkwijze past, gebruik dan de aanpak in Waarom noemt AI mijn merk wel, maar staat er geen link naar mijn website? om het verschil tussen losstaande vermeldingen en citaten te onderscheiden.
Veelgemaakte fouten die je moet vermijden
- Aanpassingen tijdens de uitvoering: dan kun je de resultaten niet meer vergelijken. Maak een V2 aan en voer de test later opnieuw uit.
- De beoordelingscriteria halverwege de cyclus wijzigen: vergrendel de rubriek voor de hele batch.
- Testen met gemengde doelstellingen: Beoordeel de “kwaliteit van de bronvermeldingen” niet als het doel was om aan de opmaakvoorschriften te voldoen.
- Logbestanden overslaan: Als je de afwijking niet kunt verklaren, kun je er ook niets van leren.
Een eenvoudige volgende stap die je deze week kunt zetten
Kies 10 zoekopdrachten die de werkelijke intentie van de gebruiker weerspiegelen. Voer ze driemaal uit in schone sessies in de tools die voor jou van belang zijn, en noteer vervolgens de afwijkings- en foutlabels.
Als u hulp wilt om hier een herhaalbaar systeem van te maken dat aansluit bij uw contentarchitectuur en ervoor zorgt dat uw pagina’s vaker worden opgehaald en geciteerd, kan Authora u ondersteunen met een gestructureerde workflow die testen, publiceren en interne links in de loop van de tijd met elkaar verbindt.