LiveCodeBench

LiveCodeBench

LiveCodeBench ist ein Test, mit dem geprüft wird, wie gut KI-Modelle Programmieraufgaben lösen. Das Besondere: Die Aufgaben werden laufend neu gesammelt, damit die Modelle die Lösungen nicht schon vorher gesehen haben können.

LiveCodeBench ist eine Sammlung von Programmieraufgaben, mit der man Computerprogramme testet, die selbst Programmcode schreiben. Solche Programme lernen aus riesigen Mengen Text und Code aus dem Internet und können danach auf Zuruf eine Lösung formulieren. Um zu prüfen, wie gut sie darin wirklich sind, gibt man ihnen Aufgaben und lässt die vorgeschlagene Lösung anschließend von einem Rechner ausführen. Läuft das Programm durch und liefert für alle Testfälle das richtige Ergebnis, gilt die Aufgabe als gelöst. Der Anteil gelöster Aufgaben ist die Punktzahl. Das Wort « live » im Namen bedeutet, dass ständig frische Aufgaben nachrücken, sobald sie im Netz veröffentlicht werden.

Warum frische Aufgaben den Unterschied machen

Ältere Programmiertests wie HumanEval bestehen aus einer festen Liste von Aufgaben. Diese Listen stehen seit Jahren öffentlich im Internet. Wenn ein Modell mit Daten aus dem Netz trainiert wird, landen die Aufgaben samt Musterlösungen oft direkt im Trainingsmaterial. Das Modell hat die Antwort dann auswendig gelernt, statt sie zu erarbeiten. Fachleute nennen dieses Problem Kontamination, also Verunreinigung der Testdaten.

LiveCodeBench umgeht das mit einem einfachen Trick. Zu jeder Aufgabe wird das Veröffentlichungsdatum gespeichert. Man kann den Test deshalb auf Aufgaben einschränken, die erst nach dem Trainingsende eines Modells erschienen sind. Was das Modell nicht gesehen haben kann, muss es tatsächlich lösen. Fällt die Punktzahl bei diesen neuen Aufgaben deutlich ab, war der hohe Wert vorher wohl teilweise auswendig gelernt.

Für Unternehmen und Anleger ist das relevant, weil Benchmark-Ergebnisse in der Werbung für neue Modelle eine große Rolle spielen. Eine Zahl aus einem kontaminierten Test sagt wenig über die Praxis aus. LiveCodeBench gilt deshalb als eine der aussagekräftigeren Messlatten für Programmierfähigkeiten.

Woher die Aufgaben kommen und was gemessen wird

Die Aufgaben stammen von Wettbewerbsplattformen für Programmierer, vor allem LeetCode, AtCoder und Codeforces. Dort werden regelmäßig neue Rätsel veröffentlicht, etwa: Finde in einer Liste von Zahlen das längste Stück, dessen Summe eine bestimmte Grenze nicht überschreitet. Zu jeder Aufgabe gehören versteckte Testfälle, also Beispieleingaben mit erwarteter Ausgabe. Das Sammelsystem von LiveCodeBench zieht neue Aufgaben automatisch ein und versieht sie mit ihrem Erscheinungsdatum.

Der Ablauf beim Testen ist immer gleich. Das Modell bekommt die Aufgabenbeschreibung als Text, schreibt ein Programm, und dieses Programm wird in einer abgeschotteten Umgebung ausgeführt. Es gibt keine Teilpunkte: Entweder alle Testfälle stimmen oder die Aufgabe zählt als nicht gelöst. Meist bekommt das Modell mehrere Versuche, und man notiert, ob mindestens einer davon korrekt war.

Neben dem reinen Code-Schreiben prüft LiveCodeBench noch drei weitere Fähigkeiten. Das Modell soll eigenen Code reparieren, wenn ein Testfall fehlschlägt. Es soll vorhersagen, welche Ausgabe ein vorgegebenes Programm erzeugt. Und es soll umgekehrt eine Eingabe finden, die zu einer bestimmten Ausgabe führt. Diese Zusatzteile zeigen, ob ein Modell Code wirklich versteht oder nur passende Textbausteine zusammensetzt.

LiveCodeBench in Modellankündigungen

Wer die Vorstellung eines neuen KI-Modells liest, findet meist eine Tabelle mit Benchmark-Werten. LiveCodeBench steht dort fast immer neben Tests für Mathematik und allgemeines Wissen. Angegeben wird ein Prozentwert, oft zusammen mit einem Zeitraum wie « Aufgaben von August 2024 bis Januar 2025 ». Dieser Zeitraum ist wichtig: Zwei Zahlen sind nur vergleichbar, wenn sie sich auf dieselbe Aufgabenmenge beziehen.

Ein häufiger Irrtum ist, aus einem guten Wert direkt auf einen guten Programmierassistenten zu schließen. Wettbewerbsaufgaben sind sauber beschrieben, kurz und haben eine eindeutige Lösung. Im Berufsalltag geht es dagegen um gewachsene Programme mit tausenden Dateien, unklaren Anforderungen und alten Fehlern. Dafür gibt es andere Tests, etwa SWE-bench, das echte Fehlerberichte aus Open-Source-Projekten verwendet.

Praktisch begegnet dir LiveCodeBench also vor allem in Nachrichten und Produktankündigungen. Sinnvoll gelesen wird der Wert als Hinweis darauf, wie gut ein Modell abgegrenzte Programmierprobleme knackt. Ein Sprung von 40 auf 70 Prozent innerhalb eines Jahres ist ein starkes Signal. Ein Vorsprung von zwei Prozentpunkten zwischen zwei Modellen sagt dagegen kaum etwas aus.

Subscribe free. Unsubscribe the second it sucks.

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