Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Ist mein neuer KI-Agent wirklich besser?

Nach dieser Lektion: Ich kann sagen, ob ein Agent besser ist als ein anderer, wenn jeder Lauf anders ausfällt.

Lektion, 70 Min.6 BefehleLab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Um 13 Punkte besser, oder durch Zufall?

Statistische Signifikanz fragt, ob der Abstand zwischen zwei Agenten größer ist, als der Zufall ihn liefern würde. Sie lohnt sich, denn ein Agent fällt bei jedem Lauf anders aus, und eine einzige Quote je Version kann in die falsche Richtung zeigen.

Die neue Version des Shop-Agenten erreicht 13 Punkte mehr. Veröffentlichen Sie sie?

Am Ende dieser Lektion

Notiz

Ich kann sagen, ob ein Agent besser ist als ein anderer, wenn jeder Lauf anders ausfällt.

Schlüsselwörter

BegriffWas er bedeutet
Besteht bei kein Fall, der in mindestens einem von k Läufen bestand
Besteht immerein Fall, der in allen k Läufen bestand
Intervallder Bereich, in dem eine Quote wirklich liegen kann
Vorzeichentestein Test darauf, wie viele Fälle besser oder schlechter wurden
p-Wertdie Chance auf einen solchen Abstand allein durch Zufall

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Lassen Sie jeden Fall mehrmals laufen

Lassen Sie jeden Fall k-mal je Version laufen, hier fünfmal. Zwei Zahlen beschreiben einen Fall. Besteht bei k sagt, dass er mindestens einmal bestand: Der Agent kann es. Besteht immer sagt, dass er in allen k Läufen bestand: Man kann sich darauf verlassen.

Ein Support-Agent, der immer bestehen muss, hat eine andere Hürde als einer, der manchmal bestehen muss.

Durchgerechnetes Beispiel: acht Fälle, je fünf Läufe

VersionQuoteBesteht bei 5Besteht immer
Alt60 Prozent7 von 82 von 8
Neu73 Prozent8 von 83 von 8

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Fragen Sie, wie viel vom Abstand Zufall ist

Eine Quote aus 40 Läufen ist eine Schätzung. Zeichnen Sie ein Intervall von etwa zwei Standardfehlern nach jeder Seite. Überlappen sich das Intervall der alten und das der neuen Version stark, kann der Abstand Glück sein.

Mehr Läufe und mehr Fälle verengen das Intervall. Nur so wird ein kleiner Abstand ehrlich deutlich.

Zählen Sie die Fälle, die sich bewegt haben

Der Vorzeichentest ignoriert, wie groß jede Änderung ist. Er zählt die Fälle, die besser wurden, und die, die schlechter wurden. Gleichstände zählen nicht.

Der p-Wert ist die Chance auf eine so einseitige Verteilung, wenn die Versionen wirklich gleich wären. Wählen Sie die Grenze zuerst. Hier ist es 0,05, und ein p-Wert darunter erlaubt, besser oder schlechter zu sagen.

Aufgezeichnete Läufe schreiben

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' '// Fünf aufgezeichnete Läufe je Fall: 1 bestanden, 0 gescheitert.' 'const alt = [\"11111\", \"11101\", \"10100\", \"11011\", \"00000\", \"01101\", \"11111\", \"00010\"];' 'const neu = [\"11111\", \"11111\", \"10101\", \"11110\", \"00100\", \"11011\", \"11111\", \"01010\"];' 'module.exports = { alt, neu };' > laeufe.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Vergleich schreiben, Teil 1

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const { alt, neu } = require(\"./laeufe\");' 'function erfolge(text) {' '  return text.split(\"\").filter(function (c) { return c === \"1\"; }).length;' '}' > statistik.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Vergleich schreiben, Teil 2

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function zusammenfassung(name, version) {' '  const zahlen = version.map(erfolge);' '  const summe = zahlen.reduce(function (a, b) { return a + b; }, 0);' '  const laeufe = version.length * version[0].length;' '  const p = summe / laeufe;' '  const zwei = 2 * Math.sqrt(p * (1 - p) / laeufe);' '  const mindestens = zahlen.filter(function (n) { return n > 0; }).length;' '  const immer = zahlen.filter(function (n) { return n === version[0].length; }).length;' '  console.log(name + \": Quote \" + Math.round(p * 100) + \" Prozent, Intervall \" + Math.round((p - zwei) * 100) + \" bis \" + Math.round((p + zwei) * 100));' '  console.log(name + \": besteht bei 5 \" + mindestens + \" von \" + version.length + \", besteht immer \" + immer + \" von \" + version.length);' '}' 'zusammenfassung(\"Alt\", alt);' 'zusammenfassung(\"Neu\", neu);' >> statistik.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Vergleich schreiben, Teil 3

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function pVorzeichen(besser, schlechter) {' '  const n = besser + schlechter;' '  if (n === 0) return 1;' '  const unten = Math.min(besser, schlechter);' '  let summe = 0;' '  let wege = 1;' '  for (let i = 0; i <= unten; i = i + 1) {' '    summe = summe + wege;' '    wege = wege * (n - i) / (i + 1);' '  }' '  return Math.min(1, 2 * summe / Math.pow(2, n));' '}' >> statistik.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Vergleich schreiben, Teil 4

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'let besser = 0;' 'let schlechter = 0;' 'alt.forEach(function (text, stelle) {' '  const a = erfolge(text);' '  const b = erfolge(neu[stelle]);' '  if (b > a) besser = besser + 1;' '  if (b < a) schlechter = schlechter + 1;' '});' 'const p = pVorzeichen(besser, schlechter);' 'console.log(\"Fälle besser: \" + besser + \", schlechter: \" + schlechter + \", gleich: \" + (alt.length - besser - schlechter));' 'console.log(\"p des Vorzeichentests: \" + p.toFixed(4));' 'console.log(\"Urteil: \" + (p < 0.05 ? (besser > schlechter ? \"besser\" : \"schlechter\") : \"unklar\"));' >> statistik.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die beiden Versionen vergleichen

Befehl
docker exec -w /home/node/project agent node statistik.js

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Was der Vergleich ausgibt

ZeileWas sie zeigt
Quote alt60 Prozent, Intervall 45 bis 75
Quote neu73 Prozent, Intervall 58 bis 87
Fällebesser 5, schlechter 0, gleich 3
p des Vorzeichentests0.0625
Urteilunklar

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Probieren Sie es aus

Tipp

Ändern Sie in laeufe.js den vierten Fall von neu von "11110" auf "11111" und vergleichen Sie erneut. Nun sind sechs Fälle besser und keiner schlechter, und p fällt unter 0,05.

Ein häufiger Fehler

Warnung

Viele wiederholen den Vergleich so lange, bis der p-Wert unter 0,05 fällt, und hören dann auf. Jede Wiederholung ist eine neue Gelegenheit, Glück zu haben. Legen Sie vorher die Zahl der Fälle und Läufe fest, führen Sie einmal aus und berichten Sie, was herauskommt.

Über dieses Lab und seinen Quellcode: Lab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.