Hoppa till innehållet
AI-grafen
E· Universitetai-produktutveckling· ca 60 min· utvecklande· verifierad 2026-09-20

Produktmått för AI-funktioner

Kunna definiera mått som fångar värde för användaren, inte bara modellkvalitet.

Förkunskaper

Intuition

En modell kan bli bättre utan att produkten blir det — och tvärtom. Därför behövs två sorters mått:

ModellmåttProduktmått
Exempelaccuracy, F1, grundningsgrad, perplexitetuppgift slutförd, tid till svar, återkomst, eskaleringar
Ändras avmodellenhela upplevelsen
Mäts ievalsvitdrift, A/B-test

Koppla ihop dem. Om grundningsgraden stiger 10 procentenheter men inget produktmått rör sig har du optimerat något som inte spelade roll — värdefull information i sig.

Mätramverk som fungerar: ett norrstjärnemått (det värde produkten ska skapa), 3–5 stödmått som förklarar rörelser i det, och 2–3 skyddsräcken som inte får försämras.

Formellt

Exempel för AI-grafen:

RollMåttVarför
Norrstjärnabehärskade noder per nedlagd studietimmefångar faktiskt lärande per insats — inte aktivitet
Stödandel påbörjade vägar som slutförs
Stödandel klarade överföringsuppgiftermäter förståelse, inte igenkänning
Stödtid till första «aha» (första behärskade noden)onboarding
Skyddsräckeandel handledarsvar som ger bort facitfår inte öka
Skyddsräckekostnad per aktiv elev och månadfår inte överskrida budget
Skyddsräckeandel elever som lämnar mitt i en vägfår inte öka

Mått som lätt går att spela — och därför är dåliga norrstjärnor:

  • Tid i appen. Maximeras av att göra saker svåra att hitta.
  • Antal meddelanden till handledaren. Maximeras av otydliga svar.
  • Tummen upp. Maximeras av att ge bort svaret.

Det sista är särskilt viktigt i utbildning: forskning visar att elever skattar undervisning lägre när den är mer krävande — trots att de lär sig mer. Ett nöjdhetsmått som norrstjärna skulle styra produkten åt fel håll.

Regeln: fråga alltid «hur skulle jag maximera det här måttet om jag inte brydde mig om användaren?». Går det lätt är måttet fel.

Kod

from dataclasses import dataclass

@dataclass
class Matt:
    namn: str
    roll: str                # norrstjarna | stod | skyddsracke
    riktning: str            # upp | ner | stabil
    trosk: float | None = None

MATT = [
    Matt("beharskade_noder_per_timme", "norrstjarna", "upp"),
    Matt("andel_slutforda_vagar", "stod", "upp"),
    Matt("andel_klarade_overforingsuppgifter", "stod", "upp"),
    Matt("andel_svar_som_ger_bort_facit", "skyddsracke", "ner", trosk=0.02),
    Matt("kostnad_per_elev_manad", "skyddsracke", "stabil", trosk=12.0),
]

def utvardera_release(fore: dict, efter: dict):
    rader, blockerar = [], False
    for m in MATT:
        d = efter[m.namn] - fore[m.namn]
        brott = (m.trosk is not None and
                 ((m.riktning == "ner" and efter[m.namn] > m.trosk) or
                  (m.riktning == "stabil" and efter[m.namn] > m.trosk)))
        blockerar |= brott and m.roll == "skyddsracke"
        rader.append({"matt": m.namn, "roll": m.roll, "delta": round(d, 4), "brott": brott})
    return {"blockerar": blockerar, "rader": rader}

Behärskning innebär

  • Definierar mått som fångar användarvärde
  • Skiljer modellmått från produktmått
  • Undviker mått som går att spela

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

Källor

Alla källor och licenser