+160 XP

Outputs bewerten: Woher wissen Sie, dass es funktioniert?

# Outputs bewerten: Woher wissen Sie, dass es funktioniert?

Sie haben ein Tool gebaut, das Kundenbewertungen zusammenfasst. Sie haben es zweimal getestet, sah gut aus, Sie haben es ausgeliefert. Drei Wochen später zeigt Ihnen jemand eine Zusammenfassung, in der eine Fünf-Sterne-Bewertung als „negativ" gilt. Wie lange ging das schon so? Sie haben keine Ahnung, weil Sie es nie gemessen haben.

Das ist die Falle. „Sah gut aus" ist ein Gefühl, keine Metrik. Um ein KI-System zu verbessern, brauchen Sie eine Bewertungsmethode, die nicht von Ihrer Laune an diesem Nachmittag abhängt.

Dieses Werkzeug heißt Eval (kurz für „evaluation"): ein wiederholbarer Test, der misst, wie gut Ihre KI eine bestimmte Aufgabe erledigt.

Warum „sieht gut aus" scheitert

Large Language Models sind nicht deterministisch. Das heißt, derselbe Prompt kann jedes Mal leicht andere Antworten liefern. Ein einzelner Output sagt also fast nichts über die nächsten hundert aus.

Außerdem ändern Sie ständig etwas: Sie justieren einen Prompt, wechseln von GPT-4o zu einem günstigeren Modell, ergänzen eine Anweisung. Jede Änderung kann einen Fall verbessern und einen anderen still kaputt machen. Ohne Score fliegen Sie blind.

Ein Eval löst das. Sie bauen einmal eine kleine Sammlung von Testfällen und lassen sie bei jeder Änderung laufen. Der Score steigt oder fällt. Jetzt können Sie tatsächlich verbessern.

Die Grundidee: ein Test Set

Ein Test Set ist eine Sammlung von Beispiel-Inputs, gepaart mit dem, was ein guter Output enthalten sollte. Für einen Summarizer ist die einfachste Variante eine Menge von Frage-Antwort-Paaren.

Hier der Trick. Statt eine ganze Zusammenfassung zu bewerten (schwer und schwammig), formulieren Sie konkrete Fragen, die eine korrekte Zusammenfassung beantworten können muss.

Nehmen wir an, Sie fassen diese Produktbewertung zusammen:

> „Der Mixer ist kräftig und zerkleinert Eis problemlos, aber er ist extrem laut und der Deckel leckt, wenn man ihn über die Hälfte füllt. Der Versand dauerte zwei Wochen."

Sie formulieren Fragen, deren Antworten die Zusammenfassung überleben sollten:

| Frage | Erwartete Antwort |

|---|---|

| Ist der Mixer kräftig? | Ja |

| Was ist die Hauptbeschwerde zur Lautstärke? | Er ist laut |

| Hat der Deckel ein Problem? | Ja, er leckt bei Überfüllung |

| War der Versand schnell? | Nein, zwei Wochen |

Wenn Sie mit der Zusammenfassung alle vier Fragen korrekt beantworten können, hat sie die wichtigen Fakten bewahrt. Fällt der leckende Deckel weg, merken Sie es.

Damit wird aus einer vagen Frage („ist das eine gute Zusammenfassung?") eine konkrete, zählbare („wie viele dieser Fakten wurden erhalten?").

Ein echtes Eval bauen, Schritt für Schritt

Bauen wir ein ganz kleines. Sie brauchen drei Dinge:

1. Inputs: eine Handvoll Bewertungen (fangen Sie mit 10 bis 20 an, nicht mit 1.000).

2. Checks: Frage-Antwort-Paare für jeden Input.

3. Einen Scorer: etwas, das über pass oder fail entscheidet.

Schritt 1: Inputs und erwartete Fakten sammeln

Speichern Sie sie als einfache Daten. Man braucht keinen Code-Hintergrund, um das zu lesen:

python
test_cases = [
    {
        "review": "The blender is powerful and crushes ice easily, "
                  "but it is extremely loud and the lid leaks if you "
                  "fill it past the halfway line. Shipping took two weeks.",
        "must_include": ["loud", "leak", "powerful"],
    },
    {
        "review": "Battery lasts all day and the screen is bright. "
                  "Setup was confusing and customer support never replied.",
        "must_include": ["battery", "setup", "support"],
    },
]

Die Liste must_include ist eine einfache Version Ihrer „Antworten": Schlüsselfakten, die die Zusammenfassung nennen muss.

Schritt 2: die Zusammenfassungen erzeugen

Hier rufen wir ein Modell auf. Dieses Beispiel nutzt die OpenAI-API, das Muster ist für Claude oder Gemini identisch.

python
from openai import OpenAI
client = OpenAI()

def summarize(review):
    response = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=[
            {"role": "system", "content": "Summarize this product review in one sentence. Keep the key pros and cons."},
            {"role": "user", "content": review},
        ],
    )
    return response.choices[0].message.content

Schritt 3: bewerten

Der einfachste denkbare Scorer: Enthielt die Zusammenfassung jedes erforderliche Keyword?

python
def score(summary, must_include):
    hits = [word for word in must_include if word.lower() in summary.lower()]
    return len(hits) / len(must_include)

total = 0
for case in test_cases:
    summary = summarize(case["review"])
    s = score(summary, case["must_include"])
    total += s
    print(f"Score: {s:.2f} | {summary}")

print(f"\nAverage score: {total / len(test_cases):.2f}")

Lassen Sie es laufen. Vielleicht kommt ein Durchschnitt von 0,83 heraus. Diese Zahl ist Ihre Baseline. Jetzt ändern Sie Ihren Prompt, lassen es erneut laufen und beobachten, wie sich die Zahl bewegt. Nach oben ist gut. Nach unten heißt: Sie haben gerade etwas kaputt gemacht, und Sie haben es vor Ihren Nutzern bemerkt.

Keyword-Matching ist grob. Für den Anfang ist das okay.

Die Prüfung auf das Wort „leak" verpasst eine Zusammenfassung, die sagt „der Deckel lässt Flüssigkeit durch". Keyword-Scoring ist stumpf, aber kostenlos, schnell und fängt offensichtliche Regressionen. Fangen Sie hier an.

Wenn Sie darüber hinauswachsen, ist der nächste Schritt ein LLM-as-judge: Sie lassen ein zweites KI-Modell den Output bewerten. Sie geben ihm die Bewertung, die Zusammenfassung und ein Rubric und fragen nach einem Score.

python
def judge(review, summary):
    prompt = f"""Original review: {review}

Summary: {summary}

Does the summary capture the main pros AND cons? 
Answer only PASS or FAIL."""
    response = client.chat.completions.create(
        model="gpt-4o",
        messages=[{"role": "user", "content": prompt}],
    )
    return response.choices[0].message.content.strip()

Das erfasst Bedeutung, nicht nur exakte Wörter. Der Haken: Der Judge ist auch eine KI, kann also falsch liegen. Prüfen Sie seine Bewertungen bei einigen Fällen gegen Ihr eigenes Urteil, bevor Sie ihm vertrauen.

Wissenscheck

1. Was ist der Kernzweck eines „Eval", wie in der Lektion beschrieben?

2. Warum scheitert „sah gut aus" als Methode, ein KI-System zu beurteilen?

3. Warum empfiehlt die Lektion, konkrete Frage-Antwort-Paare zu schreiben, statt eine ganze Zusammenfassung direkt zu bewerten?

MEHRFACHAUSWAHL

4. Wählen Sie ALLE Gründe aus, die die Lektion dafür nennt, warum ein Eval wertvoll wird, sobald Sie Änderungen an Ihrem System vornehmen. (Wählen Sie ALLE richtigen Antworten)

Wählen Sie alle richtigen Antworten aus.

MEHRFACHAUSWAHL

5. Was macht laut Lektion ein gutes Frage-Antwort-Paar für ein Summarizer-Test-Set aus? (Wählen Sie ALLE richtigen Antworten)

Wählen Sie alle richtigen Antworten aus.

Ihre Scores erwachsen lesen

Eine einzelne Zahl ist ein Anfang, aber wie Sie sie betrachten, macht den Unterschied.

Verfolgen Sie sie über Zeit. Speichern Sie den Durchschnitt jedes Durchlaufs. Eine Tabelle reicht. Wenn der Score nach Ihrem „verbesserten" Prompt von 0,85 auf 0,72 fällt, machen Sie es rückgängig.

Schauen Sie auf die Fehlschläge, nicht auf den Durchschnitt. Der Durchschnitt von 0,83 verbirgt, welche Fälle durchgefallen sind. Lesen Sie immer die schlechtesten. Dort lernen Sie, womit Ihre KI kämpft: lange Bewertungen, Sarkasmus, mehrere Sprachen.

Nehmen Sie bewusst harte Fälle auf. Wenn ein Nutzer eine schlechte Zusammenfassung meldet, beheben Sie sie nicht einfach. Nehmen Sie sie als dauerhaften Fall in Ihr Test Set auf. Ihr Eval wird jedes Mal schlauer, wenn etwas schiefgeht. Diese Sammlung nennt man manchmal Golden Set: Ihr vertrauenswürdiger Bestand an Beispielen.

Legen Sie Ihre Bestehensgrenze fest. Sind 0,83 gut genug zum Ausliefern? Das hängt davon ab, was auf dem Spiel steht. Memes zusammenfassen: klar. Medizinische Anweisungen zusammenfassen: absolut nicht. Sie setzen die Schwelle nach den Kosten eines Fehlers.

Kurz zum Mindset

Evals fühlen sich wie Zusatzarbeit an, wenn Sie heiß darauf sind, auszuliefern. Sie sind kein Overhead. Sie sind das, was Ihnen erlaubt, schnell zu sein, ohne still etwas kaputt zu machen.

Denken Sie an Kochen. Das Gericht einmal probieren ist „sah gut aus". Ein Rezept mit abgemessenen Zutaten und Timer ist ein Eval. Das Rezept ist das, was Sie dasselbe gute Essen hundertmal machen und es gezielt verbessern lässt.

Fangen Sie absurd klein an. Zehn Testfälle und ein Keyword-Check schlagen null. Wachsen können Sie immer noch.

Wenn Sie einen tieferen, trotzdem lesbaren Leitfaden wollen: Die OpenAI Evals Dokumentation führt durch strukturierte Evals mit ihrem Tooling, und die Konzepte lassen sich auf jedes Modell übertragen.

Wo das mit ChatGPT, Claude und Gemini zusammenpasst

Sie brauchen nicht immer Code. Wenn Sie im Chat-Interface prototypen, können Sie ein leichtgewichtiges Eval von Hand fahren:

1. Fügen Sie Ihren Summarization-Prompt ein.

2. Geben Sie ihm Ihre 10 Test-Bewertungen einzeln.

3. Stellen Sie sich zu jeder die Frage-Antwort-Paare und zählen Sie pass/fail.

Alle drei großen Tools (ChatGPT, Claude und Gemini) erlauben auch, eine Datei mit Beispielen hochzuladen und das Modell zu bitten, seinen eigenen Batch gegen ein von Ihnen geschriebenes Rubric zu bewerten. Das ist ein manueller LLM-as-judge. Es ist langsamer als Code, braucht aber null Setup und ist ein völlig guter Start, bevor Sie automatisieren.

Das Mindset ist überall gleich: Definieren Sie in konkreten, prüfbaren Begriffen, was „gut" heißt, bevor Sie dem Output vertrauen.

Key Takeaways

  • Ersetzen Sie „sieht gut aus" durch eine Zahl. Bauen Sie ein kleines Test Set aus Inputs plus den Fakten, die ein guter Output enthalten muss, und bewerten Sie dagegen.
  • Klein und grob anfangen. Zehn Testfälle mit einfachem Keyword-Matching sind unendlich besser als kein Eval. Ausbauen können Sie später.
  • Lassen Sie Ihr Eval nach jeder Änderung an Prompt oder Modell erneut laufen und verfolgen Sie den Score über Zeit, damit Sie stille Regressionen bemerken.
  • Lesen Sie die Fehlschläge, nicht nur den Durchschnitt. Nehmen Sie jeden realen schlechten Fall in Ihr Golden Set auf, damit Ihr Eval mit der Zeit schärfer wird.
  • Passen Sie die Bestehensgrenze dem Risiko an. Eine Zusammenfassung von Memes und eine Zusammenfassung von Dosierungsanweisungen verdienen nicht dieselbe Schwelle.

Was Sie aus dieser Lektion umsetzen

Diese Maßnahmen sind im Playbook der Rolle zusammengefasst.

  • 100 echte Beispiele von Hand labeln und dagegen bewerten
  • Führen Sie Ihre Eval nach jeder Änderung am Prompt oder Modell erneut aus
Vollständiges Action Playbook ansehen

Verwandte Artikel

Aktuelle Blogartikel, die auf dieser Lektion aufbauen.