1. Schrijf de vraag voordat je de varianten voorbereidt
Een nuttige vergelijking beantwoordt een precieze beslissing: voorkomt een grotere maximale lengte afgebroken antwoorden? Behoudt een detailniveau de nodige contouren? Maakt een grotere groep het af zonder fouten? Kies één vraag en één parameter. "De beste instellingen vinden" is te breed voor een eerste sessie.
Noem A de referentie en B de variant. Noteer de exact gewijzigde waarde. Tegelijk het model, de afmetingen en het aantal passes veranderen kan een ander resultaat opleveren, zonder te onthullen welke wijziging het verklaart. Bewaar zulke proeven voor aparte vergelijkingen.
2. Zet een kleine corpus en de beoordelingsregels vast
Verzamel dezelfde invoer voor A en B. Een twaalftal gevallen kan volstaan voor een eerste afgebakende beslissing als het de moeilijkheden van het project bevat: fijne tekst in een afbeelding, een lang document, ontbrekende gegevens of een ongewoon formaat. Dat aantal is een praktische keuze, geen statistische garantie. Vermijd om alleen de voorbeelden op te nemen die al slaagden.
Schrijf voor elke invoer vóór de test de slaagvoorwaarden op. Maak onderscheid tussen een presentatievoorkeur en een blokkerend gebrek. In een documentaire assistent kan een aangenamer antwoord toch afgewezen worden als het een regel verzint. Voor een productvisual compenseert een aantrekkelijke kleur niet het verdwijnen van een belangrijk element.
Leg ook het minimale aantal geaccepteerde gevallen, de verboden gebreken en de maximale controletijd vast. Die projectspecifieke drempels moeten gelijk blijven wanneer je de resultaten bekijkt.
| Vast te leggen | Voorbeeld van een notitie | Waarom dit telt |
|---|---|---|
| Invoer | cas-01 tot cas-12, dezelfde bestanden en dezelfde formuleringen | Dezelfde moeilijkheden vergelijken |
| Kwaliteitscriterium | Antwoord verifieerbaar in het document en zonder verzinsels | Voorkomen dat een vlotte uitvoer een fout maskeert |
| Kritieke fout | Ontbrekende regel voorgesteld als zeker | Een gebrek weigeren ook als het totaal beter lijkt |
| Variabele | A: 128; B: maximaal 256 nieuwe tokens | Het verschil toeschrijven aan een geïdentificeerde wijziging |
3. Houd dezelfde sessie en dezelfde afhankelijkheden aan
Houd het model, de versie, de extensies, de rekenengine en de overige instellingen gelijk. Gebruik dezelfde omgeving en dezelfde GPU, zonder tussen de twee varianten een andere verwerking te starten. Noteer wat je niet kunt beheersen: zichtbare gelijktijdige activiteit, een opgelegde versiewijziging of een andere laadtijd. Een vergelijking die door zulke veranderingen wordt beïnvloed, vraagt meer voorzichtigheid.
Als de tool een willekeurige seed gebruikt en je die kunt vastzetten, houd dan de waarde gelijk voor elk paar runs. Dat maakt een vergelijking makkelijker, maar belooft geen identieke uitvoer op elke plek. PyTorch geeft aan dat volledige reproduceerbaarheid niet gegarandeerd is tussen versies of platforms, zelfs niet met een identieke seed.
Maak twee mappen, A en B, met dezelfde lijst met identificaties. Bewaar de ruwe uitvoer vóór elke handmatige correctie. Een correctie achteraf moet als een extra handeling verschijnen, met de bijbehorende werktijd, en niet worden toegeschreven aan de instelling die het oorspronkelijke bestand heeft geproduceerd.
4. Doe een controle-run en vergelijk daarna de paren
Controleer eerst of een eenvoudige invoer helemaal tot het opgeslagen bestand of het opgehaalde antwoord komt. Deze run controleert de methode. Meld een eerste keer laden of een bijzondere voorbereiding apart: vergelijk niet de volledige opstart van A met een run B waarin alle onderdelen al geladen zijn.
Voer dezelfde gevallen uit voor A en B. Wissel de volgorde af als de tool dat toelaat en speel daarna een paar beslissende paren in omgekeerde volgorde opnieuw. Controleer of een geïsoleerd resultaat of een voordeel van de volgorde niet de hele conclusie bepaalt.
Noteer ook fouten en geweigerde uitvoer. Als B faalt bij een grote invoer, haal die dan niet uit de tabel om het gemiddelde te verbeteren. Verhelp de oorzaak eventueel in een aparte poging B2. Zo houd je een leesbare vergelijking in plaats van een map waarin de variant met elke moeilijkheid verandert.
5. Scheid het geaccepteerde resultaat van de waargenomen tijd
Beoordeel eerst de kwaliteit op het formaat of in de tool waarin je het gebruikt. Verberg indien mogelijk tijdelijk de namen A en B op het moment van beoordelen. Iemand kan de uitvoer gewoon in willekeurige volgorde bekijken en daarna de koppeling weer herstellen. Houd de vooraf aangekondigde criteria aan en een korte reden voor elke afwijzing.
Kies voor de tijd één eenduidige definitie: bijvoorbeeld van de start tot de volledig opgeslagen uitvoer. Scheid daarna de menselijke controle en de correcties. Een stopwatch rond een GPU-aanroep is niet altijd een meting van de voltooide berekening: met PyTorch/CUDA kunnen bewerkingen asynchroon zijn. Gebruik de meetmethode die de tool documenteert als je de berekening wilt isoleren.
Als de herhalingen elkaar overlappen of de timing ruw blijft, noteer dan 'verschil in duur niet conclusief'. Een klein verschil bij één enkele uitvoering rechtvaardigt geen winstpercentage dat als zeker wordt voorgesteld.
Voorbeeld: 128 of 256 nieuwe tokens voor een documentassistent
Een klein team wil volledige antwoorden op twaalf vaste vragen. Het houdt hetzelfde model, dezelfde documenten, dezelfde instructie en dezelfde GPU. Alleen de antwoordlimiet verandert: A staat 128 nieuwe tokens toe, B 256. In Transformers begrenst max_new_tokens de generatie zonder de tokens van de invoertekst mee te tellen. Een token is geen woord: de limiet bepaalt geen exact aantal zinnen.
Vóór de test legt het team een illustratieve regel vast: minstens tien geaccepteerde antwoorden op twaalf en geen verzonnen regel. De tabel hieronder is een fictief scenario voor het lezen van de resultaten. Hij beschrijft geen gemeten assistent en voorspelt niet het effect van deze waarden op jouw model.
A haalt het minimum, B krijgt meer geaccepteerde antwoorden maar behoudt een kritieke tekortkoming. De beslissing is om A voor dit bereik te behouden, met herlezing van de antwoorden, en om de oorzaak van de tekortkoming van B te zoeken vóór een nieuwe vergelijking. De grotere lengte is geen bewijs van kwaliteit en niet de zekere oorzaak van de verzinsels.
Het team speelt de vragen die A en B onderscheiden opnieuw, plus twee vragen die al geslaagd waren. Als de tekortkoming ook bij A opduikt, schort het het oordeel op: het oorspronkelijke corpus was niet voldoende om de stabiliteit vast te stellen. Het bewaart de sporen van beide runs in plaats van alleen de gunstigste te houden.
| Criterium van het scenario | A: maximaal 128 tokens | B: maximaal 256 tokens |
|---|---|---|
| Geaccepteerde antwoorden | 10 van 12 | 11 van 12 |
| Kritieke gebreken | 0 | 1 verzonnen regel |
| Duur | Op te merken tijdens de echte sessie | Op dezelfde manier op te merken |
| Naleving van de aangekondigde regel | Ja, binnen dit beperkte scenario | Nee, ondanks het beste totaal |
Vermijd conclusies die je test niet toestaat
Kies niet voor B omdat een van de uitkomsten spectaculair is terwijl de andere verslechteren. Verander het corpus niet halverwege, tel twee herhalingen niet als twee verschillende invoeren en streep een mislukking niet weg uit de noemer. Twaalf gepresenteerde invoeren blijven twaalf gevallen om te verklaren, ook als sommige geen enkel bestand hebben opgeleverd.
De gekozen instelling geldt voor de onderzochte invoeren, versies en criteria. Ze past misschien niet meer bij een tien keer zo lang document of bij andere afbeeldingen. Voeg geleidelijk representatieve gevallen toe. Die uitbreiding vergroot de controle; ze verandert een kleine test niet in een certificering van het systeem.
Houd een korte beslissing en de volgende controle vast
Je einddossier bevat het corpus, de twee configuraties, de uitkomsten, de verdicts per identificatie en een paar regels conclusie. Vermeld de gekozen instelling, de reden en de beperking: "A bleef behouden voor deze twaalf vragen; twee antwoorden moeten nog worden herzien; extra lange documenten zijn niet gedekt". Iemand anders moet de keuze kunnen begrijpen zonder de sessie te hebben bijgewoond.
Houd A als referentie voor de volgende diagnose. Als geen enkele variant aan de criteria voldoet, houd dan geen enkele aan voor de levering; formuleer een nieuwe hypothese. Reserveer tijd voor het kopiëren en controleren voordat je dit vervolg start. Een afgeronde test met een duidelijke beperking levert al een beslissing op; hij verplicht je niet om door te gaan tot je een winnaar vindt.