Das Problem der ursprünglichen Idee.
Das Repository begann als Telegram-„Psychologen“-Bot. Es speicherte sensible Gespräche und stellte generierte Antworten als etwas dar, das einer Betreuung näherkam, als es die Software rechtfertigen konnte.
Ich habe die nützliche technische Frage beibehalten – wie ein kleiner Textklassifikator lernt und scheitert –, aber Konten, Transkripte, Diagnosen und therapeutische Aussagen entfernt. Das neue Projekt macht Modell, Datenteilung, Kalibrierungsrichtlinie und Sicherheitsgrenze sichtbar.
Was ein glaubwürdiges Experiment braucht.
Die Neugestaltung musste Evaluationslecks und Unsicherheit schwerer zu verbergen machen:
- Verwandte Prompts müssen gruppiert bleiben, damit Paraphrasen nicht zwischen Training und Test wechseln.
- Kalibrierung, Richtlinienwahl, In-Distribution-Test und Out-of-Distribution-Test benötigen getrennte Datenrollen.
- Schwache Evidenz muss zur Enthaltung führen statt zu einem erzwungen sicheren Label.
- Browser- und Rust-Implementierung müssen dasselbe versionierte Artefakt und denselben Inferenzvertrag prüfen.
Von Demo-Accuracy zu einem Protokoll.
Ein einzelner Train/Test-Wert beantwortet die wichtigen Fragen nicht. Er zeigt weder, ob ähnliche Prompt-Familien die Teilung überqueren, noch ob Schwellen am finalen Testdatensatz abgestimmt wurden oder was außerhalb des Trainingsbereichs geschieht.
Das v3-Protokoll friert deshalb gruppenbewusste Partitionen ein und trennt Modell-Fitting, Wahrscheinlichkeitskalibrierung, Auswahl der Enthaltungsrichtlinie und finale Evaluation. Rust-Typen halten finale Testsätze aus den Auswahl-APIs heraus.
Die Open-Set-Pipeline.
Strikte TSV-Validierung speist eine deterministische, gruppenbewusste Teilung. Ein ausschließlich auf Trainingsdaten aufgebautes TF-IDF-Vokabular und multinomiale logistische Regression erzeugen Wahrscheinlichkeiten, Temperature Scaling kalibriert sie, und eine separat gewählte Richtlinie entscheidet über die Enthaltung.
Entscheidungen für ein ehrliches Ergebnis.
Das Projekt behandelt das Evaluationsprotokoll als Teil der Software.
Semantische Familien einfrieren
Die überwachte Fixture enthält 525 Zeilen in 105 gleich großen Prompt-Familien. Explizite Gruppen-IDs halten verwandte Formulierungen bei der Partitionierung zusammen.
Die Fixture ist bewusst synthetisch und begrenzt; sie stützt Reproduzierbarkeit, keine Aussagen über reale klinische Sprache.
Unbekanntes von finalen Tests trennen
Getrennte OOD-Entwicklungs- und OOD-Testpopulationen erlauben die Auswahl der Enthaltungsrichtlinie vor ihrer finalen Bewertung.
Das Protokoll braucht mehr Fixtures und Buchführung, doch die finale Messung gehört nicht mehr zur Abstimmung.
Die tatsächliche Margin erklären
Vorhersagen zeigen Wahrscheinlichkeiten, Konfidenz, Top-Two-Margin und Merkmalsbeiträge, die die Differenz der führenden Logits rekonstruieren.
Die Merkmalsattribution erklärt die Berechnung dieses linearen Modells, nicht menschliche Bedeutung oder Absicht.
Reproduktions- und Release-Prüfungen.
Modell, Richtlinie, Metriken und Teilungsplan liegen in einem durch SHA-256 verknüpften Bundle. Die CLI kann es neu aufbauen, alle Verträge prüfen und begrenzte Batch-Inferenz ausführen. Eine festgelegte Berichtspräzision hält das v3-Bundle auf unterstützten Release-Zielen bytegleich.
Rust- und Browser-Code führen Paritäts-Fixtures gegen dasselbe Modell aus. Ein separater, per SHA-256 gebundener Auswahlbericht veröffentlicht jede Out-of-Fold-Wahrscheinlichkeit, Fold-Zuordnung und Kandidatenrangfolge; der Browser berechnet die Metriken neu und schließt bei veränderten Bytes oder Aggregaten.
Was das Projekt zeigt.
ELIZA Lab zeigt einen vollständigen Ablauf für ein kleines Modell: verschachtelte gruppenbewusste Auswahl, Kalibrierung, Open-Set-Richtlinienwahl, eingefrorene Tests, Artefaktprüfung und lokale Inferenz.
Es ist weder Therapeut noch Krisenerkennung oder produktives Sprachmodell. Sein Wert liegt darin, dass Lernende das Experiment prüfen und das Ergebnis reproduzieren können, statt einer Black-Box-Demo zu vertrauen.
Evidenzprotokoll.
Die geprüften Artefakte zeigen Auswahlresultat, eingefrorenen Test und Schwachstellen gemeinsam:
- Auswahlprotokoll
- 385 Trainings- und Entwicklungszeilen in 77 Familien durchlaufen 11 äußere und 5 innere Gruppen-Folds; dabei werden 506 Modelle trainiert.
- Auswahlergebnis
- Die Out-of-Fold-Accuracy beträgt 62,597% und der Macro-F1 62,640%; das familiengeclusterte 95%-Intervall der Accuracy reicht von 57,143 bis 68,571%.
- Eingefrorener ID-Test
- 82,857% Accuracy und 82,278% Macro-F1 auf 70 synthetischen englischen Zeilen.
- Open-Set-Ergebnis
- Die eingefrorene Policy deckt 62,857% der ID- und 11,11% der OOD-Zeilen ab; die OOD AUROC beträgt 0,80278 und die FPR bei 95% TPR 0,7778.
- Bekannte Schwäche
- Die Kontrast-Fixture mit 28 Zeilen erreicht 42,86% Paar-Accuracy; das Projekt verschweigt dieses Scheitern nicht.