KI-Funktionen evaluieren: messbare Qualität vor dem Release
Die Entwicklung einer KI-gestützten Funktion beginnt oft mit einigen beeindruckenden Beispielen. Ein neuer Prompt erzeugt in einer Demo eine bessere Zusammenfassung, ein anderes Modell schreibt flüssiger oder eine Retrieval-Anpassung findet mehr Quellmaterial. Diese Beobachtungen reichen jedoch nicht für eine Produktionsentscheidung. Eine Änderung, die bei einem Beispiel besser funktioniert, kann bei einer anderen Nutzeranfrage Genauigkeit senken, Kosten erhöhen, Latenz steigern oder eine Sicherheitsgrenze schwächen.
Eine KI-Funktion sollte deshalb nicht nur als Modellaufruf, sondern als messbares Produktverhalten behandelt werden. Ziel einer Evaluationspipeline ist nicht die allgemeine Frage „Ist das Modell gut?“. Die hilfreichere Frage lautet: Ist diese Version bei wichtigen Nutzeraufgaben zuverlässiger als die vorherige und versagt sie auf akzeptable Weise?
Zuerst die Produktentscheidung beschreiben
Bevor ein Evaluationsset gesammelt wird, muss klar sein, was die Funktion erreichen soll. „Hilfreiche Antworten erzeugen“ ist zu breit. Definieren Sie stattdessen eine konkrete Aufgabe: Aktionspunkte aus einem Meeting-Transkript extrahieren, ein langes Dokument nach vorgegebenen Überschriften zusammenfassen, eine Kundenanfrage der richtigen Kategorie zuordnen oder eine Recherchefrage mit Quellen beantworten.
Erfolg und Fehler bedeuten für jede Aufgabe etwas anderes. Bei Aktionspunkten kann es teurer sein, einer Person den falschen Besitzer zuzuordnen, als einen Punkt zu übersehen. Bei einer Dokumentzusammenfassung ist es schlimmer, nicht in der Quelle vorhandene Details hinzuzufügen, als eine kürzere Zusammenfassung zu liefern. Bei Klassifikation kann „Prüfung erforderlich“ für mehrdeutige Eingaben besser sein, als eine falsche Kategorie zu erzwingen.
Diese Entscheidungen stehen vor der Metrikauswahl. Ein numerischer Score ist nur nützlich, soweit er Produktrisiko abbildet.
Ein kleines, aber repräsentatives Set bauen
Ein erstes Evaluationsset braucht keine Tausenden Beispiele. Zwanzig bis fünfzig sorgfältig ausgewählte Fälle können nützlicher sein als Hunderte zufällige. Das Set sollte normales Nutzerverhalten und riskante Randfälle verbinden:
- häufige, normale Eingaben,
- kurze, lange und schlecht formatierte Eingaben,
- mehrdeutige Anfragen mit mehreren möglichen Interpretationen,
- fehlenden Kontext oder Fälle ohne richtige Antwort,
- sensible Inhalte, Berechtigungsgrenzen oder Anfragen, die abgelehnt werden müssen,
- Beispiele, die zuvor zu Supportkontakten oder Fehlern geführt haben.
Jeder Fall sollte, wenn möglich, ein erwartetes Ergebnis, akzeptable Varianten und eine Evaluationsnotiz enthalten. Bei Freitextaufgaben ist eine einzige „goldene Antwort“ nicht immer der richtige Ansatz. Eine Checkliste mit nötigen Fakten, verbotenen Behauptungen, gewünschtem Ton oder Quellenanforderungen kann hilfreicher sein.
Das Set unter Versionskontrolle zu halten, ist wichtig. So wird sichtbar, wann ein Fall hinzugefügt wurde, welcher Produktionsfehler einen neuen Test erzeugte und welche Datenversionen verglichen wurden.
Ausgabe über mehrere Dimensionen prüfen
Ein einzelner Score erklärt nicht das gesamte KI-Verhalten. Eine Evaluation sollte mindestens diese Dimensionen trennen:
- Aufgabenerfolg: Erledigt die Antwort die gewünschte Arbeit wirklich?
- Genauigkeit und Belegbarkeit: Stimmen Aussagen mit Eingabe oder bereitgestellten Quellen überein?
- Format: Bleiben erforderliches JSON, Tabelle, Feldstruktur oder Sprachregel erhalten?
- Sicherheit: Achtet die Funktion auf Autorisierung, Privatsphäre und Inhaltsgrenzen?
- Nutzbarkeit: Ist die Antwort verständlich, passend lang und handlungsorientiert?
- Kosten und Latenz: Entsteht das Ergebnis innerhalb akzeptabler Zeit und Budget?
Eine Modellantwort kann grammatikalisch hervorragend sein, aber einen Automationsablauf brechen, weil sie das geforderte Schema nicht einhält. Oder eine quellenbasierte Antwort kann elegant wirken, ohne Belege zu liefern. Getrennte Scores machen sichtbar, welche Verbesserung mit welchen Kosten einhergeht.
Automatische Checks mit menschlicher Prüfung verbinden
Einige Kriterien lassen sich zuverlässig im Code prüfen. Ist das JSON-Schema gültig? Gibt es ein Pflichtfeld? Wurde eine Quellen-ID zurückgegeben? Bleibt die Antwort innerhalb der erlaubten Länge? Enthält sie ein Muster persönlicher Daten? Diese Checks sind schnell und sollten bei jeder Version laufen.
Qualitäten wie Genauigkeit, Nutzen und Ton erfordern oft menschliche Prüfung. Statt die Prüfung auf Zufallsfälle zu beschränken, ist es effizienter, riskante Beispiele und Fälle mit großen Score-Änderungen zu prüfen. Prüfer benötigen eine explizite Rubrik; sonst ist „Ich finde es besser“ zwischen Versionen nicht vergleichbar.
Ein anderes Modell als Bewerter zu nutzen, kann ein hilfreiches Signal sein, darf aber nicht als endgültige Wahrheit gelten. Auch ein Judge-Modell kann falsch, voreingenommen oder zu formempfindlich sein. Menschliche Verifikation und Regelchecks für bekannte Fehlertypen gleichen dieses Risiko aus.
Alle Eingaben einer Version festhalten
Wenn sich Output ändert, reicht es nicht, nur den Modellnamen zu kennen. Ein Evaluationsdatensatz sollte Modell- und Providerversion, Prompt-Version, Systemanweisung, Tool-Definitionen, Retrieval-Einstellungen, Generierungsparameter und Version des Evaluationssets enthalten.
Das ermöglicht die Untersuchung der Frage: „Warum schlägt ein gestern erfolgreicher Test heute fehl?“ Es erleichtert auch Rollback. Verursacht ein neuer Prompt Probleme in Produktion, muss das Team nicht nur Code, sondern die vollständige Konfiguration mit bekannt gutem Verhalten wiederherstellen.
Muss echter Nutzerinhalt vom Client aufbewahrt werden, gehören Datenschutzrichtlinie, Maskierung und Aufbewahrungsdauer zum Evaluationsdesign. Mehr personenbezogene Daten als nötig zu sammeln, um Qualität zu messen, ist kein guter Tausch.
Veränderung und Fehlerbudget verfolgen, nicht nur Schwellenwerte
Ein hoher Durchschnittsscore macht eine Version nicht automatisch produktionsreif. Eine kleine Regression in einer kritischen Fehlerkategorie kann nicht akzeptabel sein. Neben dem allgemeinen Score sollten rote Linien definiert werden: unbelegte Behauptung, ungültige strukturierte Ausgabe oder eine Antwort auf eine Anfrage, die abgelehnt werden müsste.
Die Entscheidung fällt meist durch Vergleich zweier Versionen. Welche Fälle verbesserten sich, welche verschlechterten sich und wie veränderten sich Kosten und Latenz? Dieser Vergleich zeigt nicht nur beeindruckende Beispiele einer Modelländerung, sondern auch deren Verluste.
Ein schrittweiser Produktions-Rollout ersetzt das Evaluationsset nicht, sondern ergänzt es. Fehlerraten, Feedback und Sicherheitsvorfälle einer kleinen Nutzergruppe liefern zusätzliche Hinweise auf reales Verhalten. Bedingungen für ein Rollback sollten vor dem Release feststehen.
Eine nützliche Evaluationspipeline muss nicht als große Plattform starten. Ein versioniertes kleines Fallset, einige automatische Checks, eine klare menschliche Rubrik und der Vergleich zwischen Versionen verwandeln Prompt-Experimente bereits in wiederholbare Engineering-Entscheidungen. So wird eine KI-Funktion von einer beeindruckenden Demo zu einer Produktfähigkeit, die sich sicher weiterentwickeln lässt.