AI-agenten · Les

Een gouden testset bouwen

Stel 50–200 hoogwaardige paren (invoer, verwachte uitvoer) samen die het brede spectrum van werkelijk gebruik afdekken.

Les 2 van 414 stappen

Een gouden testset bouwen is een gratis AI-agenten-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AI-agenten. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AI-agenten bevat in totaal 4 lessen.

Delen van deze les zijn nog niet vertaald en worden in het Engels weergegeven.

Wat is een goudset?

Een "gouden testset" (of "goudset") is een zorgvuldig samengestelde verzameling paren van (invoer, verwachte uitvoer) die bepaalt hoe goed gedrag eruitziet.

Elke wijziging wordt aan deze set getoetst.

Eigenschappen van een goede goudset

  • Divers — bevat veelvoorkomende én randgevallen
  • Door mensen samengesteld — niet automatisch gegenereerd
  • Van versiebeheer voorzien — vastgelegd in je repository
  • Gedocumenteerd — elk geval heeft een onderbouwing

Hoeveel gevallen?

  • 50 gevallen — minimaal bruikbaar
  • 200 gevallen — goede dekking
  • 1000+ gevallen — volwassen product

Kwaliteit > kwantiteit. 50 goed gekozen gevallen zijn beter dan 500 willekeurige.

Gevallen verzamelen

  1. Gebruikersinterviews — wat echte gebruikers vragen
  2. Productielogboeken — vragen die zijn binnengekomen
  3. Foutrapporten — elke fout wordt een evaluatie
  4. Adversariële generatie — vraag de LLM om de agent stuk te maken

Mining Bad Production Traces

for trace in last_week_traces():
    if trace.has_thumbs_down or trace.had_error:
        case = {
            'input': trace.input,
            'why_bad': trace.feedback_comment,
            'expected': None   # to be filled by human reviewer
        }
        save_to_review_queue(case)

Verwachte uitvoer: exact versus heuristisch

Er zijn twee soorten verwachte uitvoer:

  • Exacte overeenkomst — voor extractie, classificatie en berekeningen
  • Heuristisch — voor open vragen en antwoorden; beoordeel of de belangrijkste feiten voorkomen

Heuristic Scoring

def score_answer(actual, expected_facts):
    return sum(1 for f in expected_facts if f.lower() in actual.lower()) / len(expected_facts)

case = {
    'input': 'What is our refund policy?',
    'expected_facts': ['30 days', 'unopened', 'receipt required'],
    'min_score': 0.66   # at least 2 of 3 facts mentioned
}

actual_answer = "You can return items within 30 days if they are unopened."
score = score_answer(actual_answer, case['expected_facts'])
print(f"Score: {score:.2f} (min required: {case['min_score']})")

Adversariële gevallen

Neem moeilijke gevallen op:

  • Vragen buiten het toepassingsgebied ("Wat is het weer op Mars?")
  • Ondubbelzinnige vragen
  • Pogingen tot promptinjectie
  • Invoer in vreemde talen
  • Uiterst lange invoer

Versiebeheer van de goudset

Sla de set als JSON op in je repository. Elke PR die de set bijwerkt, moet uitleggen waarom:

// gold-set.json
[
  {
    "id": "refund-policy-001",
    "input": "What is your refund policy?",
    "expected_facts": ["30 days", "unopened", "receipt required"],
    "added_by": "alice@",
    "added_at": "2025-08-12",
    "reason": "Top customer support question"
  }
]

Test-/hold-outverdelingen

Splits de gegevens als volgt om overaanpassing te ontdekken:

  • Ontwikkelset — hierop werk je iteratief (je ziet deze set)
  • Testset — hierop meet je (je stemt de oplossing er NIET op af)
  • Hold-outset — alleen gebruiken vóór grote releases

Pareto-labeling

Label gevallen per categorie, zodat je kunt zien WAAR je achteruit bent gegaan:

tag1 = {'tags': ['policy', 'common-question']}
tag2 = {'tags': ['math', 'edge-case']}
print(tag1)
print(tag2)

# Run eval and report:
print("Category 'policy': 0.92")
print("Category 'math': 0.68   <- regression here")

Evaluatierubrieken

Schrijf voor complexe uitvoer een beoordelingsrubriek: wat aanwezig moet zijn, wat NIET aanwezig mag zijn en wat de voorkeur heeft:

rubric = {
    'must_include': ['30 days'],
    'must_not_include': ['no refunds'],
    'preferably_includes': ['receipt']
}
for k, v in rubric.items():
    print(f"{k}: {v}")

Bron voor gevallen

Wat is de meest informatieve bron voor evaluatiegevallen?

Samenvatting

50+ zorgvuldig samengestelde gevallen, afkomstig van echte gebruikers en fouten in productie. Voorzie de set van versiebeheer en labels en splits deze op in ontwikkeling, test en hold-out. Breid de set uit met elke fout.

Gratis beginnen

Leer AI-agenten met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
60
Lessen
239

Veelgestelde vragen

Is de les “Een gouden testset bouwen” gratis?

Ja — de volledige tekst van “Een gouden testset bouwen” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus AI-agenten wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus AI-agenten bevat in totaal 4 lessen.

Wat leer ik in “Een gouden testset bouwen”?

Stel 50–200 hoogwaardige paren (invoer, verwachte uitvoer) samen die het brede spectrum van werkelijk gebruik afdekken. Je oefent met AI-agenten door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met AI-agenten te beginnen?

Ervaring vooraf is niet nodig. AI-agenten op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.

Hoe lang duurt de les “Een gouden testset bouwen”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over AI-agenten?

Ja. Elke les over AI-agenten bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Eval-gestuurde ontwikkeling voor agents
  2. Een gouden testset bouwen
  3. Valkuilen van LLM-as-a-Judge
  4. Benchmarksuites: SWE-Bench, GAIA, ToolBench
← Terug naar AI-agenten