---
term: "MBPP"
slug: "mbpp"
glossar_id: "G474"
variants: ["Mostly Basic Python Problems"]
category: "namen-haeufig-genannter-benchmarks"
marker: ""
short: "Benchmark für die Lösung überwiegend einfacher Python-Aufgaben."
sources:
  - label: "Austin et al.: Program Synthesis with Large Language Models"
    url: "https://arxiv.org/abs/2108.07732"
  - label: "Liu et al.: Is Your Code Generated by ChatGPT Really Correct?"
    url: "https://arxiv.org/abs/2305.01210"
status: "entwurf"
updated: "2026-09-21"
---

MBPP steht für Mostly Basic Programming Problems, einen Satz von 974 Python-Aufgaben aus dem Jahr 2021. Der Zuschnitt ist bewusst niedrigschwellig: Jede Aufgabe soll von jemandem lösbar sein, der gerade mit dem Programmieren angefangen hat. [Austin et al.](https://arxiv.org/abs/2108.07732)

## Drei Tests pro Aufgabe, und genau darin liegt die Schwäche

Die Aufgaben wurden von angeworbenen Teilnehmenden geschrieben, jeweils mit Problembeschreibung, einer Musterlösung und drei Testfällen. Bewertet wird wie bei anderen Codetests die funktionale Korrektheit, also ob der erzeugte Code die Tests besteht.

Drei Tests decken eine Funktion nicht vollständig ab. Die Arbeit führt das selbst vor: An einer Aufgabe zum Entfernen des ersten und letzten Vorkommens eines Zeichens bestanden alle Lösungen des besten Modells die Tests, obwohl die Tests auch ein Programm durchgehen ließen, das schlicht alle Vorkommen löscht. Spätere Arbeiten haben die Testabdeckung deshalb erweitert, die entsprechende Fassung heißt MBPP+. [Liu et al.: EvalPlus](https://arxiv.org/abs/2305.01210)

## So kannst du dir das vorstellen

Eine Programmieraufgabe im Bewerbungsgespräch, geprüft an drei Eingaben, die der Aufgabensteller selbst ausgedacht hat. Wer die drei trifft, gilt als fertig, auch wenn niemand den Sonderfall geprüft hat. Das Bild erklärt, warum Testabdeckung über das Ergebnis entscheidet, es spricht dem Test den Nutzen nicht ab.

## Was es in der Praxis konkret bedeutet

MBPP-Werte begegnen dir fast nur noch bei kleinen oder stark komprimierten Modellen, wo die Frage lautet, ob grundlegende Codeerzeugung überhaupt funktioniert. Für die Auswahl eines Modells zum Arbeiten an echtem Code sagt der Test wenig. Wenn du eine Zahl siehst, prüfe, ob die bereinigte Teilmenge oder die erweiterte Fassung gemeint ist, sonst vergleichst du verschiedene Aufgabensätze.

## Wo es verwechselt wird

MBPP und HumanEval werden oft in einem Atemzug genannt, stammen aber aus verschiedenen Arbeiten und haben unterschiedliche Aufgabenformate. MBPP gibt die Aufgabe als Beschreibung samt Tests vor, HumanEval als Funktionssignatur mit Docstring.

## Verwandte Begriffe

**HumanEval**, **Pass@k**, **LiveCodeBench**, **SWE-bench**, **Benchmark Contamination**, **Code Execution**.
