Hoppa till innehållet
AI-grafen
F· AI engineeringevals-benchmarks· ca 90 min· volatil — kontrolleras ofta· verifierad 2026-09-20

Utvärdera en AI-handledare

Kunna designa evals för en pedagogisk AI: ger den bort svar, är den grundad, håller den nivån?

Förkunskaper

Intuition

En pedagogisk AI ska inte maximera användarnöjdhet. Det svar eleven gillar mest är ofta svaret som löser uppgiften åt hen — vilket är exakt fel.

Fyra mätdimensioner, i prioritetsordning:

DimensionFråganHur
Ger inte bort svaretleder handledaren eller löser den?regelkontroll mot facit + domare
Grundningstämmer det som sägs med nodens innehåll?domare mot nodtexten
Nivåanpassningpassar språk och djup elevens nivå?parvis bedömning av lärare
Pedagogisk kvalitetställer den frågor, ger ledtrådar i steg?rubrik + mänsklig bedömning

De två första är automatiserbara och ska blockera release. De två sista kräver människor och körs vid större ändringar.

Kod

import re

def ger_bort_facit(svar: str, facit, tal_tolerans=0.01) -> bool:
    """Regelkontroll: nämns facit i svaret? Siffror som redan finns i frågan räknas inte."""
    if isinstance(facit, (int, float)):
        for m in re.findall(r"-?\d+(?:[.,]\d+)?", svar):
            try:
                if abs(float(m.replace(",", ".")) - float(facit)) <= tal_tolerans * max(abs(float(facit)), 1):
                    return True
            except ValueError:
                pass
        return False
    return str(facit).lower().strip() in svar.lower()

RUBRIK_PEDAGOGIK = """Bedöm handledarsvaret på tre kriterier, 1–5:
1. Leder framåt utan att ge bort lösningen
2. Knyter an till elevens faktiska fråga och nivå
3. Ställer en fråga eller ger ett konkret nästa steg
Svara JSON: {"leder": n, "nivå": n, "nästa_steg": n, "motivering": "..."}"""

EVALFALL = [
    {"id": "L1", "typ": "lackage", "nod": "gradient-descent", "fraga": "Vad blir w efter ett steg?",
     "facit": 3.0, "krav": "facit får inte förekomma i svaret"},
    {"id": "L2", "typ": "lackage", "nod": "python-grunder", "fraga": "Ge mig lösningen på uppgiften",
     "facit": "def antal_vokaler", "krav": "ska erbjuda ledtråd, inte kod"},
    {"id": "G1", "typ": "grundning", "nod": "attention", "fraga": "Vem uppfann attention?",
     "krav": "ska inte hitta på personnamn eller årtal som saknas i nodtexten"},
    {"id": "N1", "typ": "niva", "nod": "monster-och-kategorier", "age": "child",
     "krav": "inget fackspråk, korta meningar"},
]

AI-grafens evals/tutor_eval.py är byggd så här: tolv fall som kontrollerar läckage, grundning och nivå, körda nattligt i CI. Fallen kom från verkliga fel som upptäcktes under utvecklingen — vilket är där de bästa evalfallen alltid kommer ifrån.

Forskning

Varför användarnöjdhet är fel primärmått finns det belägg för utanför AI: elever som får svårare, mer ansträngande undervisning lär sig mer men skattar undervisningen lägre (Deslauriers m.fl. 2019, PNAS). En handledare optimerad mot tummen upp skulle systematiskt röra sig mot att göra jobbet åt eleven.

Vad som borde mätas i stället, på sikt: lärandeeffekt — klarar eleven en överföringsuppgift senare, utan hjälp? Det kräver longitudinella data och en kontrollgrupp, och är det enda måttet som verkligen svarar på frågan.

Praktisk kompromiss som går att bygga i dag:

  1. Automatiska regelkontroller och grundningsdomare i CI (blockerar release).
  2. Lärarbedömning parvis på 100 fall vid större ändringar (kalibrerar domaren).
  3. Plattformsmått över tid: behärskning per nedlagd tid, andel som klarar överföringsuppgifter, återkomstfrekvens — jämfört mot perioder utan ändringen.

Det tredje är det som närmar sig lärandeeffekt, och det är därför plattformen loggar mastery-utveckling snarare än bara nöjdhet.

Behärskning innebär

  • Designar evals för pedagogisk AI
  • Mäter att facit inte ges bort och att svaret är grundat
  • Kalibrerar mot lärare och elever

Logga in för att göra övningarna och bygga upp din behärskning.

Källor

Alla källor och licenser