Ablaufskizze eines Program Bench: Aufgabenbeschreibung geht an das KI-Modell, das Modell liefert Programmcode, der Code läuft in einer abgeschotteten Testumgebung gegen versteckte Testfälle, am Ende steht eine Prozentzahl gelöster Aufgaben.

Program Bench

Ein Program Bench ist eine feste Sammlung von Programmieraufgaben, mit der man prüft, wie gut ein Computerprogramm oder ein KI-System Code schreiben kann. Alle Teilnehmer bekommen dieselben Aufgaben, deshalb lassen sich die Ergebnisse direkt vergleichen.

Wenn man wissen will, wie gut ein Computerprogramm eine Aufgabe löst, braucht man eine Prüfung mit festen Regeln. Ein Program Bench ist genau so eine Prüfung. Es ist eine Sammlung von Programmieraufgaben, die immer gleich bleibt. Ein System bekommt die Aufgabenbeschreibung und soll den passenden Programmcode schreiben. Danach wird der Code automatisch ausgeführt und gegen vorbereitete Testfälle geprüft. Am Ende steht eine Zahl: der Anteil der Aufgaben, die korrekt gelöst wurden. Der englische Begriff „Bench“ ist die Kurzform von „Benchmark“, also einem Vergleichsmaßstab.

Warum Firmen mit Bench-Punkten werben

Behauptungen über Software sind billig. Jeder Anbieter sagt, sein System schreibe guten Code. Ein Program Bench macht diese Behauptung überprüfbar, weil alle Teilnehmer dieselben Aufgaben bearbeiten. Man kann die Prüfung wiederholen und die Ergebnisse nachrechnen. Deshalb stehen bei neuen KI-Modellen fast immer Benchmark-Zahlen in der Ankündigung.

Für Unternehmen hängt daran echtes Geld. Wer ein KI-Werkzeug für seine Entwicklungsabteilung einkauft, will nicht nur Werbeversprechen. Bench-Ergebnisse sind eine erste, günstige Entscheidungshilfe. Auch Investoren schauen darauf, weil ein Sprung in den Punktzahlen als technischer Fortschritt gilt.

Gleichzeitig entsteht daraus ein bekanntes Problem. Sobald eine Prüfung wichtig wird, optimieren alle genau auf diese Prüfung. Ein Modell kann bei den Testaufgaben glänzen und im echten Projektalltag enttäuschen. Fachleute nennen das Überanpassung an den Benchmark.

Vom Aufgabentext zur Prozentzahl

Eine einzelne Aufgabe besteht meist aus drei Teilen. Erstens eine Beschreibung in normaler Sprache, etwa: sortiere eine Liste von Namen nach Länge. Zweitens ein Gerüst, in das der Code eingesetzt wird. Drittens eine Reihe versteckter Testfälle, die niemand vorher sieht.

Der Ablauf ist danach mechanisch. Das getestete System liefert Code, der Code wird in einer abgeschotteten Umgebung ausgeführt, die Tests laufen durch. Läuft alles fehlerfrei, gilt die Aufgabe als gelöst. Ein einziger fehlgeschlagener Test bedeutet null Punkte für diese Aufgabe. Das ist streng, aber es verhindert Diskussionen über Teilpunkte.

Häufig darf ein System mehrere Versuche machen. Dann wird angegeben, wie viele Aufgaben bei einem Versuch gelöst wurden und wie viele bei zehn Versuchen. Diese Unterscheidung ist wichtig: ein System, das erst im zehnten Anlauf trifft, braucht in der Praxis einen Menschen, der die falschen Antworten aussortiert. Vergleicht man Zahlen aus verschiedenen Quellen, muss man also prüfen, ob dieselbe Zählweise gemeint ist.

Bench-Zahlen in Modellankündigungen lesen

Am häufigsten trifft man solche Zahlen in Pressemitteilungen zu neuen KI-Modellen. Dort stehen Balkendiagramme mit Namen bekannter Aufgabensammlungen und Prozentwerten. Ein typischer Satz lautet, das neue Modell löse 70 Prozent der Aufgaben, das Vorgängermodell nur 50 Prozent. Wer den Begriff Program Bench kennt, weiß, wie diese Zahl entstanden ist.

Berühmte Beispiele solcher Sammlungen sind HumanEval mit kleinen Einzelfunktionen und SWE-bench mit echten Fehlerberichten aus offenen Softwareprojekten. Der Unterschied ist groß. Eine kurze Funktion zu schreiben ist deutlich leichter, als in einem gewachsenen Projekt mit tausenden Dateien den richtigen Fehler zu finden. Deshalb sind die Punktzahlen bei den schwereren Sammlungen viel niedriger.

Ein verbreiteter Irrtum ist, ein hoher Wert bedeute einsatzfertige Software. Benchmarks messen enge, klar prüfbare Teilaufgaben. Lesbarkeit, Sicherheit, Wartbarkeit und Absprachen im Team bleiben außen vor. Bench-Zahlen sind also ein nützlicher Hinweis, aber kein Ersatz für einen eigenen Test am echten Projekt.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.