
SWE-bench Lite
SWE-bench Lite ist ein standardisierter Test, bei dem ein KI-System echte Fehler in echter Software selbstständig beheben soll. Er besteht aus 300 ausgewählten Aufgaben aus öffentlichen Programmierprojekten und gilt als die leichtere, schnellere Version des größeren Tests SWE-bench.
Wenn Programme Fehler haben, melden Nutzer diese in einer Art öffentlichem Kummerkasten des Projekts. Dort steht dann zum Beispiel: Diese Funktion liefert das falsche Ergebnis. Ein Mensch liest das, sucht die passende Stelle im Programmtext und ändert sie. SWE-bench Lite prüft, ob eine künstliche Intelligenz genau das auch schafft. Das System bekommt die Fehlermeldung und den gesamten Programmtext des Projekts, sonst nichts. Ob die Lösung richtig ist, entscheidet danach kein Mensch, sondern eine automatische Prüfung: Die vorhandenen Testprogramme des Projekts müssen wieder durchlaufen.
Warum echte Fehler mehr aussagen als Rätselaufgaben
Lange Zeit wurden Programmierfähigkeiten von KI mit kleinen, erfundenen Aufgaben gemessen. Typisch war: Schreibe eine Funktion, die eine Liste sortiert. Solche Aufgaben passen in wenige Zeilen und haben keinen Zusammenhang mit dem Rest eines Projekts. Moderne Modelle lösen sie fast alle, deshalb sagen die Ergebnisse kaum noch etwas aus.
Echte Softwareprojekte sind etwas völlig anderes. Sie bestehen aus tausenden Dateien, die voneinander abhängen. Die schwierigste Arbeit ist oft nicht das Schreiben der Änderung, sondern das Finden der richtigen Stelle. Genau diese Suche verlangt SWE-bench Lite ab. Deshalb gilt der Test als deutlich näher an dem, was Entwicklerinnen und Entwickler tatsächlich tun.
Für Unternehmen ist die Punktzahl außerdem ein Verkaufsargument. Wenn ein Anbieter ein neues Modell vorstellt, nennt er oft den erreichten Prozentwert auf diesem Test. Man sollte solche Zahlen trotzdem vorsichtig lesen. Ein Modell kann Teile der Aufgaben schon im Training gesehen haben, weil die Projekte öffentlich zugänglich sind.
Von 2294 Aufgaben auf 300 gekürzt
Der ursprüngliche Test SWE-bench enthält 2294 Aufgaben aus zwölf bekannten Python-Projekten. Python ist eine weit verbreitete Programmiersprache. Jede Aufgabe stammt aus einer echten, historisch dokumentierten Fehlerbehebung. Man weiß also genau, wie Menschen sie damals gelöst haben.
Diese 2294 Aufgaben durchzurechnen ist teuer und dauert lange. Jede einzelne verlangt viele Anfragen an das Modell. Deshalb wählten die Entwickler 300 Aufgaben aus, die vergleichsweise überschaubar sind. Aussortiert wurden vor allem Fälle mit unklarer Beschreibung oder sehr umfangreichen Änderungen. Übrig bleiben Aufgaben, bei denen meist eine einzige Datei angepasst werden muss.
Der Ablauf ist bei beiden Varianten gleich. Das System erhält den Projektstand von vor der Fehlerbehebung und den Text der Meldung. Es liefert eine Änderung am Programmtext zurück, im Fachjargon ein Patch. Dieser Patch wird eingespielt, dann laufen die Tests. Nur wenn alle Tests bestehen, zählt die Aufgabe als gelöst. Teilweise richtig gibt es nicht.
Wettbewerb um die Bestenliste
Die Ergebnisse stehen in einer öffentlichen Rangliste im Internet. Als der Test 2023 veröffentlicht wurde, lösten die besten Systeme nur wenige Prozent der Aufgaben. Innerhalb weniger Jahre stiegen die Werte auf über 50 Prozent. Dieser Sprung wird oft als Beleg dafür angeführt, wie schnell sich KI im Programmieren verbessert hat.
Man begegnet dem Begriff vor allem in Ankündigungen von Modellen und von sogenannten Coding-Agenten. Das sind Programme, die ein Sprachmodell mit Werkzeugen kombinieren, etwa zum Durchsuchen von Dateien. Auch in Berichten über Firmen wie OpenAI, Anthropic oder Google taucht die Zahl regelmäßig auf.
Ein häufiger Irrtum ist, ein hoher Wert bedeute, die KI könne Programmierer ersetzen. Der Test misst nur eng umrissene Fehlerbehebungen mit klarer Beschreibung und fertigen Prüfprogrammen. Neue Funktionen entwerfen, mit Kunden sprechen oder ein System planen kommt darin nicht vor. Inzwischen gibt es deshalb erweiterte Fassungen, etwa SWE-bench Verified mit von Menschen geprüften Aufgaben.